Рубрики
Uncategorized

Получить тег релиза от GitHub, чтобы отлаживать на Heroku

В TNP мы все перенесли в действия GitHub, и мы очень рады этому. 🙂 Но … эта статья … Tagged with Github, Actions, CICD, Heroku.

В TNP мы все перенесли в действия GitHub, и мы очень рады этому.:-)

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

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

Мы решили добавить тег GIT Release в нашу развертывание и нижние колонтитулы приложений со следующими шагами.

Во -первых, мы стремимся к производству только тогда, когда на Github создается тег GIT (релиз).

jobs:
  ...

  deploy_production:
    ...

    if: success() && contains(github.ref, 'tags')

Мы развертываем в Heroku, где очень легко установить переменную конфигурации через API, поэтому мы решили:

  • Получите тег релиза от текущего релиза
  • Обновите Release_version Переменная на Heroku каждый раз, когда новое развертывание успешно.
  • Выгода!
steps:
 - name: Push to Heroku
   run: git push -f https://heroku:${{ secrets.HEROKU_API_TOKEN }}@git.heroku.com/${{ secrets.HEROKU_APP_PRODUCTION }}.git origin/master:master
 - name: Update RELEASE_VERSION on Heroku production
   if: success()
   run: |
    curl -n -X PATCH https://api.heroku.com/apps/${{ secrets.HEROKU_APP_PRODUCTION }}/config-vars \
    -d '{
      "RELEASE_VERSION": "${{ github.ref }}",
    }' \
    -H "Authorization: Bearer ${{ secrets.GITHUB_API_TOKEN }}"
    -H "Content-Type: application/json" \
    -H "Accept: application/vnd.heroku+json; version=3"

Нам нужно установить две переменные:

  • Heroku_api_token : Ваш личный токен, вы можете получить его от своего Настройки учетной записи Анкет
  • Heroku_app_production : Название вашего производственного приложения на Heroku, мы его не жестко кодируем, поэтому легче поделиться этими рецептами в других проектах.

Это оно! У вас будет что -то подобное в вашем приложении Heroku, если все пойдет хорошо.

Покрытие изображение Гарет Мизунака — Unsplash

Оригинал: «https://dev.to/wealize/get-release-tag-from-github-actions-to-debug-on-heroku-3583»