Введение в GitHub Actions
Разберитесь в основных понятиях GitHub Actions, включая рабочие процессы, события, задания и шаги.
«Введение в GitHub Actions» — бесплатный урок Git & GitHub Professional Workflow на CoddyKit. Это урок 1 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Git & GitHub Professional Workflow, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Git & GitHub Professional Workflow содержит 4 уроков всего.
Введение в GitHub Actions
Добро пожаловать в GitHub Actions! Эта мощная функция GitHub позволяет автоматизировать задачи прямо в вашем репозитории.
Представьте, что это ваш личный робот-помощник для работы с кодом. Он может собирать ваши проекты, запускать тесты и даже автоматически развёртывать ваш веб-сайт при каждом внесении изменений.
В этом уроке мы рассмотрим основные понятия: рабочие процессы, события, задания и шаги.
Рабочие процессы: план автоматизации
В основе GitHub Actions лежит рабочий процесс. Рабочий процесс — это автоматизированная процедура, которая запускает одно или несколько заданий.
- Рабочие процессы задаются в файлах YAML.
- Эти файлы находятся в каталоге
.github/workflowsвашего репозитория. - Каждый файл рабочего процесса представляет отдельный процесс автоматизации.
Когда происходят определённые события, например отправка кода, ваши рабочие процессы начинают выполняться!
Структура файла рабочего процесса
Рабочие процессы GitHub Actions записываются на YAML — удобном для человека стандарте сериализации данных. Вот базовая структура:
name: My First Workflow
on: [push]
jobs:
my_first_job:
runs-on: ubuntu-latest
steps:
- name: Greet Me
run: echo "Hello CoddyKit!"События: триггеры автоматизации
События — это определённые действия, которые запускают рабочий процесс. Они сообщают GitHub Actions, когда начинать процесс автоматизации.
Распространённые события:
push: когда код отправляется в репозиторий;pull_request: когда запрос на включение изменений создаётся, обновляется или закрывается;schedule: для запуска в определённое время, например по заданию cron.
В файле рабочего процесса можно указать одно или несколько событий с помощью ключевого слова on:.
name: On Push Example
on: [push, pull_request] # This workflow runs on push or pull request events
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Run a simple command
run: echo "Code was pushed or PR updated!"Задания: упорядоченные задачи
Задание — это набор шагов, выполняемых в одной среде выполнения. Рабочие процессы состоят из одного или нескольких заданий, которые могут выполняться параллельно или последовательно.
- Каждое задание выполняется в новом экземпляре виртуальной среды, указанной в
runs-on. - Распространённые значения
runs-on:ubuntu-latest,windows-latestиmacos-latest.
Задания определяют, что нужно сделать, например собрать приложение или запустить тесты.
Шаги: отдельные инструкции
В задании шаги — это отдельные выполняемые задачи. Шаг может быть:
- скриптом командной строки с использованием
run; - действием с использованием
uses— повторно используемым фрагментом кода.
Шаги выполняются в заданном порядке. Если один шаг завершается с ошибкой, по умолчанию задание завершается с ошибкой, а последующие шаги пропускаются.
name: Steps Demo
on: [push]
jobs:
my_job:
runs-on: ubuntu-latest
steps:
- name: Step 1: Say Hello
run: echo "Hello from Step 1!"
- name: Step 2: List files
run: ls -la
- name: Step 3: Echo another message
run: echo "Step 3 completed."Действия: повторно используемые блоки кода
Действия — наиболее детализированный элемент автоматизации. Это повторно используемые фрагменты кода, выполняющие определённую задачу.
Вместо написания сложных скриптов для распространённых задач можно использовать готовые действия из GitHub Marketplace или создать собственные.
- Используйте ключевое слово
uses:, чтобы указать действие. - Действия могут предоставляться GitHub, например
actions/checkout, представлять собой образ Docker или файл JavaScript.
Это экономит время и обеспечивает единообразие!
name: Using Actions
on: [push]
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout repository code
uses: actions/checkout@v4 # This action checks out your repo
- name: Setup Node.js environment
uses: actions/setup-node@v4
with:
node-version: '20'
- name: Install dependencies
run: npm installСоздание полного рабочего процесса
Объединим всё изученное в один запускаемый пример рабочего процесса. Этот рабочий процесс просто получит код из репозитория и выведет приветствие.
Этот файл YAML нужно сохранить в репозитории по адресу .github/workflows/greeting.yml.
name: Simple Greeting Workflow
on: [push] # Triggers on any push to the repository
jobs:
greet_job:
runs-on: ubuntu-latest # Runs on a fresh Ubuntu virtual machine
steps:
- name: Checkout the repository
uses: actions/checkout@v4 # Action to get your code
- name: Say hello
run: echo "Hello, GitHub Actions User!" # A simple command-line step
- name: Show current directory
run: pwd # Another command to show where we areКак выполняется рабочий процесс
Когда происходит событие, например push, GitHub Actions:
- читает соответствующий файл рабочего процесса YAML из
.github/workflows/; - инициализирует виртуальную машину (среду выполнения) для каждого задания;
- последовательно выполняет каждый шаг задания;
- сообщает состояние (успешное выполнение или ошибку) каждого шага и всего задания.
Наблюдать за этим процессом можно на вкладке «Actions» в репозитории GitHub.
Быстрая проверка: компоненты рабочего процесса
Какие из перечисленных элементов являются необходимыми компонентами файла рабочего процесса GitHub Actions?
Итоги: введение в GitHub Actions
Отличная работа! Вы изучили основные понятия GitHub Actions:
- Рабочие процессы: планы автоматизации в файлах YAML.
- События: триггеры, запускающие рабочие процессы.
- Задания: наборы шагов, выполняемые в среде выполнения.
- Шаги: отдельные команды или повторно используемые действия.
- Действия: повторно используемые единицы работы для распространённых задач.
Далее мы перейдём к созданию более практичных рабочих процессов CI/CD!
Изучай Git & GitHub Professional Workflow с ИИ-репетитором — бесплатно
Пиши и запускай код прямо в браузере, получай мгновенную помощь от ИИ-репетитора 24/7 и продолжи учиться на сайте или в приложении.
- Курсы
- 12
- Уроки
- 48
Часто задаваемые вопросы
Урок «Введение в GitHub Actions» бесплатный?
Да — полный текст урока «Введение в GitHub Actions» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Git & GitHub Professional Workflow, подпишись на CoddyKit PRO. Курс Git & GitHub Professional Workflow содержит 4 уроков всего.
Чему я научусь в уроке «Введение в GitHub Actions»?
Разберитесь в основных понятиях GitHub Actions, включая рабочие процессы, события, задания и шаги. Ты практикуешь Git & GitHub Professional Workflow с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать Git & GitHub Professional Workflow?
Предыдущий опыт не требуется. Git & GitHub Professional Workflow на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 1 из 4.
Сколько времени занимает урок «Введение в GitHub Actions»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке Git & GitHub Professional Workflow?
Да. Каждый урок Git & GitHub Professional Workflow включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Введение в GitHub Actions
- Создание рабочих процессов CI/CD
- Пользовательские действия и Marketplace
- Секреты и переменные окружения в действиях