ノート: GitHubホストランナーは、現在GitHub Enterprise Serverでサポートされていません。 GitHubパブリックロードマップで、計画されている将来のサポートに関する詳しい情� �を見ることができます。
概要
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@v2 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 To download an artifact from the same workflow run, your download job should specify needs: upload-job-name so it doesn't start until the upload job finishes.
成果物に関する詳しい情� �については「成果物を利用してワークフローのデータを永続化する」を参照してく� さい。
次のステップ
GitHub Actions について詳しくは、「複雑なワークフローを管理する」を参照してく� さい。