自動ビルドのモデル バージョンの更新

プラットフォーム更新プログラム 6 では、自動ビルド定義の新しいタスクが、作成したビルドのバージョンを持つビルド出力のソース パッケージと配置可能パッケージのモデルを更新します。

プラットフォーム更新プログラム 6 以前に作成されたビルド定義はこのタスクを含めるために手動で更新する必要があります。 この記事で後述する既存のビルド定義の更新を参照してください。

バージョン番号

モデルは 1 つのパッケージにコンパイルされますが、すべてのモデルのメタデータ情報は Binary パッケージ内に保持されます。 この情報は、Microsoft Dynamics Lifecycle Services (LCS) またはクライアントから確認できます。

LCS で、次の手順に従い、環境にインストールされているモデルのバージョン番号を検索します。

  1. 環境の完全な詳細ページで、環境バージョン情報の下にある、詳細バージョン情報の表示リンクをクリックします。
  2. インストールされた更新ページの、コンピューター名フィールドで、Application Object Server (AOS) コンピューターを選択します。
  3. テーブルの一覧で、モデルのパブリッシャー名フィールドを探して、矢印アイコンをクリックして一覧を展開します。 その発行元からのすべてのモデルの完全な一覧が表示されます。 バージョン番号は、バージョン 列に表示されます。

クライアントで、次の手順に従い、環境にインストールされているモデルのバージョン番号を検索します。

  1. 環境の URL を開いて、サインインします。
  2. ダッシュ ボードが読み込まれた後、ページの右上にあるギヤ記号をクリックして、About をクリックします。
  3. 表示されるダイアログ ボックスで、読み込み済みパッケージとそのモデルを展開します。 モデルが存在するパッケージを検索し、矢印アイコンをクリックして一覧を展開します。 パッケージのモデル一覧とバージョン番号が表示されます。

すべてのバージョン番号は .NET アセンブリ形式です。 それらは、1.2.3.4 のようにドット (.) で区切られた 4 つの数字で構成されています。

モデル バージョン管理の目的

コードが更新されると、環境に配置できる新しいパッケージを作成するためにビルドが使用されます。 Microsoft Azure DevOps は、前回のビルド以降に各ビルドに含まれた変更を追跡します。 ビルドのバージョン番号が生成されるモデルに含まれている場合、その番号によって、特定の環境で使用できるコードの変更の徹底した追跡可能性が提供されます。 ビルド番号を見つけてから、Azure DevOps でそのビルドに含まれている変更を確認することができます。 異なる分岐でビルドを使用する、または夜間ビルド、ゲート チェックイン ビルドまたは配置ビルド用の異なるビルド定義を使用する顧客およびパートナーについては、ビルドごとに異なるバージョン スキームを持つことができます。 この方法は、展開可能なパッケージのモデルメタデータを区別し、元のビルド定義に戻します。

バージョン管理の設定

プラットフォーム更新プログラム 6 または新しい配置により作成されるビルド定義については、モデルにビルド バージョンを含めるためのタスクが自動的に追加され有効になります。 Azure DevOps の新しいビルド定義の既定のビルド番号は、年、月、日、およびその日のビルドの増分番号で構成されます。 Azure DevOps のビルド番号、および使用できるオプションの詳細については、Microsoft Visual Studio ドキュメント サイトのビルド定義オプション を参照してください。

自動ビルドは、構築されたモデルにビルド バージョン番号を適用します。

モデルが更新されるのを防ぐ

既定では、ビルド タスクは ISP レイヤーより上位にあるレイヤー内のモデルにのみバージョンを割り当てます。 したがって、モデルで提供されているバージョン番号を上書きしなくても、サード パーティ ベンダーのコード モデルを使用できます。 ただし、レイヤーに関係なく、ビルド中に他のモデルのバージョン番号が上書きされないようにすることもできます。 ビルド定義を編集するときは、変数 タブの ModelVersionExclusions 変数で、除外するモデル名のコンマ区切りの一覧を供給します。

下位レイヤーのモデルの更新

ISV または ISP レイヤーでソリューションを開発するサード パーティについては、それらのレイヤーでモデル バージョンを自動で設定するため、手動変更がビルド定義に対して加えられる必要があります。

  1. ビルド定義を編集します。 タスクタブで、モデル バージョンの設定タスクをクリックします。
  2. 引数フィールドで、既存の引数のリストの最後に -UpdateLayersAbove 7 のオプションを追加します。

既存のビルド定義の更新

プラットフォーム更新プログラム 6 以前に作成されたビルド定義では、新しいタスクをビルド定義に手動で追加する必要があります。

メモ

この機能は、ビルド仮想マシン (VM) がプラットフォーム更新プログラム 6 以降に更新された後にのみ、ビルド定義に追加できます。

  1. Azure DevOps で、ビルドおよびリリース ページのビルドにあるすべての定義タブでビルド定義を検索します。

  2. 省略記号 (...)、編集の順にクリックします。

    ビルド定義を編集します。

  3. タスクタブで、ページの下部にある+ タスクの追加をクリックします。

  4. ページの右側にあるタスクの追加ウィンドウのユーティリティ タブで、下にスクロールして PowerShell タスクを表示します。

  5. マウス ポインタをタスク上にポイントして、表示する追加ボタンをクリックします。

    PowerShell タスクを追加します。

  6. ページの左側にあるタスクの一覧で、追加される PowerShell スクリプト タスクをクリックして選択します。

  7. ページの右側で、表示名スクリプト パス、および引数プロパティを変更して必要な設定を反映します。

    モデル バージョンの設定タスクのプロパティを設定します。

  8. ページの左側にあるタスクの一覧で、モデル バージョンの設定タスクを、ビルドの準備ソリューションのビルド タスクの間にドラッグします。

    モデル バージョン設定タスクの順序を設定します。

  9. 変数タブで、変数のリストの下部にある+ 追加をクリックします。 最初の列で、名前の変数に ModelVersionExclusions と入力します。

  10. 新しいタスクを保存するには、保存をクリックします。