Управление хакерскими релизами

В настоящее время, когда я хочу обновить один из своих хакерских пакетов, я прохожу этот процесс.

  1. Отправьте изменения на github
  2. Подождите, пока travis-ci запустит изменения, чтобы убедиться, что я не получаю ошибок сборки.
  3. Загрузить на хакер
  4. Пометить релиз в git.

Естественно, каждый из этих шагов я хочу делать только в том случае, если предыдущий шаг был успешным.

Я предполагаю, что у других людей есть аналогичный рабочий процесс, есть ли что-то, что выполняет все эти шаги? Я мог бы, вероятно, сделать (1), (3) и (4) в сценарии, хотя (2) я не очень уверен в (то есть проверке результатов travis-ci), но поскольку это кажется распространенным Проблема, мне было интересно, если кто-то уже решил ее, поэтому я не изобретаю велосипед.


person Clinton    schedule 03.06.2017    source источник
comment
Я видел скрипты travis, которые автоматически запускают hackage. Например, если они строят тег. В этом случае рабочий процесс будет заключаться в тегировании в git, вот и все.   -  person Joachim Breitner    schedule 03.06.2017


Ответы (1)


Документы Travis CI делают это довольно просто в наши дни, вы можете следить за их документами для deployment для настройки условного развертывания (т. е. при создании тега git). Вы также можете настроить его для прямого развертывания для взлома, согласно travis docs .

Вот полуполный пример конфигурации:

deploy:
  provider: hackage
  username: "Hackage User Name"
  password: "Hackage Password"
  on:
    tags: true

Обратите внимание, что в документации Travis «рекомендуется шифровать пароль. Если у вас установлен клиент командной строки Travis CI, вы можете сделать это следующим образом: travis encrypt --add deploy.password». Дополнительные сведения см. в их документах по шифрованию, поскольку, к сожалению, я не не делал эту часть раньше.

Это немного меняет ваш рабочий процесс; конечным результатом будет:

  1. Пометить и отправить изменения на GitHub
  2. Подождите, пока Трэвис проверит, если все в порядке, Трэвис загрузит вас в Hackage.
  3. Если все не так, исправьте ошибку и выберите новый тег. Возможно, вы сможете повторно использовать тег, удалив его и пометив заново, но я не уверен, примет ли его Трэвис.

Поэтому, если вы можете запустить какие-либо тесты локально, будьте достаточно уверены, что все в порядке, вы можете пометить выпуск и отправить его, а Трэвис сделает все остальное.

person Hawkins    schedule 24.06.2018