注: GitHub ホステッド ランナーは、現在 GitHub Enterprise Server でサポートされていません。 GitHub public roadmap で、今後の計画的なサポートの詳細を確認できます。
Overview
スターター ワークフローを使用すると、ワークフローを作成するアクセス許可を持つ Organization 内のすべての人が、より迅速かつ簡単にワークフローを作成できます。 新しいワークフローを作成する� �合は、スターター ワークフローを選択すると、ワークフローを作成する作業の一部またはすべてを自動的に行うことができます。 スターター ワークフローは、カスタ� ワークフローの構築の出発点として利用することも、そのまま利用することもできます。 これにより、時間を節約できる� けでなく、Organization 全体の一貫性とベスト プラクティスが促進されます。
GitHub には、次の高レベルのカテゴリにすぐに使用できるスターター ワークフローが用意されています。
- デプロイ (CD) 。 詳細については、「継続的デプロイについて」を参照してく� さい。
- 継続的インテグレーション (CI) 。 詳細については、「継続的インテグレーションについて」を参照してく� さい。
- オートメーション。 Automation スターター ワークフローには、pull request のトリアージや、pull request で変更されたパスに基づくラベルの適用、リポジトリに初めて投稿する人へのあいさつなど、ワークフローを自動化するためのソリューションが用意されています。
Creating a starter workflow
Starter workflows can be created by users with write access to the organization's .github
repository. These can then be used by organization members who have permission to create workflows.
This procedure demonstrates how to create a starter workflow and metadata file. The metadata file describes how the starter workflows will be presented to users when they are creating a new workflow.
-
If it doesn't already exist, create a new public repository named
.github
in your organization. -
Create a directory named
workflow-templates
. -
Create your new workflow file inside the
workflow-templates
directory.If you need to refer to a repository's default branch, you can use the
$default-branch
placeholder. When a workflow is created the placeholder will be automatically replaced with the name of the repository's default branch.For example, this file named
octo-organization-ci.yml
demonstrates a basic workflow.name: Octo Organization CI on: push: branches: [ $default-branch ] pull_request: branches: [ $default-branch ] jobs: build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - name: Run a one-line script run: echo Hello from Octo Organization
-
Create a metadata file inside the
workflow-templates
directory. The metadata file must have the same name as the workflow file, but instead of the.yml
extension, it must be appended with.properties.json
. For example, this file namedocto-organization-ci.properties.json
contains the metadata for a workflow file namedocto-organization-ci.yml
:{ "name": "Octo Organization Workflow", "description": "Octo Organization CI starter workflow.", "iconName": "example-icon", "categories": [ "Go" ], "filePatterns": [ "package.json$", "^Dockerfile", ".*\\.md$" ] }
name
- Required. The name of the workflow. This is displayed in the list of available workflows.description
- Required. The description of the workflow. This is displayed in the list of available workflows.iconName
- Optional. Specifies an icon for the workflow that's displayed in the list of workflows. TheiconName
must be the name of an SVG file, without the file name extension, stored in theworkflow-templates
directory. For example, an SVG file namedexample-icon.svg
is referenced asexample-icon
.categories
- Optional. Defines the language category of the workflow. When a user views the available starter workflows for a repository, the workflows that match the identified language for the project are featured more prominently. For information on the available language categories, see https://github.com/github/linguist/blob/master/lib/linguist/languages.yml.filePatterns
- Optional. Allows the workflow to be used if the user's repository has a file in its root directory that matches a defined regular expression.
To add another starter workflow, add your files to the same workflow-templates
directory. For example:
Next steps
To continue learning about GitHub Actions, see "Using starter workflows."