変数レベル

プロジェクト変数は、プロジェクト内のすべての環境に適用されます。 環境変数は、特定の環境またはブランチに適用されます。 環境は、親環境から変数の定義を 継承 します。

継承された値を上書きするには、環境用に変数を特別に定義します。 例えば、開発用の変数を設定するには、統合環境の .magento.env.yaml ファイルで変数値を定義します。 統合環境から分岐するすべての環境は、これらの値を継承します。 .magento.env.yaml ファイルを使用した環境の設定について詳しくは、 デプロイメント設定を参照してください。

CLI

Cloud CLI を使用して変数を設定するには:

  • プロジェクト固有の変数 - プロジェクトの すべて 環境に同じ値を設定します。 これらの変数は、ビルド時と実行時にすべての環境で使用できます。

    code language-bash
    magento-cloud variable:create --level project --name <variable-name> --value <variable-value>
    
  • 環境固有の変数 - 固有の 環境に一意の値を設定します。 これらの変数は、実行時に使用でき、子環境に継承されます。 -e オプションを使用して、コマンドで環境を指定します。

    code language-bash
    magento-cloud variable:create --level environment --name <variable-name> --value <variable-value>
    

プロジェクト固有の変数を設定した後、変更を有効にするには、リモート環境を手動で再デプロイする必要があります。 新しいコミットをプッシュして、再デプロイメントをトリガーにします。

コンソール

Cloud Console を使用して変数を設定するには:

  1. Cloud Console ​で、プロジェクトナビゲーションの右側にある「設定」アイコンをクリックします。

    プロジェクトの設定 {width="36"}

  2. プロジェクトレベルの変数を設定するには、「プロジェクト設定変数 をクリックします。

    プロジェクト変数

  3. 環境レベルの変数を設定するには、「環境」リストで環境を選択し、「Variables」タブをクリックします。

    「環境変数」タブ

  4. Create variable」をクリックします。

  5. 変数の名前と値を指定します。 次のオプションから選択します。

    • 実行時に使用可能
    • ビルド時に使用可能
    • JSON 値
    • 機密変数(コンソールおよび CLI 応答では非表示の値)
    • 継承可能にする(子環境は環境レベルの変数を継承できます)
  6. Create variable」をクリックします。

note caution
CAUTION
Cloud Console で環境固有の変数を設定すると、環境が自動的に再デプロイされます。

可視性

--visible-<build|runtime> コマンドを使用して、ビルドまたは実行時の変数の表示を制限できます。 また、継承と機密性を設定するオプションもあります。

変数が表示または継承されないようにするには、次のオプションを使用します。

  • --inheritable false – 子環境の継承を使用不可にします。 これは、master ブランチに実稼動専用の値を設定し、他のすべての環境が同じ名前のプロジェクトレベルの変数を使用できるようにする場合に便利です。
  • --sensitive true - Cloud Console で変数を 読み取り不可 としてマークします。 ユーザーインターフェイスでは変数を表示できませんが、他の変数と同様に、アプリケーションコンテナから変数を表示できます。

以下は、変数が表示または継承されるのを防ぐ具体的な例を示しています。 CLI では、以下のオプションのみを指定できます。 このケースは、使用可能なすべての環境変数に関係しているわけではありません。

magento-cloud variable:create --name <variable-name> --value <variable-value> --inheritable false --sensitive true

変数のレベルと値の検証

既存の変数のリストは、Cloud CLI を使用して表示できます。

magento-cloud variables
Variables on the project Project-Name (<project-id>), environment <environment-name>:
+----------------------------+-------------+-------------------------------------------+
| Name                       | Level       | Value                                     |
+----------------------------+-------------+-------------------------------------------+
| env:COMPOSER_AUTH          | project     | {                                         |
|                            |             |    "http-basic": {                        |
|                            |             |       "repo.magento.com": {               |
|                            |             |       "username":                         |
|                            |             | "<public-key>",                           |
|                            |             |       "password":                         |
|                            |             | "<private-key>"                           |
|                            |             |     }                                     |
|                            |             |   }                                       |
|                            |             | }                                         |
| ADMIN_EMAIL                | project     | admin@123.com                             |
| ADMIN_EMAIL                | environment | admin@123.com                             |
| ADMIN_PASSWORD             | environment | password                                  |
| ADMIN_URL                  | environment | admin123                                  |
| ADMIN_USERNAME             | environment | admin                                     |
| php:newrelic.license       | environment | xxxx71fb030366182117f955a22e4baf8exxxxxx  |
+----------------------------+-------------+-------------------------------------------+
recommendation-more-help
05f2f56e-ac5d-4931-8cdb-764e60e16f26