新規アプリケーションのデプロイ

新規アプリケーションをデプロイして、他のユーザーがそのアプリケーションを使用できるようにします。 この手順では、ローカル・ワークステーションからアプリケーションをデプロイする方法について説明します。

既存のアプリケーションにカスタマイズをデプロイするには、 既存のアプリケーションのカスタマイズのデプロイを参照してください。

注: このトピックは、 Order Hub の SaaS バージョンにのみ適用されます。

手順

  1. カスタマイズをデプロイするテナントごとに、 Customization folderCustomization client IDCustomization auth key の各ファイルを取得します。

    テナントが既にカスタマイズ用に構成されている場合は、管理者に連絡して Customization auth key を取得することが必要な場合があります。 詳しくは、 テナントのカスタマイズ・メニューの有効化を参照してください。

  2. Order Hubからフィーチャー JSON 値を取得します。
    1. Order Hubにログインします。
    2. カスタマイズをテストしたカスタマイズ・テナントに切り替えます。
    3. 「設定」 > 「カスタマイズ」に移動します。
    4. カスタム・アプリケーションを起動するカスタム・メニュー項目を選択します。
    5. カスタマイズをテストしたカスタマイズ・テナントにカスタマイズをデプロイする場合は、 「 IBMによってホスト」 を選択し、 「ローカル開発環境」をクリアします。 それ以外の場合、テナントは引き続きローカル・サーバーに接続します。
    6. 「相対 URL フィールドに、 app-config.json ファイルで定義したアプリケーション /< module-name>/< route-name> への相対パスを追加します。 スラッシュ (/) で開始します。 末尾にスラッシュを含める必要はありません。

      例えば、 /custom-app/custom-page1などです。

    7. 変更をすべて保存します。
    8. 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"
        }
  3. モジュールのルート・ディレクトリーにある features.json を開きます。
    例えば、 devtoolkit_docker/orderhub-code/custom-app/features.jsonなどです。 ファイルが存在しない場合は、ファイルを作成します。
  4. ステップ 2.h でコピーした JSON を配列エレメントとして features.json ファイルに貼り付けます。
    features.jsonの内容によっては、配列エレメントとして追加するために、コードを大括弧 [] で囲む必要がある場合があります。
  5. 各ルートで、カスタマイズをデプロイする環境ごとに、カスタマイズをビルドするためのビルド・ターゲットを追加します。
    1. 各経路の package.json ファイルを開きます。
      例えば、 devtoolkit_docker/orderhub-code/custom-app/packages/custom-page1/package.jsondevtoolkit_docker/orderhub-code/custom-app/packages/custom-page2/package.jsonなどです。
    2. カスタマイズをデプロイする環境用に、以下のビルド・ターゲット・コマンドを追加します。
      "build-<env>": "yarn build --deploy-url=<customization folder>/<module-name>/<route-name>/",
      <customization folder> の値は、ステップ 1で取得した値です。 各ターゲット環境には、異なるカスタマイズ・フォルダー値があります。
      例えば、 dev1qa3preprod、および 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/",
  6. ビルド・ターゲットを root-config package.json ファイルに追加します。
    1. devtoolkit_docker/orderhub-code/<custom-module-name>/<custom-short-name>-root-config/package.json ルート構成フォルダーを開きます。
    2. カスタマイズをデプロイする環境ごとに、以下のコードのようなビルド・ターゲットを追加します。
      "build-<env>": "yarn build --env baseHref=<customization folder>/<module-name>/ --env deploy-url=<customization folder>/<module-name>/<route-name>/",
      ここで、 < route-name> はデフォルトの経路です。
      例えば、 dev1qa3preprod、および 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/",
  7. 以下のコマンドを実行して、ターゲット環境ごとにカスタマイズ・パッケージを作成します。
    yarn build-<env>
    例:
    • dev1 環境用にビルドするには、以下のようにします。
      yarn build-dev1
    • qa3 環境用にビルドするには、以下のようにします。
      yarn build-qa3
  8. 以下のコマンドを実行して、カスタマイズ内容をターゲット環境に公開します。
    ターゲット環境は、 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 です。
    注: カスタム・メニューからの構成は、デプロイメントよりも優先されます。 デプロイ済みフィーチャーのカスタム・メニュー画面に変更を加えた場合は、メニュー項目を削除して、公開された内容に戻します。

次のタスク

カスタマイズを作成しています。 詳しくは、 カスタマイズのビルドを参照してください。