{"meta":{"title":"조직용 워크플로 템플릿 생성","intro":"팀 구성원이 새 워크플로를 더 쉽게 추가할 수 있도록 돕는 워크플로 템플릿 생성 방법을 알아보세요.","product":"GitHub Actions","breadcrumbs":[{"href":"/ko/actions","title":"GitHub Actions"},{"href":"/ko/actions/how-tos","title":"사용법"},{"href":"/ko/actions/how-tos/reuse-automations","title":"자동화 재사용"},{"href":"/ko/actions/how-tos/reuse-automations/create-workflow-templates","title":"워크플로 템플릿 생성"}],"documentType":"article"},"body":"# 조직용 워크플로 템플릿 생성\n\n팀 구성원이 새 워크플로를 더 쉽게 추가할 수 있도록 돕는 워크플로 템플릿 생성 방법을 알아보세요.\n\n## 워크플로 템플릿 만들기\n\n이 절차에서는 워크플로 템플릿 및 메타데이터 파일을 만드는 방법을 보여 줍니다. 메타데이터 파일은 새 워크플로를 만들 때 사용자에게 워크플로 템플릿이 표시되는 방식을 설명합니다.\n\n1. 아직 존재하지 않는 경우, 조직 내에서 리포지토리`.github`를 새로 만드세요.\n\n2. 이름이 `workflow-templates`인 하위 디렉터리를 만듭니다.\n\n3. `workflow-templates` 디렉터리 내에 새 워크플로 파일을 만듭니다.\n\n   리포지토리의 기본 분기를 참조해야 하는 경우 `$default-branch` 자리 표시자를 사용할 수 있습니다. 워크플로가 생성될 때 자리 표시자는 리포지토리의 기본 분기 이름으로 자동으로 대체됩니다.\n\n   로 대체됩니다\n\n   예를 들어 이름이 `octo-organization-ci.yml`로 지정된 이 파일은 기본 워크플로를 보여 줍니다.\n\n   ```yaml copy\n   name: Octo Organization CI\n\n   on:\n     push:\n       branches: [ $default-branch ]\n     pull_request:\n       branches: [ $default-branch ]\n\n   jobs:\n     build:\n       runs-on: ubuntu-latest\n\n       steps:\n         - uses: actions/checkout@v6\n\n         - name: Run a one-line script\n           run: echo Hello from Octo Organization\n   ```\n\n4. `workflow-templates` 디렉터리 내에 메타데이터 파일을 만듭니다. 메타데이터 파일의 이름은 워크플로 파일과 동일해야 하지만 `.yml` 확장명 대신 `.properties.json`을 추가해야 합니다. 예를 들어, `octo-organization-ci.properties.json`이라는 이름의 이 파일에는 다음과 같이 워크플로 파일에 대한 `octo-organization-ci.yml`라는 이름의 메타데이터가 포함됩니다.\n\n   ```json copy\n   {\n       \"name\": \"Octo Organization Workflow\",\n       \"description\": \"Octo Organization CI workflow template.\",\n       \"iconName\": \"example-icon\",\n       \"categories\": [\n           \"Go\"\n       ],\n       \"filePatterns\": [\n           \"package.json$\",\n           \"^Dockerfile\",\n           \".*\\\\.md$\"\n       ]\n   }\n   ```\n\n   * `name`\n\n   - **필수입니다**. 워크플로의 이름입니다. 사용 가능한 워크플로 목록에 표시됩니다.\n\n   * `description`\n\n   - **필수입니다**. 워크플로 설명입니다. 사용 가능한 워크플로 목록에 표시됩니다.\n\n   * `iconName`\n\n   - **선택 사항**. 워크플로 목록에 표시되는 워크플로의 아이콘을 지정합니다.\n     `iconName` 은 다음 형식 중 하나일 수 있습니다.\n     * `workflow-templates` 디렉터리에 저장된 SVG 파일입니다. 파일을 참조하려면 파일 확장명 없이 파일 이름이 값이어야 합니다. 예를 들어, `example-icon.svg`이라는 SVG 파일은 `example-icon`로 참조됩니다.\n     * GitHub의 [Octicons](https://primer.style/octicons/) 집합의 아이콘입니다. 옥시콘을 참조하려면 값이 `octicon <icon name>`여야 합니다. 예: `octicon smiley`.\n\n   * `categories`\n\n   - **선택 사항**. 워크플로가 표시되는 범주를 정의합니다. 다음 목록에서 범주 이름을 사용할 수 있습니다.\n     * 시작 워크플로 리포지토리의 [일반 범주 이름입니다](https://github.com/actions/starter-workflows/blob/main/README.md#categories) .\n\n     * [linguist](https://github.com/github-linguist/linguist/blob/main/lib/linguist/languages.yml) 리포지토리에 있는 목록의 Linguist 언어입니다.\n\n     * [starter-workflows](https://github.com/github-starter-workflows/repo-analysis-partner/blob/main/tech_stacks.yml) 리포지토리의 목록에서 지원되는 기술 스택입니다.\n\n   * `filePatterns`\n\n   - **선택 사항**. 사용자 리포지토리의 루트 디렉터리에 정의된 정규식과 일치하는 파일이 있는 경우 워크플로를 사용할 수 있도록 합니다.\n\n5. 다른 워크플로 템플릿을 추가하려면 파일을 동일한 `workflow-templates` 디렉터리에 추가합니다.\n\n## 다음 단계\n\n* 워크플로 템플릿에 대한 참조 정보는 [워크플로 구성 재사용](/ko/actions/reference/workflows-and-actions/reusing-workflow-configurations#workflow-templates)을(를) 참조하세요."}