ドキュメントには頻繁に更新が加えられ、その都度公開されています。本ページの翻訳はまだ未完成な部分があることをご了承ください。最新の情報については、英語のドキュメンテーションをご参照ください。本ページの翻訳に問題がある場合はこちらまでご連絡ください。

GitHub Actions の重要な機能

GitHub Actions は、堅牢で動的な自動化の構築ができるように設計されています。 このガイドでは、環境変数、カスタマイズされたスクリプトなどを含む GitHub Actions ワークフローを作成する方法を説明します。

ここには以下の内容があります:

Note: GitHub Actions was available for GitHub Enterprise Server 2.22 as a limited beta. The beta has ended. GitHub Actions is now generally available in GitHub Enterprise Server 3.0 or later. For more information, see the GitHub Enterprise Server 3.0 release notes.


Note: GitHub-hosted runners are not currently supported on GitHub Enterprise Server. You can see more information about planned future support on the GitHub public roadmap.

概要

GitHub Actions を使用すると、アプリケーションと Team の固有のニーズに合わせてワークフローをカスタマイズできます。 このガイドでは、変数の使用、スクリプトの実行、ジョブ間でのデータと成果物の共有など、いくつかの重要なカスタマイズ手法について説明します。

ワークフローで変数を使用する

GitHub Actions には、ワークフロー実行ごとのデフォルトの環境変数が含まれています。 カスタム環境変数を使用する必要がある場合は、YAML ワークフローファイルでこれらを設定できます。 この例は、POSTGRES_HOST および POSTGRES_PORT という名前のカスタム変数の作成方法を示しています。 これらの変数は、node client.js スクリプトで使用できます。

jobs:
  example-job:
      steps:
        - name: Connect to PostgreSQL
          run: node client.js
          env:
            POSTGRES_HOST: postgres
            POSTGRES_PORT: 5432

詳しい情報については、「環境変数の利用」を参照してください。

ワークフローにスクリプトを追加する

アクションを使用してスクリプトとシェルコマンドを実行し、割り当てられたランナーで実行できます。 この例では、アクションが run キーワードを使用して、ランナーで npm install -g bats を実行する方法を示しています。

jobs:
  example-job:
    steps:
      - run: npm install -g bats

たとえば、スクリプトをアクションとして実行するには、スクリプトをリポジトリに保存し、パスとシェルタイプを指定します。

jobs:
  example-job:
    steps:
      - name: Run build script
        run: ./.github/scripts/build.sh
        shell: bash

詳細については、「GitHub Actionsのワークフロー構文」を参照してください。

ジョブ間でデータを共有する

ジョブが同じワークフロー内の別のジョブと共有するファイルを生成する場合、または後で参照できるようにファイルを保存する場合は、それらを成果物として GitHub に保存できます。 成果物とは、コードをビルドしてテストするときに作成されるファイルのことです。 たとえば、成果物には、バイナリまたパッケージファイル、テスト結果、スクリーンショット、ログファイルなどがあります。 成果物は、それが作成されたワークフロー実行に関連付けられており、別のジョブで使用できます。

たとえば、ファイルを作成し、それを成果物としてアップロードできます。

jobs:
  example-job:
    name: Save output
    steps:
      - shell: bash
        run: |
          expr 1 + 1 > output.log
      - name: Upload output file
        uses: actions/upload-artifact@v1
        with:
          name: output-log-file
          path: output.log

別のワークフロー実行から成果物をダウンロードするには、actions/download-artifact アクションを使用できます。 たとえば、output-log-file という名前の成果物をダウンロードできます。

jobs:
  example-job:
    steps:
      - name: Download a single artifact
        uses: actions/download-artifact@v2
        with:
          name: output-log-file

成果物に関する詳しい情報については「成果物を利用してワークフローのデータを永続化する」を参照してください。

次のステップ

GitHub Actions について詳しくは、「複雑なワークフローを管理する」を参照してください。

Did this doc help you?

Privacy policy

Help us make these docs great!

All GitHub docs are open source. See something that's wrong or unclear? Submit a pull request.

Make a contribution

OR, learn how to contribute.