Упражнение. Создание и запуск базового рабочего процесса

Завершено

Важный

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

Вы хотите автоматизировать развертывание обновлений на веб-сайте вашей игрушечной компании. На первом шаге вы создадите базовый рабочий процесс в GitHub Actions.

В этом упражнении вы узнаете:

  • Создайте учетную запись и репозиторий GitHub.
  • Создайте базовый рабочий процесс.
  • Выполните базовый рабочий процесс.

Создание репозитория в GitHub

  1. В браузере перейдите к GitHub. Войдите с помощью учетной записи GitHub или создайте новую учетную запись, если у вас нет учетной записи.

  2. Щелкните значок плюса (+) в правом верхнем углу окна, а затем выберите Новый репозиторий.

    снимок экрана интерфейса GitHub, в котором показано меню для создания нового репозитория.

  3. Введите сведения о новом репозитории:

    • Владелец: выберите свое имя пользователя GitHub из раскрывающегося меню. На снимке экрана mygithubuser — имя учетной записи владельца репозитория GitHub. Позже в этом модуле вы будете использовать имя учетной записи.
    • имя репозитория: введите понятное, но короткое имя. Для этого модуля используйте toy-website-workflow.
    • описание. Включите описание, чтобы другим было понятно назначение репозитория.
    • Частные: Вы можете использовать GitHub для создания общедоступных и частных репозиториев. Создайте частный репозиторий, так как только пользователи в вашей организации должны получить доступ к файлам веб-сайта. Вы можете предоставить доступ другим пользователям позже.

    После завершения настройки репозитория должен выглядеть следующий снимок экрана:

    снимок экрана интерфейса GitHub с конфигурацией для создаваемого репозитория.

  4. Выберите Создать репозиторий.

Клонирование репозитория

В Visual Studio Code клонируйте репозиторий.

  1. На странице репозитория нажмите кнопку копирования, чтобы скопировать URL-адрес в репозиторий Git.

    снимок экрана интерфейса GitHub с новым пустым репозиторием с выделенной кнопкой копирования URL-адреса репозитория.

  2. Откройте Visual Studio Code.

  3. Откройте окно терминала Visual Studio Code, выбрав терминал>новый терминал. Окно обычно открывается в нижней части экрана.

  4. Перейдите в терминал к каталогу, где нужно клонировать репозиторий GitHub на локальном компьютере. Например, чтобы клонировать репозиторий в папку toy-site-workflow, выполните следующую команду:

    cd toy-website-workflow
    
  5. Введите git clone и вставьте URL-адрес, скопированный ранее, который выглядит примерно так:

    git clone https://github.com/mygithubuser/toy-website-workflow
    

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

  6. Это первый раз, когда вы использовали этот репозиторий, поэтому вам может потребоваться войти.

    В Windows введите 1 для проверки подлинности с помощью веб-браузера и нажмите Enter.

    В macOS выберите Авторизовать.

  7. Откроется окно браузера. Возможно, вам потребуется снова войти в GitHub. Выберите Авторизовать.

  8. Повторно откройте Visual Studio Code в папке репозитория, выполнив следующую команду:

    code -r toy-website-workflow
    

Совет

Вы также можете изменить определения рабочих процессов GitHub Actions с помощью веб-интерфейса GitHub. При открытии определения рабочего процесса GitHub помогает использовать синтаксис и отступы файлов YAML и предоставляет примеры фрагментов кода для действий, которые вы хотите использовать. В этом модуле вы будете работать с файлом определения в Visual Studio Code, но вы можете просмотреть редактор GitHub, чтобы узнать, как это работает.

Создание определения рабочего процесса YAML

Теперь, когда вы создали и клонировали репозиторий, вы готовы создать базовое определение рабочего процесса.

  1. В Visual Studio Code откройте обозреватель.

  2. В корне структуры папок toy-website-workflow создайте новую папку с именем .github.

    Заметка

    Убедитесь, что вы включили период в начало имени папки. Это означает, что это скрытая папка, и GitHub требует периода для GitHub Actions для обнаружения определения рабочего процесса.

  3. В папке .github создайте другую папку с именем workflows.

  4. В папке рабочих процессов создайте файл с именем workflow.yml.

    снимок экрана обозревателя Visual Studio Code с папкой github/workflows и файлом workflow.yml.

  5. Скопируйте следующее определение рабочего процесса в файл:

    name: deploy-toy-website
    
    on: [workflow_dispatch]
    
    jobs:
      say-hello:
        runs-on: ubuntu-latest
        steps:
          - name: 'placeholder step'
            run: echo "Hello world!"
    
  6. Сохраните файл.

  7. Зафиксируйте и отправьте файл в репозиторий GitHub с помощью следующих команд:

    git add .
    git commit -m "Add initial workflow definition"
    git push
    

Совет

Visual Studio Code помогает вам с форматированием отступов для файла YAML. Обратите внимание на волнистые линии, которые указывают на синтаксические ошибки, или выберите Просмотр>Проблемы, чтобы увидеть список проблем в вашем файле.

Запуск рабочего процесса

Вы создали определение рабочего процесса. GitHub Actions автоматически обнаруживает файл рабочего процесса, так как он находится в каталоге .github/workflows.

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

  2. Выберите вкладку Действия.

    снимок экрана интерфейса GitHub с страницей репозитория и выделенной вкладкой

  3. Выберите рабочий процесс deploy-toy-website.

    снимок экрана интерфейса GitHub с вкладкой

  4. Выберите раскрывающийся список запустить рабочий процесс и нажмите кнопку Запустить рабочий процесс.

    снимок экрана интерфейса GitHub с вкладкой

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

    снимок экрана интерфейса GitHub с вкладкой

    Обратите внимание, что изначально состояние выполнения отображается как в очереди. Для запуска рабочего процесса может потребоваться некоторое время. Ваша задача добавляется в очередь для исполнителя, и, как только исполнитель станет доступен, GitHub Actions назначает его и запускает задачу. Затем состояние задания становится выполнение.

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

Проверка выполнения рабочего процесса

  1. При запуске рабочего процесса выберите deploy-toy-website, чтобы просмотреть сведения о выполнении. Обновляйте страницу, пока состояние задания не изменится на Успех.

    снимок экрана интерфейса GitHub с сведениями о выполнении рабочего процесса с выделенными идентификаторами состояния и коммита.

    Кроме того, обратите внимание, что страница содержит идентификатор коммита Git, используемого для запуска. Идентификатор фиксации указывает версию содержимого репозитория, используемого рабочим процессом.

  2. В списке заданий выберите сказать привет.

    снимок экрана интерфейса GitHub, показывающий меню сведений о запуске с выделенным заданием

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

    снимок экрана интерфейса GitHub с журналом выполнения рабочего процесса с выделенным шагом заполнителя.

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

  4. Выберите шаг заполнителя .

    снимок экрана интерфейса GitHub с журналом выполнения рабочего процесса с отображаемым журналом шага заполнителя.

    Журналы этого шага включают содержимое команды, указанной в YAML-файле рабочего процесса, и Hello world! текст, создаваемый скриптом.

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

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

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