Preparando para implementar novos aplicativos

Antes de poder implementar novos aplicativos (como devtoolkit_docker/orderhub-code/my-custom-app), é necessário indicar quais aplicativos implementar. Por exemplo, é possível trabalhar em dois novos aplicativos, mas você pode desejar implementar apenas um.

Para implementar customizações para aplicativos existentes, consulte Preparando para implementar customizações para aplicativos existentes.

Procedimento

  1. Recupere o Customization folder, Customization client ID, Customization auth key para cada um dos locatários nos quais deseja implementar as customizações.

    Pode ser necessário entrar em contato com um administrador para obter o Customization auth key se os locatários já estiverem configurados para customização.. Para obter mais informações, consulte Ativando o menu de customização para um locatário

  2. Recupere o valor JSON do Recurso de Order Hub.
    1. Efetue login no Order Hub.
    2. Alterne para o locatário de customização no qual você testou suas customizações.
    3. Acesse Configurações > Customização.
    4. Selecione o item de menu customizado que ativa o aplicativo customizado
    5. Se você desejar implementar customizações no locatário de customização no qual testou suas customizações, assegure-se de selecionar Hospedado pela IBM e limpar Ambiente de desenvolvimento local. Caso contrário, o locatário continuará a se conectar ao servidor local.
    6. No campo URL relativa URL , inclua o caminho relativo para seu aplicativo.
      Para localizar o caminho relativo, conclua as etapas a seguir:
      1. Abra o arquivo <custom-module-name>/packages/<module-short-name>-root-config/src/assets/routes.json ..
      2. No elemento redirects , localize a rota para a qual o aplicativo é redirecionado
      3. Abra o arquivo <custom-module-name>/packages/<route-name>/src/app/features/<module-short-name>/<module-short-name>-routing.module.ts ..
      4. Localize o < path> ao qual a rota está apontando. O valor padrão é home.
      5. A URL relativa final é: / < module-name> / < route-name> / < module-short-name> / < path>

      Inicie com uma barra (/) Não é necessário incluir uma barra à direita Por exemplo, /custom-app/custom-page1/custom/home..

    7. Salve todas as alterações.
    8. Copie o JSON do campo Json do recurso na UI.
      O JSON da IU é semelhante à amostra a seguir.
      {
          "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. Abra o features.json no diretório raiz do módulo.
    Por exemplo, devtoolkit_docker/orderhub-code/custom-app/features.json.. Se o arquivo não existir, crie o arquivo.
  4. Cole o JSON que você copiou da etapa 2.h como um elemento da matriz no arquivo features.json .
    Dependendo do conteúdo no features.json, pode ser necessário colocar o código entre colchetes [] para incluir como um elemento de matriz.
  5. Inclua destinos de construção para suas customizações, dependendo do tipo de repositório que você usa
    -Se você usar um Order Hub monorepo para suas customizações:
    1. Em cada rota, para cada ambiente no qual você deseja implementar customizações, inclua um destino de construção para construir suas customizações..
      1. Abra o arquivo package.json de cada rota Por exemplo, devtoolkit_docker/orderhub-code/custom-app/packages/custom-page1/package.json e devtoolkit_docker/orderhub-code/custom-app/packages/custom-page2/package.json..
      2. Inclua o comando de destino de construção a seguir para os ambientes nos quais você deseja implementar as customizações:
        "build-<env>": "yarn build --deploy-url=<customization folder>/<module-name>/<route-name>/",
        O valor para <customization folder> é o valor recuperado da etapa 1. Cada ambiente de destino possui um valor da pasta de customização diferente.
        Por exemplo, se você desejar implementar em quatro ambientes; dev1, qa3, preprode prod, inclua o código a seguir:
        "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/",
    2. Inclua destinos de construção no arquivo package.json raiz.
      1. Abra a pasta de configuração raiz do devtoolkit_docker/orderhub-code/<custom-module-name>/<custom-short-name>-root-config/package.json
      2. Para cada ambiente no qual você deseja implementar as customizações, inclua destinos de construção semelhantes ao código a seguir:
        "build-<env>": "yarn build --env baseHref=<customization folder>/<module-name>/ --env deploy-url=<customization folder>/<module-name>/<route-name>/",
        em que < route-name> é a rota padrão.
        Por exemplo, se você desejar implementar em quatro ambientes; dev1, qa3, preprode prod, inclua código semelhante à amostra a seguir:
        "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/",
    3. Para cada ambiente no qual você deseja implementar as customizações, inclua um destino de construção no arquivo <module-name>/package.json
      1. Abra o arquivo <custom-module-name>/package.json .. Por exemplo, custom-app/package.json..
      2. Faça uma cópia da linha de construção para cada ambiente de destino

        Por exemplo, suponha que você deseja implementar em quatro ambientes; dev1, qa3, preprode prod Cole a linha quatro vezes.

        Substitua build por build-<environment> em cada linha copiada.. Por exemplo:
        "build": "lerna run build --stream", 
        "build-dev1": "lerna run build-dev1 --stream", 
        "build-qa3": "lerna run build-qa3 --stream", 
        "build-preprod": "lerna run build-preprod --stream", 
        "build-prod": "lerna run build-prod --stream", 

    -Se você usar um repositório Angular básico do Order Hub para suas customizações:

    Para cada ambiente no qual você deseja implementar as customizações, inclua um destino de construção no arquivo <module-name>/package.json
    1. Abra o arquivo <module-name>/package.json .. Por exemplo, custom-app/package.json..
    2. Faça uma cópia da linha de construção para cada ambiente de destino

      Por exemplo, suponha que você deseja implementar em quatro ambientes; dev1, qa3, preprode prod Cole a linha quatro vezes.

      Substitua build por build-<environment> em cada linha copiada e inclua --deploy-url=<customization folder>/<module-name>/, em que o valor para <customization folder> é o valor recuperado da etapa 1.

      Cada ambiente de destino possui um valor da pasta de customização diferente. Por exemplo:
      
      "build": "node --max_old_space_size=8192 ./node_modules/@angular/cli/bin/ng build --aot --configuration production",
      "build-dev1": "node --max_old_space_size=8192 ./node_modules/@angular/cli/bin/ng build --aot --configuration production --deploy-url=/buc-app-customization/T3R4fagafd45aadfaffasf/custom-app/",
      "build-qa3": "node --max_old_space_size=8192 ./node_modules/@angular/cli/bin/ng build --aot --configuration production --deploy-url=/buc-app-customization/dbU2K1u4seqrRKwBZTyMp1lUJwqQkJ5A/custom-app/",
      "build-preprod": "node --max_old_space_size=8192 ./node_modules/@angular/cli/bin/ng build --aot --configuration production --deploy-url=/buc-app-customization/zdD4uxaf8GRTbzMSg8zU2K/custom-app/",
      "build-prod": "node --max_old_space_size=8192 ./node_modules/@angular/cli/bin/ng build --aot --configuration production --deploy-url=/buc-app-customization/balohTK3ang5GmXsRwOSeSidbQOKEw6N/custom-app/",
      
  6. Se você usar um pipeline CI/CD para implementar customizações, verifique todas as mudanças de customização em seu repositório.

O que fazer depois

Implementar customizações.