Flex Gateway新着情報
Governance新着情報
Monitoring API ManagerSalesforce Sandbox 組織を使用して、本番環境と同じ条件の Sandbox 環境でポータルをテストします。API Experience Hub で、API Portal の個別のデプロイメント環境を管理できます。複数の Salesforce Sandbox 組織に接続し、それらを切り替えることができます。現在の Salesforce 接続で使用可能な Sandbox 環境を選択することで、[Manage your API Portal (API Portal を管理)] ページから Salesforce 組織を管理します。
Sandbox 組織がすでにセットアップされていることを確認します。Sandbox の作成についての詳細は、Salesforce ドキュメントの 「Sandbox の作成」を参照してください。
[Manage your API Portal (API Portal を管理)] ページで、接続コントロールをクリックします。
オプションを選択します。
本番組織に接続するには、[Connected Salesforce Orgs (接続された Salesforce 組織)] ダイアログで [Connect production org (本番組織に接続)] をクリックします。
接続プロセスが再開され、本番組織に接続できるようになります。
接続された本番組織の別の Sandbox に切り替えるには、[Connected Salesforce Orgs (接続された Salesforce 組織)] ダイアログで [Switch to this org (この組織に切り替え)] をクリックします。
接続されていない Sandbox 組織に接続するには、[Connect (接続)] をクリックします。
接続プロセスが再開され、Sandbox 組織に接続できるようになります。
新しい Sandbox 組織に接続するには、[Connect new sandbox org (新規 Sandbox 組織に接続)] をクリックします。
接続プロセスが再開され、新しい Sandbox 組織に接続できるようになります。
別の Sandbox 組織に切り替えるには、[Switch to this org (この組織に切り替え)] をクリックします。
孤立した Sandbox は、本番組織を切断し、子 Sandbox 組織がまだ接続されている場合に発生します。本番組織の子ではない Sandbox に接続すると、その Sandbox は [Connected Salesforce Organizations (接続された Salesforce 組織)] ダイアログの [More sandbox orgs (その他の Sandbox 組織)] セクションに表示されます。この Sandbox に切り替えることもできます。関連付けられた本番組織に再接続すると、Sandbox は孤立として表示されなくなります。
Sandbox を更新すると、ソース組織からのメタデータが更新されます。本番組織に接続した後に Sandbox が更新された場合は、再接続してこの Sandbox に切り替えます。
本番組織に接続する前に Sandbox が更新された場合は、再接続せずにこの Sandbox に切り替えることができます。
Sandbox 組織を削除するには、Salesforce ドキュメントの 「Sandbox を削除する」を参照してください。
Sandbox 環境でポータルをテストし、本番の準備が整ったら、CI/CD パイプラインを使用して Salesforce メタデータのサブセットを本番にデプロイします。その後、Salesforce メタデータのサブセットを使用して本番インスタンスに接続してインストールを完了し、API の選定を開始します。
次の基本的な知識があることを確認します。
バージョン管理システム (VCS) (Git など)
CI/CD パイプラインの概念
Sandbox 環境で作成された API Portal
ポータルのスタイル設定とカスタマイズを Sandbox 組織から本番組織に移動します。
API Experience Hub メタデータを保存する Git リポジトリを作成します。
それをローカルマシンにコピーします。
./manifest
にマニフェスト package.xml
ファイルを作成します。次に例を示します。
<?xml version="1.0" encoding="UTF-8"?>
<Package xmlns="http://soap.sforce.com/2006/04/metadata">
<types>
<members>homeroCompanyLogo</members>
<members>homeroLoginBackground</members>
<members>minionHomeBanner</members>
<members>minionPageBanner</members>
<name>ContentAsset</name>
</types>
<types>
<members>API_Experience_Hub1_banner</members>
<members>API_Experience_Hub1_logo</members>
<name>StaticResource</name>
</types>
<types>
<members>AEH</members>
<members>AEH/API_Experience_Hub1_logo</members>
<name>Document</name>
</types>
<types>
<members>AEH</members>
<members>AEH/ChangedPasswordEmailTemplate</members>
<members>AEH/ForgotPasswordEmailTemplate</members>
<members>AEH/NewMemberWelcomeEmailTemplate</members>
<members>AEH/RejectedMemberEmailTemplate</members>
<name>EmailTemplate</name>
</types>
<types>
<members>AEHLetterhead</members>
<name>Letterhead</name>
</types>
<types>
<members>Anypoint</members>
<members>AnypointDevx</members>
<members>AnypointEu</members>
<members>AnypointQax</members>
<members>AnypointStgx</members>
<members>ExchangeAssetIcons</members>
<members>ExchangeAssetIconsDevx</members>
<members>ExchangeAssetIconsEu</members>
<members>ExchangeAssetIconsQax</members>
<members>ExchangeAssetIconsStgx</members>
<members>GStaticFonts</members>
<members>GoogleFonts</members>
<members>SegmentAPI</members>
<members>SegmentCDN</members>
<name>CspTrustedSite</name>
</types>
<types>
<members>Anypoint</members>
<members>AnypointDevx</members>
<members>AnypointEu</members>
<members>AnypointQax</members>
<members>AnypointStgx</members>
<members>ExchangeAssetIcons</members>
<members>ExchangeAssetIconsDevx</members>
<members>ExchangeAssetIconsEu</members>
<members>ExchangeAssetIconsQax</members>
<members>ExchangeAssetIconsStgx</members>
<members>SegmentAPI</members>
<name>RemoteSiteSetting</name>
</types>
<!--
<types>
<members>ExperienceBundle</members>
<members>Communities</members>
<name>Settings</name>
</types>
-->
<types>
<members>API_Experience_Hub_Manage_Networks</members>
<name>PermissionSet</name>
</types>
<types>
<members>API Experience Hub</members>
<name>Network</name>
</types>
<types>
<members>HTTP_API_Audience</members>
<name>Audience</name>
</types>
<types>
<members>API_Experience_Hub</members>
<name>CustomSite</name>
</types>
<types>
<members>API_Experience_Hub1</members>
<name>ExperienceBundle</name>
</types>
<types>
<members>AEH_Default_Navigation</members>
<members>AEH_Default_User_Navigation</members>
<name>NavigationMenu</name>
</types>
<types>
<members>cbAPI_Experience_Hub</members>
<name>NetworkBranding</name>
</types>
<!--
<types>
<members>API Experience Hub Member User</members>
<name>Profile</name>
</types>
-->
<version>60.0</version>
</Package>
VCS で開発ブランチを作成します。
Salesforce Sandbox 組織から作成されたマニフェストを使用して、メタデータをダウンロードします。
Salesforce CLI コマンドを使用して、Salesforce Sandbox 組織からメタデータを取得します。
Salesforce Sandbox 組織にログインします。
sf auth web login --instance-url=https://<SANBOX-INSTANCE_URL> --alias sandboxOrg
Sandbox 組織からメタデータを取得する前に、manifest/package.xml
ファイルを編集します。
Sandbox 組織は Salesforce 本番組織のコピーであるため、複数の商品からのメタデータを含めることができます。API Experience Hub は、前のステップで Git リポジトリを作成したときに作成された manifest/package.xml
ファイルで指定された Sandbox 組織のサブセットです。
ポータルにブランド画像が含まれている場合は、その画像を manifest/package.xml
の ContentAsset
セクションに追加します。次に例を示します。
... <types> <members>homeroCompanyLogo</members> <members>homeroLoginBackground</members> <members>minionHomeBanner</members> <members>minionPageBanner</members> <name>ContentAsset</name> </types> ...
メタデータを確認して、次のコマンドを実行して取得します。
sf project retrieve start --manifest ./manifest/package.xml --target-org sandboxOrg
メタデータを確認して、すべてのメタデータの変更を Git リポジトリにコミットします。または、一部のメタデータが欠落しているか不要な場合は、manifest/package.xml
を変更してこのプロセスを繰り返します。
API Experience Hub ポータルを Sandbox 組織から本番組織に移動します。
本番組織にログインします。
sf auth web login --instance-url=https://<ENTERPRISE-INSTANCE_URL> --alias productionOrg
API Experience Hub 管理パッケージを本番組織にインストールする前に、Sandbox 組織にインストールされている SubscriberPackageVersionId
項目から管理パッケージバージョン ID を取得します。
次のコマンドを実行して、管理パッケージバージョン ID を取得します。API Experience Hub 管理パッケージの SubscriberPackageVersionId
項目は、04t
で始まります。
sf package installed list --target-org sandboxOrg --json
API Experience Hub 管理パッケージを本番組織にインストールします。
sf package install --package 04t... --target-org productionOrg --no-prompt --wait 30
Jenkins または他の CI/CD ツールを使用して、API Experience Hub メタデータを本番組織にデプロイします。次に例を示します。
sf project deploy start --source-dir force-app --target-org productionOrg
すべての設定が本番組織にデプロイされ、この組織を API Experience Hub に接続する準備が整いました。
本番組織で API Experience Hub を設定します。
Anypoint Platform に移動し、ユーザー名とパスワードを入力して、[Sign in (サインイン)] をクリックします。
Anypoint Platform から [API Experience Hub] を選択します。
Salesforce 本番組織 (Enterprise 組織) を接続します。
[Use existing portal (既存のポータルを使用)] をクリックして、既存のポータルを再利用します。
[API management (API 管理)] ページで、アセットをポータルに追加します。
[Preview and publish your portal (ポータルをプレビューしてパブリッシュ)] をクリックして、ポータルをプレビューし、[Publish (パブリッシュ)] をクリックします。