パッケージ化組織の作成
学習の目的
- 管理パッケージに必要な要素を説明する。
- パッケージ化組織を作成する。
- CumulusCI をパッケージ化組織に接続する。
組織を作成する
重要: Trailhead Playground をパッケージ化組織として使用しないでください。この単元では、パッケージ化に使用する開発者組織にサインアップします。
パッケージ化組織は、管理パッケージ名前空間を使用して設定された Developer Edition 組織です。パッケージの新しいバージョンはパッケージ化組織で作成されます。各管理パッケージには、パッケージ化組織が 1 つだけあります。
最初のステップは、新しい Developer Edition 組織の作成です。Developer Edition フォームに入力して組織を作成してください。
組織が作成されたら、確認のメールをクリックし、ユーザーのパスワードを設定してください。
パッケージ化組織を設定する
CumulusCI を使用して Food Bank 管理パッケージをリリースする前に、Tasha はパッケージを作成し、そのパッケージ用の名前空間を申請する必要があります。管理パッケージ名前空間はグローバルに一意になるため、パッケージのコンポーネント名が他のカスタマイズや別のパッケージと競合しないようにしてください。
Tasha と一緒に手順を実行しましょう。
パッケージ化組織で、新しいパッケージを作成します。
- をクリックし、[設定] に移動しします。
- [クイック検索] を使用して「パッケージマネージャー」を検索します。
- [パッケージマネージャー] の [パッケージ] セクションで [新規] ボタンをクリックして、新しいパッケージを作成します。
- フォームに次の情報を入力します。
-
パッケージ名:
Food-Bank
注意: CumulusCI でコンポーネントが正しいパッケージに追加されるには、パッケージ名がcumulusci.yml
ファイルの名前と同じであることが重要です。これは、project
の下のpackage
のname
で確認できます。CumulusCI でコミュニティプロジェクトを開始するときに、この名前をFood-Bank
に設定します。 - 言語: 言語を選択
-
カスタムリンクの設定:
--なし--
のまま - Apex エラーを通知: 空白のまま
- 説明: 新しいパッケージに関する情報を追加
-
パッケージ名:
- [保存] をクリックします。
次に、管理パッケージに名前空間を割り当てます。
- [設定] の [パッケージマネージャー] ページの [開発者設定] パネルで、[編集] をクリックします。
- [続行] をクリックします。
- 名前空間プレフィックスを選択します。次の重要な留意事項を確認してください。
- 名前空間は Salesforce エコシステム全体を通して一度しか使用できません。このプロジェクトでは、実際のプロジェクトには使用されないだろう長い意味のない名前を選んでください。
- 名前空間プレフィックスには 15 文字までの英数字を使用できます。申請するプレフィックスを入力し、[使用可能か調べる] ボタンをクリックして使用できるかどうかを確認してください。
- 後で参照するためにプレフィックスをメモしておいてください。
- 有効なプレフィックスを取得したら、[管理するパッケージ] ドロップダウンでパッケージを選択します。
- [選択内容の確認] をクリックし、[保存] をクリックします。
このパッケージをパッケージ化組織にリリースするには、CumulusCI にパッケージの名前と名前空間を指定する必要があります。これを設定する手順は次のとおりです。
- GitHub Desktop で [Repository (リポジトリ)] → [Open in Visual Studio Code (Visual Studio Code で開く)] を選択して、VS Code でリポジトリを開きます。
- サイドバーで
cumulusci.yml
ファイルをクリックして開きます。 - ファイルの次の部分を見つけます。
project: name: Food-Bank package: name: Food-Bank
- パッケージ名前空間を指定する行を追加します。
project: name: Food-Bank package: name: Food-Bank namespace: myawesomenamespace
パッケージの name
が、先ほどの [パッケージ名] に入力した名前と同じであることを再度確認してください。Command+s (macOS) または Ctrl+s (Windows) を押して変更を cumulusci.yml
ファイルに保存します。
変更が GitHub にプッシュされることを確認しましょう。これは次の単元のハンズオン Challenge で必要です。
GitHub Desktop でリポジトリを開き、次の手順を実行します。
- 新しい機能ブランチを作成して変更を保存します。GitHub Desktop で [Current Branch (現在のブランチ)] → [New Branch (新規ブランチ)] を選択し、ブランチに
feature/set-namespace
と名前を付けます。新しいブランチに変更が適用されるように選択します。 - GitHub Desktop の
feature/set-namespace
機能ブランチで、Set package namespace
(パッケージ名前空間の設定) メッセージにコミットします。 - コミットが完了した後に情報ペインで [Publish branch (ブランチを公開)] をクリックして機能ブランチを GitHub に公開します。
- 公開後に情報ペインが更新されたら、[Create Pull Request (プルリクエストを作成)] をクリックしてこの変更の新しいプルリクエストを作成します。
- GitHub Desktop が自動的にブラウザーで [Open a pull request (プルリクエストを開く)] 画面を表示します。
- [Changes (変更)] ヘッダーの下に、変更の内容を説明する行を追加します。
- [Create Pull Request (プルリクエストを作成)] をクリックします。
- 次の画面で [Merge pull request (プルリクエストをマージ)] をクリックします。[Confirm merge (マージを確認)] をクリックします。
- [Delete branch (ブランチを削除)] をクリックして、マージしたブランチを削除します。
組織を CumulusCI に接続する
CumulusCI は、既存の Salesforce 組織とプロジェクトの紐付けをサポートしています。このプロセスを開始する手順は次のとおりです。
- GitHub Desktop で [Repository (リポジトリ)] → [Open in Visual Studio Code (Visual Studio Code で開く)] を選択して、VS Code でリポジトリを開きます。
- ターミナルウィンドウで、
cci org connect packaging
と入力します。
このコマンドは Salesforce ログインページをブラウザーで開きます。パッケージ化組織用に作成した組織のユーザー名とパスワードを使用してログインします。ログインしたら、組織へのアクセスを許可するように求められます。[許可] をクリックすると、ブラウザーに「Congratulations! Your authentication succeeded.」 (おめでとうございます! 認証が成功しました。) と表示されます。
VS Code ターミナルに戻り cci org list
コマンドを入力して組織が接続されていることを確認してください。
次のようなテーブルが表示されます。
┌Connected Orgs───────┬───────────────────────┬──────────┐ │ Name │ Default │ Username │Expires │ ├──────────┼──────────┼───────────────────────┼──────────┤ │packaging │ │ tasha@foodbankdev.org │Persistent│ └──────────┴──────────┴───────────────────────┴──────────┘
また、ターミナルで cci org browser packaging
コマンドを入力すれば、いつでもパッケージ化組織をブラウザーで直接開くことができます。