Skip to content
Latchkey

GitHub Actions の Deployment とは?

deployment は、environment へのコードの追跡されたリリースで、ステータスと履歴が GitHub によって記録されます。

コードの出荷は deploy スクリプトを実行するだけではありません。何がどこに行ったか、そして成功したかどうかの記録が欲しいものです。GitHub の deployment は、workflow の実行を environment に結びつけ、その結果を追跡します。

概要

deployment は、名前付き environment へのリリースを表す GitHub オブジェクトです。environment: を対象とするジョブは、そのジョブの結果を反映したステータスを持つ deployment を作成します。

A deployment job
jobs:
  release:
    runs-on: ubuntu-latest
    environment:
      name: production
      url: https://app.example.com
    steps:
      - run: ./deploy.sh

仕組み

ジョブが実行されると、GitHub はその environment への deployment を、オプションの URL を含めて記録します。deployment は状態(進行中、成功、失敗)を経て、environment の履歴に表示されます。

重要な理由

deployment は監査可能性を提供します。誰が何をどこに deploy したか、そしてそれが機能したかどうかです。environment 保護ルールと組み合わせることで、リリースをレビュー可能で追跡可能なイベントに変えます。

Deployment と保護

deployment は environment を対象とするため、保護ルールを継承します。したがって、本番の deployment はジョブの前に承認を要求でき、deployment レコードがその承認を記録します。

関連する概念

deployment は environment を対象とするジョブによって作成され、多くの場合 workflow_dispatch を介して起動されます。

重要なポイント

  • deployment は environment への追跡されたリリースです。
  • environment: を対象にすると deployment レコードが作成されます。
  • 監査可能なステータスと履歴を提供します。

関連ガイド