管理 2GP パッケージ開発ワークフローを理解する
学習の目的
この単元を完了すると、次のことができるようになります。
- パッケージ開発ワークフローのステップを挙げる。
- 継続的インテグレーションスクリプトで自動化できるパッケージ開発のステップを挙げる。
- パッケージのベータバージョンについて説明する。
管理 2GP パッケージ開発の重要な側面
この単元では、管理 2GP パッケージ開発ワークフローの重要な側面について説明します。ここでの目標は、皆さんに管理 2GP ワークフローを理解していただくことです。ステップを実行してパッケージを作成する必要はありません。
各ステップの CLI コマンドなど、さらに詳しいワークフローを知りたい方は、『Second-Generation Managed Packaging Developer Guide (第二世代管理パッケージ開発者ガイド)』の「Workflow for Second-Generation Managed Packages (第二世代管理パッケージのワークフロー)」を参照してください。
ステップ 1: Salesforce DX プロジェクトを作成する
Salesforce CLI を使用して、Salesforce DX プロジェクトを作成します。ソース管理システムに、アプリケーションのメタデータを管理するためのリポジトリを設定します。
ステップ 2: アプリケーションを開発する
スクラッチ組織を作成し、そのスクラッチ組織を使用してパッケージ化するアプリケーションを開発します。VS Code 向け Salesforce 拡張機能は、パッケージ開発をやりやすくする優れたツールです。
パッケージに必要なすべてのメタデータコンポーネントを追加したら、各コンポーネントがパッケージの作成先であるプロジェクトディレクトリにあることを確認します。
ステップ 3: パッケージを設定して作成する
sfdx-project.json ファイルでパッケージの名前空間を指定し、パッケージに必要な設定と連動関係がプロジェクトファイルに含まれていることを確認します。
パッケージのメタデータに必要な機能や組織設定を指定する、スクラッチ組織定義ファイルまたは外部 .json ファイルを作成します。
次に、ローカルの Salesforce DX プロジェクトディレクトリから、sf package create という Salesforce CLI コマンドを使用してパッケージを作成します。このコマンドは、作成するパッケージごとに 1 回だけ実行します。この CLI コマンドは Dev Hub 組織に対して実行され、Dev Hub 組織が、作成したパッケージの所有者になります。
ステップ 4: パッケージバージョンを作成する
プロジェクトディレクトリから、sf package version create という Salesforce CLI コマンドを使用してパッケージバージョンを作成します。
パッケージバージョンを作成するときは、パッケージメタデータのスナップショットを取得して、不変でインストール可能なアーティファクトを作成します。パッケージを繰り返し処理しながら、このステップに戻って新しいパッケージバージョンを作成します。
ステップ 5: スクラッチ組織にパッケージバージョンをインストールしてテストする
新しいスクラッチ組織を作成してパッケージをテストします。このステップには新しいスクラッチ組織が必要です。ステップ 2 でパッケージの開発に使用したスクラッチ組織を再利用しないでください。
sf package install という CLI コマンドを使用して新しいクリーンなスクラッチ組織にパッケージをインストールし、スクラッチ組織を開いてアプリケーションを表示します。
ステップ 6: パッケージバージョンを昇格してリリースする
パッケージバージョンは、デフォルトで、昇格するまではベータバージョンです。ベータバージョンは本番組織にはインストールできません。これは、リリースするパッケージバージョンが本番で使用可能であることを保証するための予防策です。
パッケージバージョンの公開準備が完了したら、sf package version promote コマンドを使用して、パッケージバージョンをリリース済みに昇格します。
パッケージバージョンをリリース済みに昇格するには、Apex コードが 75% 以上のコードカバー率要件を満たしている必要があり、パッケージ内のすべての Apex トリガーにテストカバー率が必要です。
パッケージ開発ステップを自動化する
継続的インテグレーション (CI) スクリプトを作成して、パッケージ開発ステップを自動化します。たとえば、パッケージバージョンを作成する、スクラッチ組織を作成する、スクラッチ組織にパッケージバージョンをインストールする、Apex テストを実行する、さらにテスト結果をリリースマネージャーにメールで送信するスクリプトを作成できます。
アプリケーションの着想から AppExchange で公開するまでのジャーニーは、パッケージ開発で終了となるわけではありません。パッケージのセキュリティレビューを申請する方法と、AppExchange で公開する方法についてのリソースを参照してください。次の単元では、パッケージ化の登録者側のエクスペリエンスについて説明します。
リソース
-
Second-Generation Managed Packaging Developer Guide (第二世代管理パッケージ開発者ガイド): Workflow for Second-Generation Managed Packages (第二世代管理パッケージのワークフロー)
-
Second-Generation Managed Packaging Developer Guide (第二世代管理パッケージ開発者ガイド): Code Coverage for Second-Generation Managed Packages (第二世代管理パッケージのコードカバー率)
-
Second-Generation Managed Packaging Developer Guide (第二世代管理パッケージ開発者ガイド): Publishing Your App on AppExchange (AppExchange でのアプリケーションの公開)