{"meta":{"title":"変数に情報を格納する","intro":"GitHub は GitHub Actions ワークフロー実行ごとに、既定の変数を設定します。 単一のワークフローまたは複数のワークフローで使用するカスタム変数を設定することもできます。","product":"GitHub Actions","breadcrumbs":[{"href":"/ja/actions","title":"GitHub Actions"},{"href":"/ja/actions/how-tos","title":"方法"},{"href":"/ja/actions/how-tos/write-workflows","title":"ワークフローを書き込む"},{"href":"/ja/actions/how-tos/write-workflows/choose-what-workflows-do","title":"ワークフロー動作を選択する"},{"href":"/ja/actions/how-tos/write-workflows/choose-what-workflows-do/use-variables","title":"変数の使用"}],"documentType":"article"},"body":"# 変数に情報を格納する\n\nGitHub は GitHub Actions ワークフロー実行ごとに、既定の変数を設定します。 単一のワークフローまたは複数のワークフローで使用するカスタム変数を設定することもできます。\n\n## 単一のワークフローの環境変数の定義\n\n単一のワークフローにカスタム環境変数を設定するには、ワークフロー ファイル内の `env` キーを使用して環境変数を定義できます。 このメソッドで設定されるカスタム変数のスコープは、定義されている要素に制限されます。 次のスコープを設定する変数を定義できます。\n\n* ワークフロー全体 (ワークフロー ファイルの最上位レベルで [`env`](/ja/actions/using-workflows/workflow-syntax-for-github-actions#env) を使用)。\n* ワークフロー内のジョブの内容 ([`jobs.<job_id>.env`](/ja/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idenv) を使用)。\n* ジョブ内の特定の手順 ([`jobs.<job_id>.steps[*].env`](/ja/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsenv) を使用)。\n\n```yaml copy\nname: Greeting on variable day\n\non:\n  workflow_dispatch\n\nenv:\n  DAY_OF_WEEK: Monday\n\njobs:\n  greeting_job:\n    runs-on: ubuntu-latest\n    env:\n      Greeting: Hello\n    steps:\n      - name: \"Say Hello Mona it's Monday\"\n        run: echo \"$Greeting $First_Name. Today is $DAY_OF_WEEK!\"\n        env:\n          First_Name: Mona\n```\n\n```\n          `env` 変数の値には、ランナー環境変数またはコンテキストを使用してアクセスできます。 上の例は、`echo` コマンドにおいて、ランナー環境変数として使用されている 3 つのカスタム変数 (`$DAY_OF_WEEK`、`$Greeting`、`$First_Name`) を示しています。 これらの変数の値は、それぞれワークフロー、ジョブ、ステップ レベルで設定され、スコープも設定されます。 これらの変数の補間はランナー上で行われます。\n```\n\nワークフローの `run` ステップまたは参照されるアクションのコマンドは、ランナーで使用しているシェルによって処理されます。 ワークフローの他の部分にある指示は GitHub Actions によって処理され、ランナーには送信されません。\n`run` ステップでは、ランナー環境変数またはコンテキストのいずれかを使用できますが、ランナーに送信されないワークフローの部分では、変数値にアクセスするためにコンテキストを使用する必要があります。 詳しくは、「[コンテキストを使用した変数の値へのアクセス](#using-contexts-to-access-variable-values)」をご覧ください。\n\nランナー環境変数の補間は、ワークフロー ジョブがランナー マシンに送信された後に行われるため、ランナーで使用されるシェルに適切な構文を使用する必要があります。 この例では、ワークフローは `ubuntu-latest` を指定します。 既定では、Linux ランナーは Bash シェルを使用するため、構文 `$NAME` を使用する必要があります。 既定では、Windows ランナーは PowerShell を使用するため、構文 `$env:NAME` を使用します。 シェルについて詳しくは、「[GitHub Actions　のワークフロー構文](/ja/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsshell)」をご覧ください。\n\n## 複数のワークフローに対する構成変数の定義\n\n複数のワークフローにわたって使用する構成変数を作成し、[organization](#creating-configuration-variables-for-an-organization)、[リポジトリ](#creating-configuration-variables-for-a-repository)、または[環境](#creating-configuration-variables-for-an-environment)レベルでそれらを定義できます。\n\nたとえば、構成変数を使用して、organization レベルでツールを構築するために渡されるパラメーターの既定値を設定しながら、リポジトリ所有者がケースバイケースでこれらのパラメーターをオーバーライドできるようにします。\n\n構成変数を定義すると、`vars` コンテキストで自動的に使用できるようになります。 詳しくは、「[`vars` コンテキストを使用した構成変数の値へのアクセス](#using-the-vars-context-to-access-configuration-variable-values)」をご覧ください。\n\n### リポジトリの構成変数の作成\n\nデータの再利用可能なアクション.パーミッションステートメント.シークレット.変数.リポジトリ %}\n\n1. GitHub で、リポジトリのメイン ページに移動します。\n2. リポジトリ名の下にある **<svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-gear\" aria-label=\"gear\" role=\"img\"><path d=\"M8 0a8.2 8.2 0 0 1 .701.031C9.444.095 9.99.645 10.16 1.29l.288 1.107c.018.066.079.158.212.224.231.114.454.243.668.386.123.082.233.09.299.071l1.103-.303c.644-.176 1.392.021 1.82.63.27.385.506.792.704 1.218.315.675.111 1.422-.364 1.891l-.814.806c-.049.048-.098.147-.088.294.016.257.016.515 0 .772-.01.147.038.246.088.294l.814.806c.475.469.679 1.216.364 1.891a7.977 7.977 0 0 1-.704 1.217c-.428.61-1.176.807-1.82.63l-1.102-.302c-.067-.019-.177-.011-.3.071a5.909 5.909 0 0 1-.668.386c-.133.066-.194.158-.211.224l-.29 1.106c-.168.646-.715 1.196-1.458 1.26a8.006 8.006 0 0 1-1.402 0c-.743-.064-1.289-.614-1.458-1.26l-.289-1.106c-.018-.066-.079-.158-.212-.224a5.738 5.738 0 0 1-.668-.386c-.123-.082-.233-.09-.299-.071l-1.103.303c-.644.176-1.392-.021-1.82-.63a8.12 8.12 0 0 1-.704-1.218c-.315-.675-.111-1.422.363-1.891l.815-.806c.05-.048.098-.147.088-.294a6.214 6.214 0 0 1 0-.772c.01-.147-.038-.246-.088-.294l-.815-.806C.635 6.045.431 5.298.746 4.623a7.92 7.92 0 0 1 .704-1.217c.428-.61 1.176-.807 1.82-.63l1.102.302c.067.019.177.011.3-.071.214-.143.437-.272.668-.386.133-.066.194-.158.211-.224l.29-1.106C6.009.645 6.556.095 7.299.03 7.53.01 7.764 0 8 0Zm-.571 1.525c-.036.003-.108.036-.137.146l-.289 1.105c-.147.561-.549.967-.998 1.189-.173.086-.34.183-.5.29-.417.278-.97.423-1.529.27l-1.103-.303c-.109-.03-.175.016-.195.045-.22.312-.412.644-.573.99-.014.031-.021.11.059.19l.815.806c.411.406.562.957.53 1.456a4.709 4.709 0 0 0 0 .582c.032.499-.119 1.05-.53 1.456l-.815.806c-.081.08-.073.159-.059.19.162.346.353.677.573.989.02.03.085.076.195.046l1.102-.303c.56-.153 1.113-.008 1.53.27.161.107.328.204.501.29.447.222.85.629.997 1.189l.289 1.105c.029.109.101.143.137.146a6.6 6.6 0 0 0 1.142 0c.036-.003.108-.036.137-.146l.289-1.105c.147-.561.549-.967.998-1.189.173-.086.34-.183.5-.29.417-.278.97-.423 1.529-.27l1.103.303c.109.029.175-.016.195-.045.22-.313.411-.644.573-.99.014-.031.021-.11-.059-.19l-.815-.806c-.411-.406-.562-.957-.53-1.456a4.709 4.709 0 0 0 0-.582c-.032-.499.119-1.05.53-1.456l.815-.806c.081-.08.073-.159.059-.19a6.464 6.464 0 0 0-.573-.989c-.02-.03-.085-.076-.195-.046l-1.102.303c-.56.153-1.113.008-1.53-.27a4.44 4.44 0 0 0-.501-.29c-.447-.222-.85-.629-.997-1.189l-.289-1.105c-.029-.11-.101-.143-.137-.146a6.6 6.6 0 0 0-1.142 0ZM11 8a3 3 0 1 1-6 0 3 3 0 0 1 6 0ZM9.5 8a1.5 1.5 0 1 0-3.001.001A1.5 1.5 0 0 0 9.5 8Z\"></path></svg> \\[Settings]** をクリックします。 \\[設定] タブが表示されない場合は、 **\\[<svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-kebab-horizontal\" aria-label=\"More\" role=\"img\"><path d=\"M8 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3ZM1.5 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Zm13 0a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Z\"></path></svg>]** ドロップダウン メニューを選び、 **\\[設定]** をクリックします。\n\n   ![タブを示すリポジトリ ヘッダーのスクリーンショット。 \\[設定\\] タブが濃いオレンジ色の枠線で強調表示されています。](/assets/images/help/repository/repo-actions-settings.png)\n3. サイドバーの \\[Security] セクションで、**<svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-key-asterisk\" aria-label=\"key-asterisk\" role=\"img\"><path d=\"M0 2.75A2.75 2.75 0 0 1 2.75 0h10.5A2.75 2.75 0 0 1 16 2.75v10.5A2.75 2.75 0 0 1 13.25 16H2.75A2.75 2.75 0 0 1 0 13.25ZM2.75 1.5c-.69 0-1.25.56-1.25 1.25v10.5c0 .69.56 1.25 1.25 1.25h10.5c.69 0 1.25-.56 1.25-1.25V2.75c0-.69-.56-1.25-1.25-1.25Z\"></path><path d=\"M8 4a.75.75 0 0 1 .75.75V6.7l1.69-.975a.75.75 0 0 1 .75 1.3L9.5 8l1.69.976a.75.75 0 0 1-.75 1.298L8.75 9.3v1.951a.75.75 0 0 1-1.5 0V9.299l-1.69.976a.75.75 0 0 1-.75-1.3L6.5 8l-1.69-.975a.75.75 0 0 1 .75-1.3l1.69.976V4.75A.75.75 0 0 1 8 4Z\"></path></svg> \\[Secrets and variables]** を選んでから、**\\[Actions]** をクリックします。\n4. **\\[変数]** タブをクリックします。\n   ![\\[アクション シークレットと変数\\] ページのスクリーンショット。 \\[変数\\] タブが濃いオレンジ色の枠線で囲まれています。](/assets/images/help/repository/actions-variables-tab.png)\n5. ```\n          **[新しいリポジトリ変数]** をクリックします。\n   ```\n6. **\\[名前]** フィールドに、変数の名前を入力します。\n7. **\\[値]** フィールドに、変数の値を入力します。\n8. ```\n          **[変数の追加]** をクリックします。\n   ```\n\n### 環境の構成変数の作成\n\n個人用アカウントのリポジトリ内の環境でシークレットか変数を作成するユーザーは、そのリポジトリのオーナーである必要があります。 組織用リポジトリ内の環境用にシークレットか変数を作成するユーザーには、`admin` のアクセス権が必要です。 環境の詳細については、「[デプロイメント用の環境管理](/ja/actions/deployment/targeting-different-environments/managing-environments-for-deployment)」を参照してください。\n\n1. GitHub で、リポジトリのメイン ページに移動します。\n2. リポジトリ名の下にある **<svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-gear\" aria-label=\"gear\" role=\"img\"><path d=\"M8 0a8.2 8.2 0 0 1 .701.031C9.444.095 9.99.645 10.16 1.29l.288 1.107c.018.066.079.158.212.224.231.114.454.243.668.386.123.082.233.09.299.071l1.103-.303c.644-.176 1.392.021 1.82.63.27.385.506.792.704 1.218.315.675.111 1.422-.364 1.891l-.814.806c-.049.048-.098.147-.088.294.016.257.016.515 0 .772-.01.147.038.246.088.294l.814.806c.475.469.679 1.216.364 1.891a7.977 7.977 0 0 1-.704 1.217c-.428.61-1.176.807-1.82.63l-1.102-.302c-.067-.019-.177-.011-.3.071a5.909 5.909 0 0 1-.668.386c-.133.066-.194.158-.211.224l-.29 1.106c-.168.646-.715 1.196-1.458 1.26a8.006 8.006 0 0 1-1.402 0c-.743-.064-1.289-.614-1.458-1.26l-.289-1.106c-.018-.066-.079-.158-.212-.224a5.738 5.738 0 0 1-.668-.386c-.123-.082-.233-.09-.299-.071l-1.103.303c-.644.176-1.392-.021-1.82-.63a8.12 8.12 0 0 1-.704-1.218c-.315-.675-.111-1.422.363-1.891l.815-.806c.05-.048.098-.147.088-.294a6.214 6.214 0 0 1 0-.772c.01-.147-.038-.246-.088-.294l-.815-.806C.635 6.045.431 5.298.746 4.623a7.92 7.92 0 0 1 .704-1.217c.428-.61 1.176-.807 1.82-.63l1.102.302c.067.019.177.011.3-.071.214-.143.437-.272.668-.386.133-.066.194-.158.211-.224l.29-1.106C6.009.645 6.556.095 7.299.03 7.53.01 7.764 0 8 0Zm-.571 1.525c-.036.003-.108.036-.137.146l-.289 1.105c-.147.561-.549.967-.998 1.189-.173.086-.34.183-.5.29-.417.278-.97.423-1.529.27l-1.103-.303c-.109-.03-.175.016-.195.045-.22.312-.412.644-.573.99-.014.031-.021.11.059.19l.815.806c.411.406.562.957.53 1.456a4.709 4.709 0 0 0 0 .582c.032.499-.119 1.05-.53 1.456l-.815.806c-.081.08-.073.159-.059.19.162.346.353.677.573.989.02.03.085.076.195.046l1.102-.303c.56-.153 1.113-.008 1.53.27.161.107.328.204.501.29.447.222.85.629.997 1.189l.289 1.105c.029.109.101.143.137.146a6.6 6.6 0 0 0 1.142 0c.036-.003.108-.036.137-.146l.289-1.105c.147-.561.549-.967.998-1.189.173-.086.34-.183.5-.29.417-.278.97-.423 1.529-.27l1.103.303c.109.029.175-.016.195-.045.22-.313.411-.644.573-.99.014-.031.021-.11-.059-.19l-.815-.806c-.411-.406-.562-.957-.53-1.456a4.709 4.709 0 0 0 0-.582c-.032-.499.119-1.05.53-1.456l.815-.806c.081-.08.073-.159.059-.19a6.464 6.464 0 0 0-.573-.989c-.02-.03-.085-.076-.195-.046l-1.102.303c-.56.153-1.113.008-1.53-.27a4.44 4.44 0 0 0-.501-.29c-.447-.222-.85-.629-.997-1.189l-.289-1.105c-.029-.11-.101-.143-.137-.146a6.6 6.6 0 0 0-1.142 0ZM11 8a3 3 0 1 1-6 0 3 3 0 0 1 6 0ZM9.5 8a1.5 1.5 0 1 0-3.001.001A1.5 1.5 0 0 0 9.5 8Z\"></path></svg> \\[Settings]** をクリックします。 \\[設定] タブが表示されない場合は、 **\\[<svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-kebab-horizontal\" aria-label=\"More\" role=\"img\"><path d=\"M8 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3ZM1.5 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Zm13 0a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Z\"></path></svg>]** ドロップダウン メニューを選び、 **\\[設定]** をクリックします。\n\n   ![タブを示すリポジトリ ヘッダーのスクリーンショット。 \\[設定\\] タブが濃いオレンジ色の枠線で強調表示されています。](/assets/images/help/repository/repo-actions-settings.png)\n3. 左側のサイドバーで、 **\\[環境]** をクリックします。\n4. 変数を追加したい環境をクリックしてください。\n5. ```\n          **[環境変数]** で **[変数の追加]** をクリックします。\n   ```\n6. **\\[名前]** フィールドに、変数の名前を入力します。\n7. **\\[値]** フィールドに、変数の値を入力します。\n8. ```\n          **[変数の追加]** をクリックします。\n   ```\n\n### 組織の構成変数の作成\n\nデータの再利用可能なアクション、アクションの秘密、変数、リポジトリへのアクセス %}\n\nOrganization のオーナーは、Organization レベルでシークレットまたは変数を作成できます。\n\n1. GitHub で、organization のメイン ページに移動します。\n\n2. Organization 名の下で、**\\[<svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-gear\" aria-label=\"gear\" role=\"img\"><path d=\"M8 0a8.2 8.2 0 0 1 .701.031C9.444.095 9.99.645 10.16 1.29l.288 1.107c.018.066.079.158.212.224.231.114.454.243.668.386.123.082.233.09.299.071l1.103-.303c.644-.176 1.392.021 1.82.63.27.385.506.792.704 1.218.315.675.111 1.422-.364 1.891l-.814.806c-.049.048-.098.147-.088.294.016.257.016.515 0 .772-.01.147.038.246.088.294l.814.806c.475.469.679 1.216.364 1.891a7.977 7.977 0 0 1-.704 1.217c-.428.61-1.176.807-1.82.63l-1.102-.302c-.067-.019-.177-.011-.3.071a5.909 5.909 0 0 1-.668.386c-.133.066-.194.158-.211.224l-.29 1.106c-.168.646-.715 1.196-1.458 1.26a8.006 8.006 0 0 1-1.402 0c-.743-.064-1.289-.614-1.458-1.26l-.289-1.106c-.018-.066-.079-.158-.212-.224a5.738 5.738 0 0 1-.668-.386c-.123-.082-.233-.09-.299-.071l-1.103.303c-.644.176-1.392-.021-1.82-.63a8.12 8.12 0 0 1-.704-1.218c-.315-.675-.111-1.422.363-1.891l.815-.806c.05-.048.098-.147.088-.294a6.214 6.214 0 0 1 0-.772c.01-.147-.038-.246-.088-.294l-.815-.806C.635 6.045.431 5.298.746 4.623a7.92 7.92 0 0 1 .704-1.217c.428-.61 1.176-.807 1.82-.63l1.102.302c.067.019.177.011.3-.071.214-.143.437-.272.668-.386.133-.066.194-.158.211-.224l.29-1.106C6.009.645 6.556.095 7.299.03 7.53.01 7.764 0 8 0Zm-.571 1.525c-.036.003-.108.036-.137.146l-.289 1.105c-.147.561-.549.967-.998 1.189-.173.086-.34.183-.5.29-.417.278-.97.423-1.529.27l-1.103-.303c-.109-.03-.175.016-.195.045-.22.312-.412.644-.573.99-.014.031-.021.11.059.19l.815.806c.411.406.562.957.53 1.456a4.709 4.709 0 0 0 0 .582c.032.499-.119 1.05-.53 1.456l-.815.806c-.081.08-.073.159-.059.19.162.346.353.677.573.989.02.03.085.076.195.046l1.102-.303c.56-.153 1.113-.008 1.53.27.161.107.328.204.501.29.447.222.85.629.997 1.189l.289 1.105c.029.109.101.143.137.146a6.6 6.6 0 0 0 1.142 0c.036-.003.108-.036.137-.146l.289-1.105c.147-.561.549-.967.998-1.189.173-.086.34-.183.5-.29.417-.278.97-.423 1.529-.27l1.103.303c.109.029.175-.016.195-.045.22-.313.411-.644.573-.99.014-.031.021-.11-.059-.19l-.815-.806c-.411-.406-.562-.957-.53-1.456a4.709 4.709 0 0 0 0-.582c-.032-.499.119-1.05.53-1.456l.815-.806c.081-.08.073-.159.059-.19a6.464 6.464 0 0 0-.573-.989c-.02-.03-.085-.076-.195-.046l-1.102.303c-.56.153-1.113.008-1.53-.27a4.44 4.44 0 0 0-.501-.29c-.447-.222-.85-.629-.997-1.189l-.289-1.105c-.029-.11-.101-.143-.137-.146a6.6 6.6 0 0 0-1.142 0ZM11 8a3 3 0 1 1-6 0 3 3 0 0 1 6 0ZM9.5 8a1.5 1.5 0 1 0-3.001.001A1.5 1.5 0 0 0 9.5 8Z\"></path></svg> Settings]** をクリックします。 \\[設定] タブが表示されない場合は、 **\\[<svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-kebab-horizontal\" aria-label=\"More\" role=\"img\"><path d=\"M8 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3ZM1.5 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Zm13 0a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Z\"></path></svg>]** ドロップダウン メニューを選び、 **\\[設定]** をクリックします。\n\n   ![組織のプロファイルのタブのスクリーンショット。 \\[設定\\] タブが濃いオレンジ色の枠線で囲まれています。](/assets/images/help/discussions/org-settings-global-nav-update.png)\n\n3. サイドバーの \\[Security] セクションで、**<svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-key-asterisk\" aria-label=\"key-asterisk\" role=\"img\"><path d=\"M0 2.75A2.75 2.75 0 0 1 2.75 0h10.5A2.75 2.75 0 0 1 16 2.75v10.5A2.75 2.75 0 0 1 13.25 16H2.75A2.75 2.75 0 0 1 0 13.25ZM2.75 1.5c-.69 0-1.25.56-1.25 1.25v10.5c0 .69.56 1.25 1.25 1.25h10.5c.69 0 1.25-.56 1.25-1.25V2.75c0-.69-.56-1.25-1.25-1.25Z\"></path><path d=\"M8 4a.75.75 0 0 1 .75.75V6.7l1.69-.975a.75.75 0 0 1 .75 1.3L9.5 8l1.69.976a.75.75 0 0 1-.75 1.298L8.75 9.3v1.951a.75.75 0 0 1-1.5 0V9.299l-1.69.976a.75.75 0 0 1-.75-1.3L6.5 8l-1.69-.975a.75.75 0 0 1 .75-1.3l1.69.976V4.75A.75.75 0 0 1 8 4Z\"></path></svg> \\[Secrets and variables]** を選んでから、**\\[Actions]** をクリックします。\n\n4. **\\[変数]** タブをクリックします。\n\n   ![\\[アクション シークレットと変数\\] ページのスクリーンショット。 \\[変数\\] タブが濃いオレンジ色の枠線で囲まれています。](/assets/images/help/repository/actions-variables-tab.png)\n\n5. ```\n          **[新しい Organization 変数]** をクリックします。\n   ```\n\n6. **\\[名前]** フィールドに、変数の名前を入力します。\n\n7. **\\[値]** フィールドに、変数の値を入力します。\n\n8. ```\n          **[リポジトリアクセス]** ドロップダウンリストから、アクセスポリシーを選びます。\n   ```\n\n9. ```\n          **[変数の追加]** をクリックします。\n   ```\n\n## コンテキストを使用した変数の値へのアクセス\n\nコンテキストは、ワークフローの実行、変数、ランナーの環境、ジョブ、ステップに関する情報にアクセスする方法です。詳しくは、「[コンテキスト リファレンス](/ja/actions/learn-github-actions/contexts)」をご覧ください。 ワークフローには、さまざまな目的で使用できる他の多くのコンテキストがあります。 ワークフロー内で特定のコンテキストを使用できる場所について詳しくは、「[コンテキスト リファレンス](/ja/actions/learn-github-actions/contexts#context-availability)」をご覧ください。\n\n```\n          `env` コンテキストを使用して環境変数値にアクセスし、`vars` コンテキストを使用して構成変数値にアクセスできます。\n```\n\n###\n\n```\n          `env` コンテキストを使用した環境変数の値へのアクセス\n```\n\nGitHub Actions では、ランナー環境変数に加えて、コンテキストを使用した `env` キー値の設定および読み取りを行うことができます。 環境変数やコンテキストは、ワークフロー中の様々な場所で利用できます。\n\nワークフローまたは参照先アクションの `run` ステップは、ランナーによって処理されます。 その結果、ランナーで使用するシェル (Linux ランナーの bash シェル用の `$NAME` や Windows ランナーの PowerShell用の `$env:NAME` など) に適した構文を使用して、ランナー環境変数をここで使用できます。 ほとんどの場合、コンテキストと構文 `${{ CONTEXT.PROPERTY }}` を使用して、同じ値にアクセスすることもできます。 違いは、ジョブがランナーに送信される前にコンテキストが補間され、文字列に置き換えられるということです。\n\nただし、GitHub Actions によって処理され、ランナーには送信されないワークフローの一部のランナー環境変数値は使用できません。 その代わりに、コンテキストを使用することができます。 たとえば、ジョブまたはステップがランナーに送信されるかどうかを決定する `if` 条件は、常に GitHub Actions によって処理されます。 したがって、変数の値にアクセスするには、 `if` 条件ステートメントでコンテキストを使用する必要があります。\n\n```yaml copy\nname: Conditional env variable\n\non: workflow_dispatch\n\nenv:\n  DAY_OF_WEEK: Monday\n\njobs:\n  greeting_job:\n    runs-on: ubuntu-latest\n    env:\n      Greeting: Hello\n    steps:\n      - name: \"Say Hello Mona it's Monday\"\n        if: ${{ env.DAY_OF_WEEK == 'Monday' }}\n        run: echo \"$Greeting $First_Name. Today is $DAY_OF_WEEK!\"\n        env:\n          First_Name: Mona\n```\n\n前の例のこの変更では、`if` 条件を導入しました。 ワークフロー ステップは、`DAY_OF_WEEK` が \"Monday\" に設定されている場合にのみ実行されます。\n`if`を使用して、`env` 条件付きステートメントからこの値にアクセスします。\n`env` コマンド内で参照される変数には、 `run` コンテキストは必要ありません。 これらはランナー環境変数として参照され、ランナーがジョブを受信した後に補間されます。 ただし、コンテキストを使用して、ランナーにジョブを送信する前に、これらの変数を補間することを選択できました。 結果の出力は同じになります。\n\n```yaml\nrun: echo \"${{ env.Greeting }} ${{ env.First_Name }}. Today is ${{ env.DAY_OF_WEEK }}!\"\n```\n\n> \\[!NOTE]\n> コンテキストは通常、`${{ context.property }}` としてドル記号と中かっこを使用して示されます。\n> `if` 条件では、`${{` と `}}` は省略可能ですが、それらを使用する場合は、上記のように比較ステートメント全体を囲む必要があります。\n\nデータ 再利用可能なアクション.コンテキスト挿入警告 %}\n\n###\n\n```\n          `vars` コンテキストを使用した構成変数の値へのアクセス\n```\n\n構成変数には、`vars` コンテキストを使用してワークフロー全体でアクセスできます。 詳しくは、「[コンテキスト リファレンス](/ja/actions/learn-github-actions/contexts#vars-context)」をご覧ください。\n\n構成変数が設定されていない場合、変数を参照するコンテキストの戻り値は空の文字列になります。\n\n次の例は、ワークフロー全体で `vars` コンテキストと共に構成変数を使用する方法を示しています。 次の各構成変数は、リポジトリ、Organization、または環境レベルで定義されています。\n\n```yaml copy\non:\n  workflow_dispatch:\nenv:\n  # Setting an environment variable with the value of a configuration variable\n  env_var: ${{ vars.ENV_CONTEXT_VAR }}\n\njobs:\n  display-variables:\n    name: ${{ vars.JOB_NAME }}\n    # You can use configuration variables with the `vars` context for dynamic jobs\n    if: ${{ vars.USE_VARIABLES == 'true' }}\n    runs-on: ${{ vars.RUNNER }}\n    environment: ${{ vars.ENVIRONMENT_STAGE }}\n    steps:\n    - name: Use variables\n      run: |\n        echo \"repository variable : $REPOSITORY_VAR\"\n        echo \"organization variable : $ORGANIZATION_VAR\"\n        echo \"overridden variable : $OVERRIDE_VAR\"\n        echo \"variable from shell environment : $env_var\"\n      env:\n        REPOSITORY_VAR: ${{ vars.REPOSITORY_VAR }}\n        ORGANIZATION_VAR: ${{ vars.ORGANIZATION_VAR }}\n        OVERRIDE_VAR: ${{ vars.OVERRIDE_VAR }}\n        \n    - name: ${{ vars.HELLO_WORLD_STEP }}\n      if: ${{ vars.HELLO_WORLD_ENABLED == 'true' }}\n      uses: actions/hello-world-javascript-action@main\n      with:\n        who-to-greet: ${{ vars.GREET_NAME }}\n```\n\n## オペレーティング システムの検出\n\n既定の環境変数 `RUNNER_OS` と対応するコンテキスト プロパティ <span style=\"white-space: nowrap;\">`${{ runner.os }}`</span> を使用して、異なるオペレーティング システムに使用できる 1 つのワークフロー ファイルを記述できます。 たとえば、ランナーによって使用されるシェルに応じて異なる、環境変数の構文を変更しなくても、オペレーティング システムを `macos-latest` から `windows-latest` に変更した場合、次のワークフローを正常に実行できます。\n\n```yaml copy\non: workflow_dispatch\n\njobs:\n  if-Windows-else:\n    runs-on: macos-latest\n    steps:\n      - name: condition 1\n        if: runner.os == 'Windows'\n        run: echo \"The operating system on the runner is $env:RUNNER_OS.\"\n      - name: condition 2\n        if: runner.os != 'Windows'\n        run: echo \"The operating system on the runner is not Windows, it's $RUNNER_OS.\"\n```\n\nこの例では、2 つの `if` ステートメントによって `os` コンテキストの `runner` プロパティがチェックされ、ランナーのオペレーティング システムが決定されます。\n`if` 条件は GitHub Actions によって処理され、チェックによって `true` として解決されるステップのみ、ランナーに送信されます。 ここでは、チェックの 1 つが常に `true` となり、もう 1 つが `false` になるため、これらのステップの 1 つだけがランナーに送信されます。 ジョブがランナーに送信されると、ステップが実行され、`echo` コマンド内の環境変数が適切な構文を使用して補間されます (Windows の PowerShell `$env:NAME`、Linux および macOS の bash と sh `$NAME`)。 この例では、ステートメント `runs-on: macos-latest` では 2 番目のステップが実行されます。\n\n## ワークフロー内のステップとジョブの間で値を渡す\n\nジョブの 1 つのステップで値を生成する場合は、既存または新しい環境変数に値を割り当て、これを `GITHUB_ENV` 環境ファイルに書き込むことで、同じジョブの後続のステップで値を使用できます。 環境ファイルは、アクションによって直接使用することも、`run` キーワードを使用してワークフロー ファイル内のシェル コマンドから使用することもできます。 詳しくは、「[GitHub Actions のワークフロー コマンド](/ja/actions/using-workflows/workflow-commands-for-github-actions#setting-an-environment-variable)」をご覧ください。\n\nワークフロー内のあるジョブのステップから、そのワークフロー内の別のジョブのステップに値を渡す場合は、その値をジョブ出力として定義できます。 その後、別のジョブのステップからこのジョブ出力を参照できます。 詳しくは、「[GitHub Actions　のワークフロー構文](/ja/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idoutputs)」をご覧ください。\n\n## 次のステップ\n\n参考情報については、「[変数リファレンス](/ja/actions/reference/variables-reference)」をご覧ください。"}