作成次世代オーダーハブモノレポを使用するアプリケーション
Angular モノレポ戦略では、Lerna を使用して複数のアプリケーションを単一のリポジトリでホストします。 この設定により、コードを再利用し、コードを複製したり、ライブラリ リポジトリやルートごとの小さなビルドを作成したりすることなくアプリケーション間で共有する手段が提供され、時間を節約できます。 モノレポ戦略は誰もが採用しているIBM®提供された注文ハブリポジトリ。 この戦略は、既存のルートをカスタマイズできるクリーンなカスタマイズアプローチを提供します。 IBM変更されていないルートをすべて引き継ぐことなくリポジトリに保存します。
このタスクについて
このスキーマは、Lerna と Single-Spa を使用して、新しいアプリケーション用の複数のプロジェクトを保持する新しいモノレポを作成します。
手順
npm uninstall -g @buc/schematics
npm install -g ./lib/buc/schematics/schematics-v3latest.tgzAngular v18 の場合は、以下のコマンドを実行する。npm uninstall -g @buc/schematics
npm install -g ./lib/buc/schematics/schematics-v4latest.tgz{
"name": "custom-monorepo",
"devServerConfig": {
"port": 9300,
"contextRoot": "/custom-monorepo"
},
"prodServerConfig": {
"hostName": "static.omsbusinessusercontrols.ibm.com"
},
"routes": {
"custom-page1": {
"devServerConfig": {
"port": 9301,
"contextRoot": "/custom-page1"
}
},
"custom-page2": {
"devServerConfig": {
"port": 9302,
"contextRoot": "/custom-page2"
}
}
}
}
ng new --collection=@buc/schematics \
--app-config-json=<app-config.json-file-name> \
--module-short-name=<short-name-for-the-module> \
--prefix=<selector-prefix> \
--mode=on-prem
注記:のng newコマンドには--mode=on-premパラメータ。
回路図は次のオプションをサポートしています。- --skip-git
- このオプションは初期化しませんGitHubリポジトリ。 デフォルトは false です。
- --commit
- このオプションには初期GitHubリポジトリのコミット情報。 デフォルトは true です。
- --app-config-json
- これは必須オプション です。 使用app-config.json手順 5 で作成したファイル。
- --module-short-name
- モジュールの短い名前。 モジュール名にダッシュが含まれている場合、短縮名は最後のダッシュの後のテキストにする必要があります。 たとえば、モジュール名がbuc-アプリ設定モジュールの短縮名は設定。
- --prefix
- 生成されたコンポーネントに使用する HTML セレクター。 デフォルトはブック。
- --shared-library-name
- 共有ライブラリの名前。 デフォルト名は<module-short-name>-shared。 パッケージ名は@<プレフィックス>/<モジュール短縮名>-shared 。
- --generate-root-config
- ルート構成ルーター プロジェクトを生成するかどうかを示します。 デフォルトは true です。
- --skip-install
- パッケージをインストールするかどうかを示します。 デフォルトは false です。
- --mode
- このオプションを設定するオンプレミス適用可能なコードを生成する次世代オーダーハブ。
以下の例を参照してください。
ng new --collection=@buc/schematics --app-config-json=app-config.json
--module-short-name=monorepo --prefix=monorepo --mode=on-premコマンドが完了すると、Packages installed successfully.というメッセージが表示されます。
注記:次のメッセージのようなエラーが発生した場合は、エラーを無視しても問題ありません。 これらのエラーは、次世代オーダーハブ。
エラー: エントリポイント @carbon/icons-angular/ のコンパイルに失敗しました
./om-compose.sh start orderhub
docker exec om-orderhub-base bash -c 'mkdir -p /opt/app-root/src/shell-ui/assets/custom'
docker cp <orderhub-code>/shell-ui/assets/dev/. om-orderhub-base:/opt/app-root/src/shell-ui/assets/custom/
yarn start-app
注記:次のメッセージが表示されます。
"** Angular Live Development Server は localhost:<port> でリッスンしています。 ブラウザを開いてhttps://localhost:<ポート>/<モジュール>/<ルート> **"このメッセージは無視してください。
注記:次のメッセージのようなエラーが発生した場合は、新しいアプリケーションを起動する前にヒープ サイズを増やしてください。
エラー コマンドが終了コード 134 で失敗しました。 レルナ ERR! 糸かけ開始…。 退出 134次のコマンドを実行して、新しいアプリケーションを起動します。
- Windows CMDプロンプト:
SET NODE_OPTIONS=--max_old_space_size=8048 - バッシュ/Gitバッシュ:
export NODE_OPTIONS=--max_old_space_size=8048 - パワーシェル:
$Env:NODE_OPTIONS=--max_old_space_size=8048
注記:サーバーを停止する必要がある場合は、サーバージョブを停止して、yarn
stop-appすべてが適切に停止されていることを確認するコマンド。
注記:証明書を承認するには、
https://localhost:9300の代わりにhttps://bucgenerichost:9300。