Рубрики
Uncategorized

Все, что вам нужно знать о Действиях GitHub

Особенности, которые все ждали в Действиях GitHub, наконец, здесь: Среда и ручное приложение … Помечено GitHub, развертывание, дежопами, действиями.

Характеристики, которые все ждали в действиях GitHub, наконец, здесь: Среда и ручные одобрения Отказ

Это будет весело.

вступление

Сегодня мы говорим о средах и ручных разрешениях в Действиях GitHub. Эти долгожданные функции были объявлены в Github Universe 2020 пару недель назад и, наконец, выпущен всего несколько дней назад 15 декабря будет точным.

В этом видео мы увидим, как их включить и как их использовать для управления потоком развертывания. Наконец мы можем сказать, что действия имеют правильные возможности непрерывного развертывания.

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

видео

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

( Ссылка на видео: https://youtu.be/w_37ldoy4si )

Если вы скорее предпочитаете читать, ну … Давайте просто продолжим:)

Почему среда?

Итак, во-первых, почему мы говорим о средах и вручную одобрение вместе.

Ну, ручные одобрения на самом деле построен сверху окружающей среды Отказ

И они являются только одна из функций Среда предлагает предотвратить несанкционированные развертывания, сохранить секреты, отслеживать изменения и многое другое.

По этим причинам мы поговорим обо всех, что мы можем сделать с окружающей средой. Но сначала давайте посмотрим, как включить эту функцию.

Включение средств и доступности

Сделать это, просто перейдите к Настройки репозитория , а потом у вас есть этот новый Среды раздел.

Нажмите на него, и здесь вы можете создать новую среду.

Дайте ему имя, нажмите Настроить Окружающая среда, а здесь у вас есть.

Проверьте Этот раздел видео Для демонстрации о включении окружающей среды в вашем репо.

Чтобы настроить среду в Пользовательский репозиторий Вы должны быть владелец репозитория Отказ Чтобы настроить среду в репо, который принадлежит Организация вместо этого вы должны иметь Админ-доступ Отказ

Также обратите внимание, что вы сможете создавать и использовать среды только на публичных реподе или если вы являетесь частью Github Enterprise Cloud Организация. Среда и все их особенности, включая ручные одобрения, в настоящее время не поддерживаются в «нормальных» частных репос и в планах Pro и Teams. Если вы перейдете к настройкам этих REPOS и планов, на самом деле, вкладка меню среды просто не появится.

Настройки окружающей среды

Правильно, давайте пойдем и посмотрим, что у нас в конфигурации окружающей среды.

Первый раздел — Правила защиты окружающей среды

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

Ручные одобрения, как говорит название, позвольте вам указать До 6 человек или команд Это будет уведомлено для развертывания и нужно будет одобрить его для продолжения.

Быть в TE «Утверждения», список вас нужен только прочитанный доступ к репозитории, и это позволяет у вас есть люди, которые могут одобрить развертывание, которые не обязательно имеют возможность изменять код.

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

Вместо того, чтобы вторая настройка, это Таймер ожидания . Это полезно, если вы хотите, чтобы ваш Развертывание будет отложено определенного количества минут после того, как рабочие места вызваны. И это работает с и без одобрения.

У нас тогда есть Секреты раздела Отказ

Секреты — это зашифрован Переменные среды. Они доступны только на действия GitHub в контексте Эта среда Отказ

GitHub уже имеет управление секретами на уровне репо, но никто с доступом к записи может изменить эти секреты. Они не могут их видеть ( потому что, как вы, вероятно, знаете после сохранения их, они могут быть получены только действиями в рабочих процессах ), но они могут изменить их и использовать их в любом рабочем процессе.

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

Если вы хотите узнать больше о секретах, а также как Секреты с тем же именем Между средами и работой репо Уровень, Проверьте этот раздел видео Отказ

Используйте условия в рабочем процессе действий

Давайте посмотрим, как мы можем использовать все это в рабочем процессе действий. Это довольно легко.

  DeployDev:
    name: Deploy to Dev 
    runs-on: ubuntu-latest
    environment: 
      name: YOUR_ENVIRONMENT_NAME
      url: URL_OF_THE_DEPLOYMENT
    steps:
      - name: Deploy
        run: echo I am deploying! 

Это все, что вам нужно сделать! Просто добавьте окружающая среда Раздел на вашу работу и ссылку на окружающую среду По имени Отказ

URL Параметр не является обязательным и может быть либо строковый литерал или значение, исходящее из Выходной параметр . шага на работе (Это полезно, например, если ваше развернутое приложение меняет URL каждый раз, и вы знаете, только после его развертывания).

Все, что было настроено на этой среде, в том числе Одобрения , таймеры и Секреты будет автоматически применяться к этой работе.

