Огляд дій GitHub
GitHub Actions – це платформа безперервної інтеграції та безперервної доставки (CI/CD), яка дає змогу автоматизувати свої конвеєри збірки, тестування та розгортання. Вона дає змогу створювати робочі цикли, які автоматично створюють, тестують і розгортають код на будь-якій платформі. Розгляньмо дії GitHub і способи їх використання розробниками.
Компоненти дій GitHub
Ви можете запустити дії GitHub робочий цикл, вручну, або налаштувати його, щоб він спрацьовував, коли подія відбувається у вашому сховищі. Наприклад, запит на витягування може ініціювати робочий цикл, який виконує перевірку перевірки в рамках процесу перевірки.
Робочий цикл містить такі компоненти:
- робочі цикли: містять одне або кілька завдань, які можуть виконуватися послідовно або паралельно.
- завдання: містять один або кілька кроків, які виконують сценарій, який ви визначаєте, або виконують дію . Завдання виконуються всередині власної віртуальної машини бігунабо всередині контейнера.
- кроки: визначення певних завдань, які виконуватимуться під час виконання робочого циклу.
Кожен крок виконує сценарій однієї оболонки або дії це розширення для повторного використання, яке може спростити робочий цикл.
Робочі цикли
Робочий цикл – це настроюваний автоматизований процес, який виконує одне або кілька завдань. Робочі цикли визначаються файлом YAML, повернутим до сховища. Вони виконуються, коли подія запускається, запускається вручну або запускається за визначеним розкладом.
Робочі цикли визначаються в каталозі .github/workflows у сховищі, а сховище може містити кілька робочих циклів, кожен із яких може виконувати різні набори завдань. Наприклад, ви можете мати один робочий цикл для створення та тестування запитів на витягнення, робочий цикл для розгортання програми під час кожного створення випуску, а також робочий цикл, який додає підпис щоразу, коли хтось відкриває нову проблему.
Події
Подія – це певна дія в сховищі, яка викликає запуск робочого циклу. Наприклад, дії можуть походити з GitHub, коли хтось створює запит на витягування, відкриває проблему або підштовхує до сховища. Ви також можете запустити робочий цикл за розкладом, опублікувавши його в API REST або вручну.
Робочих місць
Завдання – це набір кроків у робочому циклі, який виконується на бігуні. Кожен крок – це сценарій оболонки, який виконується, або дія, яка виконується. Кроки виконуються в порядку та залежать один від одного. Оскільки кожен крок виконується на одному бігуні, ви можете обмінюватися даними з одного кроку до іншого. Наприклад, можна виконати крок, на основі якого створюється програма, а потім виконати крок, який перевірить створену програму.
Ви можете налаштувати залежності завдання з іншими завданнями; за замовчуванням завдання не мають залежностей і виконуються паралельно один з одним. Якщо завдання залежить від іншого завдання, воно чекає завершення залежного завдання, перш ніж воно запуститься. Наприклад, у вас може бути кілька завдань збірки для різних архітектур, які не мають залежностей, і завдання пакування, яке залежить від цих завдань. Завдання збірки виконуються паралельно, і коли вони успішно виконуються, починається завдання пакування.
Дії
Дія – це спеціальна програма для платформи GitHub Actions, яка виконує складне, але часто повторюване завдання. Скористайтеся дією, щоб зменшити кількість повторюваних кодів, які ви пишете у файлах робочого циклу. Дія може витягнути репозиторій git з GitHub, налаштувати правильний набір інструментів для середовища побудови або налаштувати автентифікацію для свого постачальника хмарних служб.
Ви можете написати власні дії або знайти дії, які потрібно використовувати в робочих циклах, на GitHub Marketplace.
Бігунів
Бігун – це сервер, який запускає робочі цикли, коли вони запускаються. Кожен бігун може виконувати одне завдання одночасно. GitHub надає бігунам Ubuntu Linux, Microsoft Windows і macOS для запуску ваших робочих циклів; кожен робочий цикл виконується на щойно підготовленій віртуальній машині. GitHub також пропонує більших бігунів, які доступні у великих конфігураціях.
Якщо вам потрібна інша операційна система або потрібна певна конфігурація обладнання, можна розміщення власних бігунів.
Тепер, коли ви розумієте компоненти дій GitHub, ви можете перевірити файл робочого циклу.