# Создание шаблонов рабочих процессов для организации

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

## Создание шаблонов рабочих процессов

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

1. Если его ещё нет, создайте новый репозиторий с названием `.github` в вашей организации.

2. Создайте каталог с именем `workflow-templates`.

3. Создайте новый файл рабочего процесса в каталоге `workflow-templates`.

   Если необходимо сослаться на ветвь репозитория по умолчанию, можно использовать заполнитель `$default-branch`. При создании рабочего процесса этот заполнитель автоматически заменяется именем ветви по умолчанию репозитория.

   Например, этот файл с именем `octo-organization-ci.yml` демонстрирует базовый рабочий процесс.

   ```yaml copy
   name: Octo Organization CI

   on:
     push:
       branches: [ $default-branch ]
     pull_request:
       branches: [ $default-branch ]

   jobs:
     build:
       runs-on: ubuntu-latest

       steps:
         - uses: actions/checkout@v6

         - name: Run a one-line script
           run: echo Hello from Octo Organization
   ```

4. Создайте файл метаданных в каталоге `workflow-templates`. Файл метаданных должен иметь то же имя, что и файл рабочего процесса, однако вместо расширения `.yml` должно быть добавлено `.properties.json`. Например, файл с именем `octo-organization-ci.properties.json` содержит метаданные для файла рабочего процесса с именем `octo-organization-ci.yml`.

   ```json copy
   {
       "name": "Octo Organization Workflow",
       "description": "Octo Organization CI workflow template.",
       "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](https://primer.style/octicons/). Чтобы ссылаться на октикон, значение должно быть `octicon <icon name>`. Например: `octicon smiley`.

   * `categories`

   - **Необязательно**. Определяет категории, в которые отображается рабочий процесс. Имена категорий можно использовать из следующих списков:
     * Общие имена категорий из [репозитория начальных рабочих](https://github.com/actions/starter-workflows/blob/main/README.md#categories) процессов.

     * Языки Linguist из списка в [лингвистском](https://github.com/github-linguist/linguist/blob/main/lib/linguist/languages.yml) репозитории.

     * Поддерживаемые стеки технологий из списка в [репозитории начальных рабочих](https://github.com/github-starter-workflows/repo-analysis-partner/blob/main/tech_stacks.yml) процессов.

   * `filePatterns`

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

5. Чтобы добавить другой шаблон рабочего процесса, добавьте файлы в тот же `workflow-templates` каталог.

## Следующие шаги

* Справочные сведения о шаблонах рабочих процессов см. в разделе [Повторное использовать конфигурации рабочих процессов](/ru/actions/reference/workflows-and-actions/reusing-workflow-configurations#workflow-templates).