はじめに
GitHub Actions は、ビルド、テスト、デプロイのパイプラインを自動化できる継続的インテグレーションと継続的デリバリー (CI/CD) のプラットフォームです。 リポジトリに変更をプッシュするたびにテストを実行するワークフロー、またはマージされた pull request を運用環境にデプロイしたりするワークフローを作成できます。
このクイックスタート ガイドでは、GitHub のユーザー インターフェイスを使用して、GitHub Actions の重要な機能の一部を示すワークフローを追加する方法について説明します。
事前構成済みワークフローの使用を開始するには、 actions/starter-workflows リポジトリ内のテンプレートの一覧を参照します。 詳しくは、「ワークフロー テンプレートの使用」を参照してください。
GitHub Actions ワークフローの概要について詳しくは、「ワークフローについて」をご覧ください。 GitHub Actions を構成するさまざまなコンポーネントについては、「GitHub Actions を理解する」を参照してください。
ワークフロー テンプレートの使用
GitHub には、独自のワークフローを作成するためにそのまま使える、もしくはカスタマイズできる事前構成済みのワークフロー テンプレートが用意されています。 GitHub Enterprise Cloud はコードを分析し、自分のリポジトリに役立つ可能性のあるワークフロー テンプレートを表示します。 たとえばリポジトリにNode.jsのコードが含まれているなら、Node.jsプロジェクトのためのサジェッションが提示されます。
これらのワークフロー テンプレートは、すぐに起動して実行できるように設計されており、次のようなさまざまな構成が提供されます。
- CI: 継続的インテグレーション ワークフロー
- デプロイ: デプロイ ワークフロー
- 自動化: 自動ワークフロー
- コード スキャン: Code スキャン ワークフロー
- ページ: ページ ワークフロー
これらのワークフローを、カスタム ワークフローの構築の出発点として使用するか、そのまま利用します。 ワークフロー テンプレートの詳細な一覧は、actions/starter-workflows リポジトリで参照できます。 詳しくは、「ワークフロー テンプレートの使用」を参照してください。
前提条件
このガイドは、以下の読者を対象としています。
-
GitHub の使用方法について少なくとも基本的な知識があること。 そうでない場合は、最初にリポジトリと pull request に関するドキュメントの記事をお勧めします。 たとえば、「リポジトリのクイック スタート」、「ブランチの概要」、「pull requests について」を参照してください。
-
ファイルを追加できるリポジトリが GitHub にあります。
-
GitHub Actions にアクセスできます。
Note
アクション タブが GitHub のリポジトリの名前の下に表示されない場合は、リポジトリのアクションが無効になっている可能性があります。 詳しくは、「リポジトリの GitHub Actions の設定を管理する」を参照してください。
最初のワークフローを作成する
-
GitHub のリポジトリで、
.github/workflows
ディレクトリにgithub-actions-demo.yml
というワークフロー ファイルを作成します。 手順は次のとおりです。-
.github/workflows
ディレクトリが既に存在する場合は、GitHub のそのディレクトリに移動し、[ファイルの追加] をクリックし、[新しいファイルの作成] をクリックして、ファイルに「github-actions-demo.yml
」という名前を付けます。 -
リポジトリに
.github/workflows
ディレクトリがない場合は、GitHub のリポジトリのメイン ページに移動し、[ファイルの追加] をクリックして、[新しいファイルの作成] をクリックし、ファイルに「.github/workflows/github-actions-demo.yml
」という名前を付けます。 これにより、 1 つの手順で.github
およびworkflows
ディレクトリとgithub-actions-demo.yml
ファイルが作成されます。
Note
GitHub でリポジトリ内の GitHub Actions ワークフローを検出するには、ワークフロー ファイルを「
.github/workflows
」という名前のディレクトリに保存する必要があります。ワークフロー ファイルには任意の名前を付けることができますが、ファイル名の拡張子として
.yml
または.yaml
を使用する必要があります。 YAML は、構成ファイルでよく使用されるマークアップ言語です。 -
-
次の YAML コンテンツを
github-actions-demo.yml
ファイルにコピーします。YAML name: GitHub Actions Demo run-name: ${{ github.actor }} is testing out GitHub Actions 🚀 on: [push] jobs: Explore-GitHub-Actions: runs-on: ubuntu-latest steps: - run: echo "🎉 The job was automatically triggered by a ${{ github.event_name }} event." - run: echo "🐧 This job is now running on a ${{ runner.os }} server hosted by GitHub!" - run: echo "🔎 The name of your branch is ${{ github.ref }} and your repository is ${{ github.repository }}." - name: Check out repository code uses: actions/checkout@v4 - run: echo "💡 The ${{ github.repository }} repository has been cloned to the runner." - run: echo "🖥️ The workflow is now ready to test your code on the runner." - name: List files in the repository run: | ls ${{ github.workspace }} - run: echo "🍏 This job's status is ${{ job.status }}."
name: GitHub Actions Demo run-name: ${{ github.actor }} is testing out GitHub Actions 🚀 on: [push] jobs: Explore-GitHub-Actions: runs-on: ubuntu-latest steps: - run: echo "🎉 The job was automatically triggered by a ${{ github.event_name }} event." - run: echo "🐧 This job is now running on a ${{ runner.os }} server hosted by GitHub!" - run: echo "🔎 The name of your branch is ${{ github.ref }} and your repository is ${{ github.repository }}." - name: Check out repository code uses: actions/checkout@v4 - run: echo "💡 The ${{ github.repository }} repository has been cloned to the runner." - run: echo "🖥️ The workflow is now ready to test your code on the runner." - name: List files in the repository run: | ls ${{ github.workspace }} - run: echo "🍏 This job's status is ${{ job.status }}."
この段階では、このワークフローの詳細を理解する必要はありません。 ここでは、内容をコピーしてファイルに貼り付けることができます。 このクイック スタート ガイドを完了すると、「ワークフローについて」のワークフロー ファイルの構文について学習できます。また、
${{ github.actor }}
や${{ github.event_name }}
などの GitHub Actions コンテキストの説明については、「ワークフロー実行に関するコンテキスト情報へのアクセス」を参照してください。 -
[変更をコミットする] をクリックします。
-
[変更の提案] ダイアログで、既定のブランチにコミットするオプション、または新しいブランチを作成して pull request を開始するオプションを選択します。 次に、[変更のコミット] または [変更の提案] をクリックします。
リポジトリ内のワークフローファイルをブランチにコミットすると、push
イベントがトリガーされ、ワークフローが実行されます。
pull request を開始することを選択した場合は、引き続きプル要求を作成できますが、コミットはブランチに対してまだ行われ、新しいワークフローがトリガーされるため、このクイックスタートの目的では必要ありません。
ワークフローの結果を表示する
-
GitHub で、リポジトリのメイン ページに移動します。
-
リポジトリ名の下にある [アクション] をクリックします。
-
左側のサイドバーで、表示するワークフローをクリックします。この例では、"GitHub Actions デモ" です。
-
ワークフローの実行の一覧から、表示する実行の名前をクリックします。この例では、"USERNAME が GitHub Actions を試しています" です。
-
ワークフローの実行ページの左側のサイドバーの [ジョブ] で、Explore-GitHub-Actions ジョブをクリックします。
-
ログには、各ステップの処理方法が表示されます。 いずれかのステップを展開して、詳細を表示します。
たとえば、リポジトリ内のファイルのリストを確認できます。
追加したワークフロー例では、コードがブランチにプッシュされるたびにトリガーされ、GitHub Actions がリポジトリのコンテンツを処理できる方法が示されます。 詳しいチュートリアルについては、「GitHub Actions を理解する」をご覧ください。
次のステップ
GitHub Actions は、アプリケーション開発プロセスのほぼすべての要素を自動化するのに役立ちます。 使い始める準備はできていますか。 GitHub Actions で次のステップに進む際に役立つ、以下のようなリソースを参照してください。
- GitHub Actions ワークフローの作成については、「ワークフロー テンプレートの使用」を参照してください。
- 継続的インテグレーション (CI) ワークフローについては、「ビルドとテスト」を参照してください。
- パッケージのビルドと発行については、「パッケージを公開する」を参照してください。
- プロジェクトの配置については、「ユース ケースと例」を参照してください。
- GitHub でタスクとプロセスを自動化する方法については、「プロジェクトの管理」を参照してください。
- GitHub Actions のより複雑な機能を示す例については、「ユース ケースと例」を参照してください。 これらの詳細な例では、ランナーでコードをテストする方法、GitHub CLI にアクセスする方法、コンカレンシーやテスト マトリックスなどの高度な機能を使用する方法を説明しています。
- GitHub Certifications で GitHub Actions 認定を取得すると、GitHub Actions を使用してワークフローを自動化し、開発を加速する能力を証明できます。 詳しくは、「GitHub Certifications について」をご覧ください。