Criando Hub de pedidos de próxima geração aplicativos usando um monorepo
O uso de uma estratégia Angular monorepo usa Lerna para hospedar vários aplicativos em um único repositório. Essa configuração fornece meios para reutilizar o código, compartilhar entre aplicativos sem precisar duplicar o código ou criar repositórios de bibliotecas e compilações menores por rota, o que economiza tempo. A estratégia monorepo é usada por todos IBM® oferecido Centro de pedidos repositórios. Esta estratégia fornece uma abordagem de personalização limpa, onde você pode personalizar rotas em um ambiente existente. IBM repositório sem assumir todas as rotas inalteradas.
Sobre esta tarefa
Este esquema cria um novo monorepo para armazenar vários projetos para suas novas aplicações usando Lerna e Single-Spa.
Procedimento
npm uninstall -g @buc/schematics
npm install -g ./lib/buc/schematics/schematics-v4latest.tgzPara o Angular v20, execute o seguinte comando.npm uninstall -g @buc/schematics
npm install -g ./lib/buc/schematics/schematics-v5latest.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
Observação: Ong new comando requer o--mode=on-prem parâmetro.
O esquema suporta as seguintes opções.- --skip-git
- Esta opção não inicializa um GitHub repositório. O padrão é false.
- --commit
- Esta opção inclui o inicial GitHub informações de commit do repositório. O padrão é true.
- --app-config-json
- Esta opção é obrigatória. Use oapp-config.json arquivo que você criou na etapa 5.
- --module-short-name
- O nome abreviado do módulo. Se o nome do módulo tiver travessões, o nome abreviado deverá ser o texto após o último travessão. Por exemplo, se o nome do módulo for configurações do aplicativo buc, o nome abreviado do módulo deve ser configurações.
- --prefix
- O seletor HTML a ser usado para componentes gerados. O padrão é cara.
- --shared-library-name
- O nome da biblioteca compartilhada. O nome padrão é<module-short-name>-shared . O nome do pacote é @<prefixo>/<module-short-name>-compartilhado.
- --generate-root-config
- Indica se deve ser gerado um projeto de roteador root-config. O padrão é true.
- --skip-install
- Indica se os pacotes devem ser instalados. O padrão é false.
- --mode
- Defina esta opção como local para gerar código que seja aplicável para Hub de pedidos de próxima geração.
Veja o exemplo a seguir.
ng new --collection=@buc/schematics --app-config-json=app-config.json
--module-short-name=monorepo --prefix=monorepo --mode=on-premDepois que o comando for concluído, umPackages installed successfully.“Não Assumido? será exibida.
Observação: Se você encontrar um erro semelhante à mensagem a seguir, poderá ignorar o erro com segurança. Esses erros não afetam os ícones usados pelo Hub de pedidos de próxima geração.
Erro: Falha ao compilar o ponto de entrada @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
Observação: Você vê a seguinte mensagem.
"** Angular Live Development Server está escutando em localhost:<porta>, abra seu navegador em https://localhost:<porta>/<módulo>/<rota> **"Você pode ignorar essa mensagem.
Observação: Se você encontrar um erro semelhante à mensagem a seguir, aumente o tamanho do heap antes de iniciar o novo aplicativo.
O comando de erro falhou com o código existente 134. lerna ERRA! início da corrida do fio.... saiu 134Execute o seguinte comando e inicie o novo aplicativo.
- Solicitação do CMD do Windows:
SET NODE_OPTIONS=--max_old_space_size=8048 - Bash/ Git Bash:
export NODE_OPTIONS=--max_old_space_size=8048 - Concha de energia:
$Env:NODE_OPTIONS=--max_old_space_size=8048
Observação: Se precisar parar o servidor, pare o trabalho do servidor e execute oyarn
stop-app comando para verificar se tudo está parado corretamente.
Observação: Para aceitar o certificado, é agora
https://localhost:9300 em vez dehttps://bucgenerichost:9300 .