この文章は Salesforce 機械翻訳システムを使用して翻訳されました。詳細はこちらをご参照ください。
英語に切り替える

DX プロジェクトファイルでのパッケージの上位の指定

パッケージバージョンの作成時には、sfdx-project.json ファイルで上位パッケージを指定します。指定する上位パッケージは、そのパッケージの最も高い昇格済みパッケージバージョン番号である必要があります。パッケージバージョンを作成するたびに上位バージョン番号を更新することも、キーワードを使用することもできます。

ここでは、上位パッケージを設定する 3 種類の方法を説明します。

HIGHEST キーワードを使用する (推奨)

sfdx-project.json ファイルの ancestorId 属性または ancestorVersion 属性のいずれかで、HIGHEST キーワードを使用します。このキーワードを使用すると、上位パッケージは自動的に最も高い昇格済みパッケージバージョン番号に設定されます。

1"packageDirectories": [
2{
3"path": "util",
4"package": "Expense Manager - Util",
5"versionNumber": "4.7.0.NEXT",
6"ancestorVersion": HIGHEST
7},

このキーワードを使用することで、線形バージョン管理を中断してもかまわなくなるまで、線形バージョン管理を使用するように上位パッケージを簡単に設定できます。

上位バージョン属性を使用する

sfdx-project.json ファイルの ancestorVersion 属性をパッケージバージョンの major.minor.patch 番号に設定します。この方法では、メジャー、マイナー、パッチの値が変更されるたびに、上位バージョン番号を更新する必要があります。

1"packageDirectories": [
2{
3"path": "util",
4"package": "Expense Manager - Util",
5"versionNumber": "4.7.0.NEXT",
6"ancestorVersion": “4.6.0”
7},

上位 ID 属性を使用する

sfdx-project.json ファイルの ancestorId 属性を 04t ID またはパッケージバージョンの別名のいずれかに設定します。この方法では、パッケージバージョンを作成するたびに、上位バージョン番号を更新する必要があります。

1"packageDirectories": [
2{
3"path": "util",
4"package": "Expense Manager - Util",
5"versionNumber": "4.7.0.NEXT",
6"ancestorId": "04tB0000000cWwnIAE"
7},
1"packageDirectories": [
2{
3"path": "util",
4"package": "Expense Manager - Util",
5"versionNumber": "4.7.0.NEXT",
6"ancestorId": "expense-manager@4.6.0.1"
7},

「管理-リリース済み」状態に昇格済みのパッケージバージョンのみを上位パッケージとしてリストできます。

メモ

線形上位パッケージの動作を上書きする

線形のパッケージバージョン管理を中断するには、パッケージバージョンの作成時に、最も高い昇格済みパッケージバージョンではない上位パッケージを指定して、Salesforce CLI パラメータ --skipancestorcheck を使用します。

1sfdx force:package:version:create --package "Expenser App" --skipancestorcheck

CLI パラメータは、最も高い昇格済みパッケージバージョンではないパッケージバージョンの指定が意図的に選択されていることを示します。

sfdx-project.json ファイルの ancestorId 属性または ancestryVersion 属性のいずれかで NONE というキーワードを使用すると、上位パッケージを指定しないように選択できます。

1"packageDirectories": [
2{
3"path": "util",
4"package": "Expense Manager - Util",
5"versionNumber": "4.7.0.NEXT",
6"ancestorVersion": NONE
7},

上位パッケージによりパッケージのアップグレードパスが決まるため、既存のユーザは上位パッケージを指定しないで作成されたパッケージバージョンにアップグレードすることはできません。作成するパッケージバージョンを昇格する予定がない場合は、NONE を使用してください。

以前のパッケージバージョンをすでに昇格していて、同じパッケージに関連付けられた新しいパッケージバージョンで上位パッケージを NONE に設定する場合は、そのパッケージバージョンの作成時に --skipancestorcheck を含めてください。

上位パッケージに関する留意点

  • 上位パッケージによって、既存のパッケージをより新しいパッケージバージョンにアップグレードできるかが決まります。線形バージョン管理を中断する場合、または顧客の組織にインストールされているパッケージバージョンを破棄する予定がある場合は、既存の顧客にどのような影響が及ぶか、またアップグレードパスを既存の顧客が利用できるかどうかを検討してください。
  • パッケージバージョンを破棄する場合は、Salesforce CLI コマンド force:package:version:delete を使用して、そのバージョンを削除します。

    パッケージバージョンを削除できない場合は、破棄されたパッケージバージョンが誤ってインストールされないようにパッケージバージョンのインストールキーを更新します。インストールキーを更新するには、force:package:version:update を使用します。