Despliegue de personalizaciones con un conducto CI/CD
Despliegue personalizaciones utilizando un enfoque de integración continua y entrega continua (CI/CD).
Antes de empezar
Procedimiento
Realice los pasos siguientes para configurar una máquina de compilación con las herramientas necesarias para crear y desplegar personalizaciones.
- Instale Docker.Docker se utiliza para instalar los componentes y dependencias necesarios para configurar solo el contenedor Order Hub . No desarrolla personalizaciones de Order Hub dentro del contenedor. Se desarrolla en la estación de trabajo local.
- Instala una versión de Node.js que sea compatible con Angular v18 o v20. Para más información, consulta la página de Angular Compatibilidad de versiones. Si se requieren varias versiones de nodo, considere usar nvm (para Mac o Linux ) o nvm-windows (para Windows).
- Instale Yarn.
- Instale Angular CLI globalmente ejecutando uno de los siguientes comandos en una terminal.Para Angular v18, ejecute el siguiente comando.
Para Angular v20, ejecute el siguiente comando.npm install -g @angular/cli@18npm install -g @angular/cli@20 - En la máquina de compilación, configure una carpeta de destino con el código fuente Order Hub .Puede obtener el código fuente utilizando varios métodos. Por ejemplo:
- Descargue el kit de herramientas del desarrollador y extraiga el código fuente. Para más información, consulte el paso 6.j.
- Tenga el archivo tar del código fuente de Order Hub (de la versión que se utilizó para realizar la personalización) disponible en un repositorio. A continuación, clone y extraiga el archivo tar en la máquina de compilación.
Configure pipelines para descargar, empaquetar y desplegar personalizaciones.
- Descargue o extraiga todas las personalizaciones del repositorio.
- Superponer las personalizaciones en la carpeta de destino que incluye el código fuente Order Hub .
- Recupere Customization folder, Customization client ID, Customization auth key para cada uno de los arrendatarios donde desea desplegar las personalizaciones. Para más información, consulte Activar el menú de personalización para un inquilino.
- Configure pipelines para empaquetar las personalizaciones. Para cada aplicación personalizada, configure las interconexiones para ejecutar el mandato siguiente dentro de la carpeta raíz del módulo de aplicación personalizada (devtoolkit_docker/orderhub-code/<module-name>). Configure un conducto para cada entorno de destino en el que desee desplegar las personalizaciones. Si tiene previsto realizar el despliegue en 4 entornos, configure 4 interconexiones.
- Para desplegar personalizaciones para aplicaciones existentes, configure pipelines para ejecutar el mandato siguiente. Pase los parámetros build-target y customization-context-root correspondientes en la siguiente llamada yarn.
Por ejemplo:yarn package-customization --build-target=build-merged-<environment> --customization-context-root=<customization_folder>- Para empaquetar el módulo buc-app-order para el despliegue en el entorno de dev1 :
c:\devtoolkit_docker\orderhub-code\buc-app-order> yarn package-customization --build-target=build-merged-dev1 --customization-context-root=/buc-app-customization/T3R4fagafd45aadfaffasf - Para empaquetar el módulo buc-app-inventory para el despliegue en el entorno de qa3 :
c:\devtoolkit_docker\orderhub-code\buc-app-inventory> yarn package-customization --build-target=build-merged-qa3 --customization-context-root=/buc-app-customization/dbU2K1u4seqrRKwBZTyMp1lUJwqQkJ5A
- Para empaquetar el módulo buc-app-order para el despliegue en el entorno de dev1 :
- Para desplegar nuevas aplicaciones, configure pipelines para ejecutar el mandato siguiente.
Por ejemplo:yarn build-<env>- Para empaquetar el módulo my-custom-app1 para el despliegue en el entorno de dev1 :
c:\devtoolkit_docker\orderhub-code\my-custom-app1> yarn build-dev1 - Para empaquetar el módulo special-custom-app2 para el despliegue en el entorno de qa3 :
c:\devtoolkit_docker\orderhub-code\special-custom-app2> yarn build-qa3
- Para empaquetar el módulo my-custom-app1 para el despliegue en el entorno de dev1 :
- Para desplegar personalizaciones para aplicaciones existentes, configure pipelines para ejecutar el mandato siguiente. Pase los parámetros build-target y customization-context-root correspondientes en la siguiente llamada yarn.
- Configure pipelines para desplegar las personalizaciones. Para cada aplicación personalizada, configure pipelines para ejecutar el mandato siguiente dentro de la carpeta raíz del módulo de aplicación personalizada (devtoolkit_docker/orderhub-code/<module-name>. Configure un conducto para cada entorno de destino en el que desee desplegar las personalizaciones. Si tiene previsto realizar el despliegue en 4 entornos, configure 4 interconexiones. El entorno de destino está determinado por client-id y client-secret. Cada entorno tiene un par de id-secreto de cliente exclusivo.
yarn orderhub-cli publish-customization --client-id=<clientId> --client-secret=<clientSecret> --package-name=<module-name>Required Parameters:
--client-id-El ID de cliente de personalización. Para obtener más información sobre cómo obtener el ID y el secreto, consulte Activación del menú de personalización para un inquilino.--client-secret-El secreto de cliente de personalización.--package-name-La carpeta de módulo bajo el directorio de compilación que contiene los archivos a cargar. Este valor corresponde al nombre del módulo, como por ejemplobuc-app-order.
Optional Parameters:
--orderhub-hostname-El nombre de host del servidor de API de Order Hub. El valor predeterminado esapp.omsbusinessusercontrols.ibm.com.--proxy-host- El nombre de host y el puerto del proxy en caso de que la máquina de compilación no tenga acceso directo aorderhub-hostname.--package-only-Indica si se debe crear sólo el zip del activo de personalización. El valor predeterminado esfalse.--publish-only-Indica si se debe cargar un paquete de personalización precompilado. El valor predeterminado esfalse. Si se establece en true, también debe especificar el paquete a publicar utilizando el parámetro -- package-name . Para -- package-name, especifique la vía de acceso a<build-dir>/<package-name>.zip. Por ejemplo:--publish-only=true --package-name=./dist/buc-app-order.zip--build-dir-El directorio que contiene el activo de personalización compilado. El valor predeterminado esdist.