変数ライブラリ CI/CD

リリースパイプラインの各段階にわたる設定管理やGitでの値を保存するために、Fabricの変数ライブラリを活用してください。 この記事では、ライフサイクル管理と継続的インテグレーションと継続的デリバリー (CI/CD) のコンテキストで変数ライブラリを使用する方法について説明します。

変数ライブラリと展開パイプライン

変数ライブラリとその値をデプロイ パイプラインにデプロイして、ステージ間で変数値を管理できます。

デプロイ パイプラインのスクリーンショット。

この重要な情報を覚えておいてください。

  • 変数ライブラリ内のすべての 値セット は、デプロイ パイプラインのすべてのステージで使用できますが、1 つのステージでアクティブなセットは 1 つだけです。

  • 各ステージに 設定されたアクティブな値 は、個別に選択されます。 いつでも変更できます。

  • 変数ライブラリが空の段階にデプロイされると、デプロイによって Default 値セットがアクティブなワークスペースが作成されます。 ターゲット環境が別の値セットを必要とする場合は、ターゲットワークスペース内の変数ライブラリを開き、必要な値セットをアクティブに設定し、依存項目やデプロイメントプランアクションを実行する前に変数ライブラリを保存してください。

    デプロイ パイプラインで設定されたアクティブな値を既定値から別の値に変更するコマンドのスクリーンショット。

  • デプロイは、各ステージで 設定された選択されたアクティブな値 には影響しませんが、変数ライブラリ内の値自体を更新できます。 ワークスペース内のコンシューマー項目 (パイプラインなど) は、アクティブな値セットから正しい値を自動的に受け取ります。

デプロイ パイプラインの 1 つのステージで変数または値セットに対する次の操作を実行すると、変数ライブラリが異なるステージの同じ項目と比較して異なるフォーム ソースとして反映されます。

  • 変数の追加、削除、または編集
  • 追加または削除された値セット
  • 変数の名前
  • 変数の順序

2 つのステージで異なる変数ライブラリと比較されたデプロイ パイプラインのスクリーンショット。

アクティブな値セットを簡単に変更しても、比較時に 異なるフォーム ソース として登録されません。 アクティブな値セットは項目構成の一部ですが、定義には含まれません。 そのため、デプロイ パイプラインの比較には表示されず、各デプロイでは上書きされません。

デプロイメント計画で変数ライブラリの値を使用してください

展開計画アクションでは、リテラルパラメータ値の代わりに変数ライブラリ参照を使用できます。 デプロイを実行すると、Fabricはターゲットワークスペース内のVariableライブラリのアクティブ値セットを使って参照を解決します。 これにより、同じアクションで各展開段階に固有の値を使用できるようになります。

デプロイ前に、ターゲットワークスペースに参照された変数ライブラリと変数が含まれており、正しい値セットが有効であることを確認しましょう。 デプロイしてもアクティブバリューセットは変わりません。 デプロイメントがターゲットワークスペースを作成した場合、 Defaultは 別の値セットを選択して保存するまで有効です。

デプロイメントプランアクションでは、パラメータの価値として変数参照を使用できます。 詳細については、「 パラメータをアクションに渡す」をご覧ください。

もしFabricが参照を解決できない場合は、どの参照部分が失敗したかを報告します。 解決手順と修正については 、変数参照解像度の失敗を参照してください。

変数ライブラリと Git 統合

他の Fabric 項目と同様に、変数ライブラリを Git と統合してソース管理を行うことができます。 変数ライブラリ項目は、Fabric と Git プロバイダーの間で維持および同期できるフォルダーとして格納されます。

項目のアクセス許可は、Git の更新とコミット中に確認されます。

アクティブな値セットの選択はワークスペースの状態であり、Gitには保存されません。 初期同期で変数ライブラリが新しいワークスペースにインポートされると、 デフォルトが 有効です。 ターゲット環境が別の値セットを必要とする場合は、新しいワークスペースでインポートした変数ライブラリを開き、必要な値セットをアクティブに設定し、依存項目やデプロイメントプランアクションを実行する前に変数ライブラリを保存してください。

変数ライブラリ項目のスキーマは、次の 4 つの部分を含む JSON オブジェクトです。

  • 値セットのフォルダー
  • 設定
  • Platform.json、自動的に生成されたファイル
  • 変数

変数ライブラリ ファイルが含まれる Git フォルダーのスクリーンショット。

値セット

変数ライブラリ フォルダーには、 valueSetsという名前のサブフォルダーが含まれています。 このフォルダーには、各値セットの JSON ファイルが含まれています。 この JSON ファイルには、その値セット内の 既定値以外 の変数値のみが含まれます。

値セット・ファイルの詳細については、 値セットおよび値セット の 例を参照してください。

このファイルにない変数の値は、既定値セットから取得されます。

設定

settings.json ファイルには、変数ライブラリの設定が含まれています。

詳細については、 変数 と settings.json の例を参照してください。

変数

variables.json ファイルには、変数名とその既定値が含まれています。

詳細については、 variables.json の例を参照してください。

考慮事項と制限事項

変数の制限事項

  • 次の両方の要件を満たしている限り、 最大 1,000 個の変数と 最大 1,000 個の値セットを使用できます。

    • 代替値セット内のセルの合計数が 10,000 未満です。
    • 項目のサイズが 1 MB を超えていない。

    これらの要件は、変更を保存するときに検証されます。

  • メモ フィールドの文字数は最大 2,048 文字です。

  • 値セットの説明フィールドには、最大 2,048 文字を指定できます。

代替値セットの制限事項

  • 変数ライブラリの代替値セットは、追加した順序で表示されます。 現時点では、UI で並べ替えることはできません。 順序を変更するには、JSON ファイルを直接編集します。
  • 各値セットの名前は、変数ライブラリ内で一意である必要があります。
  • 変数名は、変数ライブラリ内で一意である必要があります。 異なるアイテム内にある場合は、ワークスペース内に同じ名前の 2 つの変数を含めることができます。
  • 変数ライブラリには、常に 1 つのアクティブな値が一度に 1 つしか設定されていません。 アクティブな間は、値セットを削除できません。 削除するには、まず別の値セットをアクティブに構成します。 デプロイ パイプラインのステージごとに異なるアクティブな値を設定できます。