Примечание. В GitHub Enterprise Server в настоящее время не поддерживаются средства выполнения тестов, размещенные в GitHub. Дополнительные сведения о планируемой поддержке в будущем см. в GitHub public roadmap.
Обзор
Начальные рабочие процессы позволяют всем сотрудникам организации, имеющим право создавать рабочие процессы, делать это быстрее и проще. При создании рабочего процесса можно выбрать начальный рабочий процесс, и вам не придется выполнять часть работы или все задачи по написанию рабочего процесса. Начальные рабочие процессы могут быть отправной точкой для создания пользовательского рабочего процесса, или же его можно использовать в том виде, как есть. Это не только экономит время, но и повышает уровень согласованности и продуктивности во всей организации.
GitHub предоставляет готовые к использованию начальные рабочие процессы для следующих высокоуровневых категорий:
-
Непрерывное развертывание (CD). Дополнительные сведения см. в разделе Сведения о непрерывном развертывании.
-
Непрерывная интеграция (CI). Дополнительные сведения см. в разделе Сведения о непрерывной интеграции.
-
Автоматизация. Начальные рабочие процессы автоматизации предлагают решения для автоматизации рабочих процессов, таких как рассмотрение запросов на вытягивание и применение метки на основе путей, измененных в запросе на вытягивание, или приветствия пользователей, которые впервые участвуют в разработке материалов для репозитория.
Создание начального рабочего процесса
Начальные рабочие процессы могут создаваться пользователями с доступом на запись в репозиторий .github
организации. Затем их могут использовать члены организации, имеющие разрешение на создание рабочих процессов.
Примечание. Чтобы избежать дублирования между начальными рабочими процессами, можно вызывать повторно используемые рабочие процессы из рабочего процесса. Это позволяет упростить обслуживание рабочих процессов. Дополнительные сведения см. в разделе Повторное использование рабочих процессов.
В этой процедуре показано, как создать начальный рабочий процесс и файл метаданных. Файл метаданных описывает способ представления начальных рабочих процессов пользователям при создании рабочего процесса.
-
Если у организации нет общедоступного репозитория с именем
.github
, создайте его. -
Создайте каталог с именем
workflow-templates
. -
Создайте новый файл рабочего процесса в каталоге
workflow-templates
.Если необходимо сослаться на ветвь репозитория по умолчанию, можно использовать заполнитель
$default-branch
. При создании рабочего процесса этот заполнитель автоматически заменяется именем ветви по умолчанию репозитория.
Примечание. Следующие значения в runs-on
ключе также рассматриваются как заполнители:
- "Ubuntu-latest" заменяется на "[ локальная ]"
- "Windows-latest" заменяется на "[ локальное, windows ]"
- "macos-latest" заменяется на "[ локальная, macOS ]"
Например, этот файл с именем octo-organization-ci.yml
демонстрирует базовый рабочий процесс.
name: Octo Organization CI on: push: branches: [ $default-branch ] pull_request: branches: [ $default-branch ] jobs: build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Run a one-line script run: echo Hello from Octo Organization
name: Octo Organization CI
on:
push:
branches: [ $default-branch ]
pull_request:
branches: [ $default-branch ]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Run a one-line script
run: echo Hello from Octo Organization
-
Создайте файл метаданных в каталоге
workflow-templates
. Файл метаданных должен иметь то же имя, что и файл рабочего процесса, однако вместо расширения.yml
должно быть добавлено.properties.json
. Например, файл с именемocto-organization-ci.properties.json
содержит метаданные для файла рабочего процесса с именемocto-organization-ci.yml
.JSON { "name": "Octo Organization Workflow", "description": "Octo Organization CI starter workflow.", "iconName": "example-icon", "categories": [ "Go" ], "filePatterns": [ "package.json$", "^Dockerfile", ".*\\.md$" ] }
{ "name": "Octo Organization Workflow", "description": "Octo Organization CI starter workflow.", "iconName": "example-icon", "categories": [ "Go" ], "filePatterns": [ "package.json$", "^Dockerfile", ".*\\.md$" ] }
-
name
- Необходимые. Имя рабочего процесса. Отображается в списке доступных рабочих процессов. -
description
- Необходимые. Описание рабочего процесса. Отображается в списке доступных рабочих процессов. -
iconName
- Необязательно. Указывает значок рабочего процесса, отображаемого в списке рабочих процессов.iconName
может быть один из следующих типов:- ФАЙЛ SVG, хранящийся в каталоге
workflow-templates
. Чтобы ссылаться на файл, значение должно быть именем файла без расширения файла. Например, на файл SVG с именемexample-icon.svg
будет даваться ссылкаexample-icon
. - Значок из набора данных GitHubнабора Octicons. Чтобы ссылаться на октикон, значение должно быть
octicon <icon name>
. Например,octicon smiley
.
- ФАЙЛ SVG, хранящийся в каталоге
-
categories
- Необязательно. Определяет категории, в которые отображается рабочий процесс. Имена категорий можно использовать из следующих списков:- Общие имена категорий из репозитория начальных рабочих процессов.
- Языки Linguist из списка в лингвистском репозитории.
- Поддерживаемые стеки технологий из списка в репозитории начальных рабочих процессов.
-
filePatterns
- Необязательно. Позволяет использовать рабочий процесс, если репозиторий пользователя содержит файл в корневом каталоге, соответствующий определенному регулярному выражению.
-
Чтобы добавить еще один начальный рабочий процесс, добавьте файлы в тот же каталог workflow-templates
.
Следующие шаги
Дополнительные сведения о GitHub Actionsсм. в разделе "Использование начальных рабочих процессов".