異なる Dev Hub へのロック解除済みパッケージの転送
異なる Dev Hub へのパッケージ転送要求
最初に Salesforce カスタマーサポートでケースを登録し、次の詳細を指定します。
件名: 異なる Dev Hub へのロック解除済みパッケージ転送
説明:
説明で、次の情報を入力します。
- 転送するパッケージの登録者パッケージ ID。この ID は 033 で始まります。
パッケージの 033 ID を確認するには、転送元 Dev Hub 組織で -–verbose フラグを指定して sf package list コマンドを実行します。
- 転送元組織の Dev Hub 組織 ID。
- 転送先組織の Dev Hub 組織 ID。転送先の Dev Hub 組織に、Developer Edition 組織やトライアル組織を指定することはできません。
- (省略可能) 転送されるパッケージの名前空間。パッケージが名前空間のないロック解除済みパッケージの場合は、このステップをスキップします。
- 名前空間を転送先の Dev Hub にリンクし、Apex エラー通知ユーザーをクリアするなど、Prepare to Transfer Your Package セクションに記載されている手順を参照および完了したことを確認します。
複数のパッケージを転送する場合は、パッケージごとに別々のケースを申請します。
ケースのレビューと承認が完了すると、パッケージ転送の開始時間を決めるため Salesforce カスタマーサポートの担当者から連絡が届きます。
パッケージを転送するための準備
ここでは、スムーズにパッケージを転送できるようにする方法について説明します。
- 転送するパッケージに名前空間がある場合、その名前空間の転送元 Dev Hub へのリンクを維持します。パッケージを転送する前に、名前空間を転送元と転送先の両方の Dev Hub 組織にリンクしておく必要があります。
- パッケージ転送プロセスを開始する前に、すべての転送アップグレードまたはパッケージバージョン作成プロセスを完了しておきます。
- 不要になったパッケージバージョンを削除します。
- パッケージのエラー通知ユーザーが指定されている場合、sf package update --error-notification-username= コマンドを使用してクリアします。所有する Dev Hub 組織にパッケージを転送する場合、パッケージ転送完了後にエラー通知ユーザーを転送先の Dev Hub ユーザーに設定できます。注意: --error-notification-username= の指定で等号の後に値を入れない場合、以前に設定されていたユーザー名はすべてクリアされます。
パッケージ転送プロセス時
転送アップグレードまたはパッケージバージョン作成プロセスは必ず、パッケージ転送プロセスの開始前に完了する必要があります。Salesforce カスタマーサポートは、パッケージ転送日についてのアラートを通知します。
パッケージ転送完了後
sf package list を実行し、パッケージが Dev Hub に関連付けられていないことを確認します。
パッケージ ID に対するパッケージ転送の影響
| ID 種別 | ID の先頭 | パッケージ転送完了後 |
|---|---|---|
| 登録者パッケージ ID | 033 | この ID は同じままです。 |
| 登録者パッケージバージョン ID | 04t | この ID は同じままです。 |
| パッケージ ID | 0Ho | 転送パッケージは、新しい一意のパッケージ ID を受け取ります。 |
パッケージプロジェクトファイルの更新
Dev Hub で新規のパッケージまたはパッケージバージョンを作成する前に、sfdx-project.json ファイルを更新し、転送パッケージへの参照をパッケージディレクトリとパッケージ別名のセクションからすべて削除します。
転送するパッケージに連動するパッケージが Dev Hub にある場合は、sfdx-project.json ファイルのパッケージ連動関係セクションを更新し、連動する転送パッケージの 04t ID を明示的に指定します。
たとえば、pkgA を別の Dev Hub に転送し、sfdx-project.json ファイルに次のようなパッケージ連動関係が記述されている場合を考えます。
1"dependencies": [
2 {
3 "package": "pkgA"
4 "versionNumber": "2.0.0.LATEST"
5 }
6]連動関係を更新して pkgA の 04t ID を指定します。
1"dependencies": [
2 {
3 "package": "04tB0000000UzH5IAK"
4 }
5]または、パッケージの別名を使用して連動関係を指定します。
1"dependencies": [
2 {
3 "package": "pkgA2.0.0-1"
4 }
5"packageAliases": {
6 "pkgA2.0.0-1": "04tB0000000UzH5IAK"
7}
8]転送されるパッケージ履歴
パッケージが転送されるとき、すべてのパッケージのバージョンと、すべての以前のバージョンが転送されます。アップグレードパスは影響を受けません。
所有する 2 つの Dev Hub 組織間でパッケージが転送されたのか、それとも所有しない外部の Dev Hub にパッケージが転送されたのかにかかわらず、パッケージバージョン履歴が転送されます。
次のものが転送されます。
- パッケージの名前、名前空間、種別、および ID。例外が 1 つあり、転送パッケージでは新規の 0Ho ID が取得されます。
- パッケージバージョン情報。これには、sf package version list または sf package version report コマンドを実行すると通常表示されるすべての情報が含まれます。
次のものは転送されません。
- 転送アップグレード履歴。
- パッケージバージョン作成要求。
- Apex や他のタイプのエラー通知を受け取る Dev Hub ユーザーのユーザー名。このユーザー (省略可能) は、--error-notification-username を使用して設定できます。