新規アプリケーションのデプロイ
新規アプリケーションをデプロイして、他のユーザーがそのアプリケーションを使用できるようにします。 この手順では、ローカル・ワークステーションからアプリケーションをデプロイする方法について説明します。
既存のアプリケーションにカスタマイズをデプロイするには、 既存のアプリケーションのカスタマイズのデプロイを参照してください。
注: このトピックは、 Order Hub の SaaS バージョンにのみ適用されます。
手順
- カスタマイズをデプロイするテナントごとに、 Customization folder、 Customization client
ID、 Customization auth key の各ファイルを取得します。
テナントが既にカスタマイズ用に構成されている場合は、管理者に連絡して Customization auth key を取得することが必要な場合があります。 詳しくは、 テナントのカスタマイズ・メニューの有効化を参照してください。
- Order Hubからフィーチャー JSON 値を取得します。
- Order Hubにログインします。
- カスタマイズをテストしたカスタマイズ・テナントに切り替えます。
- 「設定」 > 「カスタマイズ」に移動します。
- カスタム・アプリケーションを起動するカスタム・メニュー項目を選択します。
- カスタマイズをテストしたカスタマイズ・テナントにカスタマイズをデプロイする場合は、 「 IBMによってホスト」 を選択し、 「ローカル開発環境」をクリアします。 それ以外の場合、テナントは引き続きローカル・サーバーに接続します。
- 「相対 URL フィールドに、 app-config.json ファイルで定義したアプリケーション /< module-name>/< route-name> への相対パスを追加します。 スラッシュ (/) で開始します。 末尾にスラッシュを含める必要はありません。
例えば、
/custom-app/custom-page1などです。 - 変更をすべて保存します。
- UI の 「Feature json」 フィールドから JSON をコピーします。UI からの JSON は、以下のサンプルのようになります。
{ "featureId": "custom-[Id]", // must be unique "state": "ACTIVE", "sequence": 0, "title": "[Title to display for the custom application]", "iconName": "website-20", "link": "/[module-name]/[path to new route]", "path": "/[path to new route]", "hidden": true, "allowedRoles": [ //the roles that can access this customization "Fulfillment Manager", "Tenant Administrator" ], "description": [ { "locale": "en_US", "language": "en", "title": "Title to display for the custom feature" } ], "type": "IFRAME" }
- モジュールのルート・ディレクトリーにある features.json を開きます。例えば、 devtoolkit_docker/orderhub-code/custom-app/features.jsonなどです。 ファイルが存在しない場合は、ファイルを作成します。
- ステップ 2.h でコピーした JSON を配列エレメントとして features.json ファイルに貼り付けます。features.jsonの内容によっては、配列エレメントとして追加するために、コードを大括弧 [] で囲む必要がある場合があります。
- 各ルートで、カスタマイズをデプロイする環境ごとに、カスタマイズをビルドするためのビルド・ターゲットを追加します。
- 各経路の package.json ファイルを開きます。例えば、 devtoolkit_docker/orderhub-code/custom-app/packages/custom-page1/package.json や devtoolkit_docker/orderhub-code/custom-app/packages/custom-page2/package.jsonなどです。
- カスタマイズをデプロイする環境用に、以下のビルド・ターゲット・コマンドを追加します。
<customization folder> の値は、ステップ 1で取得した値です。 各ターゲット環境には、異なるカスタマイズ・フォルダー値があります。"build-<env>": "yarn build --deploy-url=<customization folder>/<module-name>/<route-name>/",例えば、 dev1、 qa3、 preprod、および prodの 4 つの環境にデプロイする場合は、以下のコードを追加します。"build-dev1": "yarn build --deploy-url=/buc-app-customization/T3R4fagafd45aadfaffasf/custom-app/custom-page1/", "build-qa3": "yarn build --deploy-url=/buc-app-customization/dbU2K1u4seqrRKwBZTyMp1lUJwqQkJ5A/custom-app/custom-page1/", "build-preprod": "yarn build --deploy-url=/buc-app-customization/zdD4uxaf8GRTbzMSg8zU2K/custom-app/custom-page1/", "build-prod": "yarn build --deploy-url=/buc-app-customization/balohTK3ang5GmXsRwOSeSidbQOKEw6N/custom-app/custom-page1/",
- 各経路の package.json ファイルを開きます。
- ビルド・ターゲットを root-config package.json ファイルに追加します。
- devtoolkit_docker/orderhub-code/<custom-module-name>/<custom-short-name>-root-config/package.json ルート構成フォルダーを開きます。
- カスタマイズをデプロイする環境ごとに、以下のコードのようなビルド・ターゲットを追加します。
ここで、 < route-name> はデフォルトの経路です。"build-<env>": "yarn build --env baseHref=<customization folder>/<module-name>/ --env deploy-url=<customization folder>/<module-name>/<route-name>/",例えば、 dev1、 qa3、 preprod、および prodの 4 つの環境にデプロイする場合は、以下のサンプルのようなコードを追加します。"build-dev1": "yarn build --env baseHref=/buc-app-customization/T3R4fagafd45aadfaffasf/custom-app --env deploy-url=/buc-app-customization/T3R4fagafd45aadfaffasf/custom-app/custom-page1/", "build-qa3": "yarn build --env baseHref=/buc-app-customization/dbU2K1u4seqrRKwBZTyMp1lUJwqQkJ5A/custom-app --env deploy-url=/buc-app-customization/dbU2K1u4seqrRKwBZTyMp1lUJwqQkJ5A/custom-app/custom-page1/", "build-preprod": "yarn build --env baseHref=/buc-app-customization/zdD4uxaf8GRTbzMSg8zU2K/custom-app --env deploy-url=/buc-app-customization/zdD4uxaf8GRTbzMSg8zU2K/custom-app/custom-page1/", "build-prod": "yarn build --env baseHref=/buc-app-customization/balohTK3ang5GmXsRwOSeSidbQOKEw6N/custom-app --env deploy-url=/buc-app-customization/balohTK3ang5GmXsRwOSeSidbQOKEw6N/custom-app/custom-page1/",
- 以下のコマンドを実行して、ターゲット環境ごとにカスタマイズ・パッケージを作成します。
例:yarn build-<env>- dev1 環境用にビルドするには、以下のようにします。
yarn build-dev1 - qa3 環境用にビルドするには、以下のようにします。
yarn build-qa3
- dev1 環境用にビルドするには、以下のようにします。
- 以下のコマンドを実行して、カスタマイズ内容をターゲット環境に公開します。ターゲット環境は、 client-id および client-secretによって決定されます。 各環境には、固有のクライアント ID と秘密鍵のペアがあります。
yarn orderhub-cli publish-customization --client-id=<clientId> --client-secret=<clientSecret> --package-name=<module-name>Required Parameters:
--client-id-カスタマイズ・クライアント ID。 ID とシークレットの取得方法について詳しくは、 テナントのカスタマイズ・メニューの有効化を参照してください。--client-secret-カスタマイズ・クライアント秘密鍵。--package-name-アップロードするファイルが含まれているビルド・ディレクトリーの下のモジュール・フォルダー。 この値は、custom-appなどのモジュール名に対応します。
Optional Parameters:
--orderhub-hostname-Order Hub API サーバーのホスト名。 デフォルトはapp.omsbusinessusercontrols.ibm.comです。--proxy-host-ビルド・マシンが orderhub-hostname に直接アクセスできない場合のプロキシーのホスト名とポート。--package-only-カスタマイズ資産 zip のみをビルドするかどうかを示します。 デフォルトはfalseです。--publish-only-事前作成されたカスタマイズ・パッケージをアップロードするかどうかを示します。 デフォルトはfalseです。 trueに設定した場合は、 -- package-name パラメーターを使用して、発行するパッケージも指定する必要があります。 -- package-nameには、<build-dir>/<package-name>.zipへのパスを指定します。 例:--publish-only=true --package-name=./dist/custom-app.zip--build-dir-コンパイル済みカスタマイズ資産を含むディレクトリー。 デフォルトはdistです。
注: カスタム・メニューからの構成は、デプロイメントよりも優先されます。 デプロイ済みフィーチャーのカスタム・メニュー画面に変更を加えた場合は、メニュー項目を削除して、公開された内容に戻します。