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

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

> \[!NOTE]
> GitHub Enterprise Serverразмещенные в данный момент средства выполнения не поддерживаются в GitHub.

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

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

1. Если его ещё нет, создайте новый публичный репозиторий с названием `.github` в вашей организации.
2. Создайте каталог с именем `workflow-templates`.
3. Создайте новый файл рабочего процесса в каталоге `workflow-templates`.

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

   > \[!NOTE]
   > Следующие значения в `runs-on` ключе также рассматриваются как заполнители:
   >
   > *

`ubuntu-latest` заменено на `[ self-hosted ]`

> \*
> `windows-latest` заменено на `[ self-hosted, windows ]`
> \*
> `macos-latest` заменяется на `[ self-hosted, macOS ]`

Например, этот файл с именем `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
```

1. Создайте файл метаданных в каталоге `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`

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

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

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

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