Если требуется одобрение, все пользователи/команды в списке «Утверждение» получат Уведомление На экране по электронной почте и на уведомлениях GitHub. Вскоре те, кто также будет интегрирован в мобильное приложение и Slash.

Пример

Проверьте Этот раздел видео для Демо Об этом примере

Допустим, вы хотите:

  • Развертывание для разработки только тогда, когда вы находитесь в запросе на тягу
  • Развертывание, чтобы постановить только тогда, когда вы совершаете или сливаются в основной
  • Развертывание до получения только после постановки, с одобрением

Чтобы сделать это, вам сначала понадобится Создать три среды Добавьте утверждения в производственную, затем настройте ваш рабочий процесс действий:

name: CI + CD

on:
  push:
    branches: [ main ]
  pull_request:
    branches: [ main ]
  workflow_dispatch:

jobs:
  Build:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2

      - name: Compile
        run: echo Hello, world!

  DeployDev:
    name: Deploy to Dev 
    if: github.event_name == 'pull_request'
    needs: [Build]
    runs-on: ubuntu-latest
    environment: 
      name: Development
      url: 'http://dev.myapp.com'
    steps:
      - name: Deploy
        run: echo I am deploying! 

  DeployStaging:
    name: Deploy to Staging 
    if: github.event.ref == 'refs/heads/main'
    needs: [Build]
    runs-on: ubuntu-latest
    environment: 
      name: Staging
      url: 'http://test.myapp.com'
    steps:
      - name: Deploy
        run: echo I am deploying! 

  DeployProd:
    name: Deploy to Production 
    needs: [DeployStaging]
    runs-on: ubuntu-latest
    environment: 
      name: Production
      url: 'http://www.myapp.com'
    steps:
      - name: Deploy
        run: echo I am deploying! 

Как видите, все вращается вокруг окружающая среда определение.

Проверьте Этот раздел видео Для более углубленная демо и объяснение Об этом примере.

В тех случаях, как это, что новый Визуальный график действий GitHub сияет

Визуализация

Эта новая функция дает вам гораздо лучший способ визуализации Как продвигается ваш рабочий процесс Отказ

В предыдущем примере, когда вы исходите из запроса на тягу, рабочий процесс берет Развертывать до dev ветвь:

Как видите, это очень ясно из новой визуализации, а также ясно, что Постановка + производственная ветвь была пропущена .

Если вместо этого мы совершаем в основной, другой ветвь рабочего процесса активирована:

Как видите, он развертывает постановку, а затем Он ждет одобрения на производство.

И когда укрепление нажимает на Обзор развертывания Кнопка, у них есть возможность либо Отклонить или Утвердить Развертывание и оставить комментарий.

Super легко настроить и управлять.

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

Смотреть визуализацию Демо и объяснение здесь

Отслеживание и аудит

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

На самом деле, вы, если вы на Код Страница на вашем репо, главной странице и прокрутите вниз, вы найдете СЛЕДУЮЩИЕ СРЕДЫ В правой колонке:

Если вы нажмете на одну среду, вы увидите Журнал деятельности Для этой конкретной среды, хотя если вы нажмете название секции, у вас будет Комплексное состояние Из всех сред.

Здесь вы можете увидеть две основные вещи.

На верхней части у вас есть Статус каждой среды который включает в себя последнее развертывание вместе с филиалом и развернутым. Просмотр развертывания Кнопка приведет вас к URL это было ранее определено в окружающая среда раздел для этого развертывания. Это Супер полезный Потому что вы можете сразу увидеть то, что вы развернули в тот момент в каждой среде.

Вместо этого у вас есть Журнал деятельности Для всех сред, в том числе одобренных и отклоненных развертываний, и, конечно, также можно отфильтровать окружающую среду.

Еще раз, я бы порекомендовал вас на Посмотрите на демонстрацию этого здесь для более полного объяснения.

Заключение

Хорошо, вот это за сегодня.

Дайте мне знать в разделе «Комментарий» ниже того, что вы думаете об этих новых функциях, если вы хотите иметь что-то другое, и если вы планируете использовать их в своих проектах.

Я был бы признателен, если вы посмотрите на видео об этом (вы можете найти его на Youtube по этой ссылке: https://youtu.be/w_37ldoy4si ), оставьте как и, возможно, подписаться на мой канал Отказ Речь идет о погонах, особенно с GitHub и Azure Devops.

Вроде, поделиться и следуй за мной 🚀 Для получения дополнительной информации:

📽 YouTube ☕. Купи мне кофе 💖 Парреон 🌐 Веб-сайт CODERDAVE.IO 👕 Merch 👦🏻 Страница в Facebook 🐱💻 Github 👲🏻 Twitter 👴🏻 LinkedIn 🔉 Подкас

Оригинал: «https://dev.to/n3wt0n/everything-you-need-to-know-about-github-actions-environments-9p7»