cicd-integrations
2025.10
true
Importante :
Este contenido se ha localizado parcialmente a partir de un sistema de traducción automática. La localización de contenidos recién publicados puede tardar entre una y dos semanas en estar disponible.
UiPath logo, featuring letters U and I in white

Guía del usuario de integraciones de CI/CD

Última actualización 9 de mar. de 2026

Implementar y activar soluciones

Después de cargar un paquete de soluciones en Soluciones, puedes implementarlo en una carpeta de destino y activarlo para que sea operativo.

Flujo de trabajo de implementación

La implementación de una solución es un proceso de dos pasos:

  1. Implementar: crea una configuración de implementación y asocia el paquete con una carpeta de destino.
  2. Activar: hace que la implementación esté activa y operativa.

Esta separación te permite preparar las implementaciones con antelación y activarlas durante las ventanas de mantenimiento o después de la aprobación manual.

Implementar una solución

El comando deploy crea una implementación de un paquete de soluciones en un entorno específico.

Sintaxis del comando

uipcli solution deploy <package-name> [options]
uipcli solution deploy <package-name> [options]

Parámetros:

ParámetroDescripciónObligatorio
<package-name>Nombre del paquete cargado
-v o --versionVersión del paquete a implementar
-d o --deploymentNameNombre de esta implementación
-f o --deploymentFolderNameNombre de la carpeta de destino en Orchestrator
-UURL de Orchestrator
-TNombre del tenant
-ANombre de la organización
-IID de aplicación externa
-SSecreto de aplicación externa
--applicationScopeÁmbitos opcionales (aplicados por defecto)No
--deploymentParentFolderLa carpeta de Orchestrator donde se creará la carpeta de implementación. Si no se especifica, la carpeta de implementación se creará en la carpeta del tenant. Cuando se especifica, la implementación se realizará en la carpeta correspondiente. Cuando se establece en "exampleuser@org.com 's espacio de trabajo", la implementación se realizará en el espacio de trabajo personal para el usuario especificado.No
--configPathRuta local al archivo de configuración de la solución; necesario en escenarios con sobrescritura de enlaces. Consulta Descargar paquetes de soluciones y configuraciones para obtener más información sobre la obtención de archivos de configuración.No
--traceLevelNivel de registroNo
Nota: Ámbitos de aplicación predeterminados para soluciones

Al utilizar la autenticación de aplicaciones externas sin especificar el parámetro --applicationScope , la CLI aplica automáticamente estos ámbitos de solución predeterminados:

Solutions.Packages Solutions.Deployments OR.Execution

Importante: Los tres ámbitos son necesarios para todos los comandos CLI relacionados con la solución. Estos ámbitos se agrupan para proporcionar una cobertura completa para todos los comandos de la solución disponibles y deben configurarse de forma colectiva en lugar de individualmente por comando.

Importante:

Si ya existe una implementación con el mismo nombre en cualquier nivel dentro del tenant en Orchestrator, esta operación actualiza la implementación existente en lugar de crear una nueva. Si la implementación existente está en estado Fallido, la actualización no continúa; resolver o desinstalar la implementación fallida antes de volver a intentarlo.

Importante:

Las soluciones implementadas a nivel de tenant no asignan automáticamente un usuario a la carpeta resultante. Para asignar una cuenta, asegúrate de que la configuración adecuada esté establecida en Orchestrator (Tenant > Carpetas).

Autenticación

Consulta Autenticación y ámbitos para conocer los ámbitos necesarios y Configuración de la aplicación externa.

Ejemplo

uipcli solution deploy MySolution \
  -v 1.2.3 \
  -d MySolution-Prod-v1.2.3 \
  -f Production \
  -U https://cloud.uipath.com/ \
  -T DefaultTenant \
  -A myorg \
  -I 12345678-xxxx-xxxx-xxxx-xxxxxxxxxxxx \
  -S **** \
  --applicationScope "AutomationSolutions Solutions.Deployments Solutions.Deployments.Read Solutions.Deployments.Write Solutions.Packages Solutions.Packages.Read Solutions.Packages.Write" \
  --traceLevel Information
uipcli solution deploy MySolution \
  -v 1.2.3 \
  -d MySolution-Prod-v1.2.3 \
  -f Production \
  -U https://cloud.uipath.com/ \
  -T DefaultTenant \
  -A myorg \
  -I 12345678-xxxx-xxxx-xxxx-xxxxxxxxxxxx \
  -S **** \
  --applicationScope "AutomationSolutions Solutions.Deployments Solutions.Deployments.Read Solutions.Deployments.Write Solutions.Packages Solutions.Packages.Read Solutions.Packages.Write" \
  --traceLevel Information

Convenciones de nomenclatura de implementación

Elige nombres de implementación significativos que incluyan:

  • Nombre de la solución
  • Identificador de entorno
  • Versión o fecha

Ejemplos:

MySolution-Dev-v1.2.3
MySolution-Test-2025-01-15
MySolution-Prod-Release-1.2.3
InvoiceProcessing-Production-v2.0.0
MySolution-Dev-v1.2.3
MySolution-Test-2025-01-15
MySolution-Prod-Release-1.2.3
InvoiceProcessing-Production-v2.0.0

Esto facilita el seguimiento y la gestión de las implementaciones en todos los entornos.

Qué sucede durante la implementación

Al ejecutar el comando de implementación:

  1. El paquete se valida en Soluciones.
  2. Se crea una configuración de implementación.
  3. La implementación está asociada a la carpeta de destino.
  4. Se inicializan los enlaces específicos del entorno.
  5. La implementación está preparada pero aún no está activa.

La solución no comienza a ejecutar procesos hasta que la actives.

Activar una implementación

El comando deploy-activate hace que una implementación esté activa y operativa.

Sintaxis del comando

uipcli solution deploy-activate <deployment-name> [options]
uipcli solution deploy-activate <deployment-name> [options]

Parámetros:

ParámetroDescripciónObligatorio
<deployment-name>Nombre de la implementación que se va a activar
-UURL de Orchestrator
-TNombre del tenant
-ANombre de la organización
-IID de aplicación externa
-SSecreto de aplicación externa
--applicationScopeÁmbitos necesarios
--traceLevelNivel de registroNo

Autenticación

Consulta Autenticación y ámbitos para conocer los ámbitos necesarios y Configuración de la aplicación externa.

Ejemplo

uipcli solution deploy-activate MySolution-Prod-v1.2.3 \
  -U https://cloud.uipath.com/ \
  -T DefaultTenant \
  -A myorg \
  -I 12345678-xxxx-xxxx-xxxx-xxxxxxxxxxxx \
  -S **** \
  --applicationScope "AutomationSolutions Solutions.Deployments Solutions.Deployments.Read Solutions.Deployments.Write Solutions.Packages Solutions.Packages.Read Solutions.Packages.Write" \
  --traceLevel Information
uipcli solution deploy-activate MySolution-Prod-v1.2.3 \
  -U https://cloud.uipath.com/ \
  -T DefaultTenant \
  -A myorg \
  -I 12345678-xxxx-xxxx-xxxx-xxxxxxxxxxxx \
  -S **** \
  --applicationScope "AutomationSolutions Solutions.Deployments Solutions.Deployments.Read Solutions.Deployments.Write Solutions.Packages Solutions.Packages.Read Solutions.Packages.Write" \
  --traceLevel Information

Qué sucede durante la activación

Al activar una implementación:

  1. La implementación se convierte en la versión activa en la carpeta de destino.
  2. Los desencadenadores están activados.
  3. Se desactiva cualquier implementación previamente activa en la misma carpeta.

Integración del proceso CI/CD

Flujo de trabajo de implementación completo

steps:
  # 1. Pack the Solution
  - name: Pack Solution
    run: |
      uipcli solution pack ./MySolution \
        --output ./packages \
        --version "1.0.${{ github.run_number }}"

  # 2. Upload to Solutions Management
  - name: Upload Package
    run: |
      uipcli solution upload-package ./packages/MySolution.1.0.${{ github.run_number }}.zip \
        -U ${{ secrets.ORCHESTRATOR_URL }} \
        -T ${{ secrets.ORCHESTRATOR_TENANT }} \
        -A ${{ secrets.ORG_NAME }} \
        -I ${{ secrets.EXTERNAL_APP_ID }} \
        -S ${{ secrets.EXTERNAL_APP_SECRET }} \
        --applicationScope "AutomationSolutions Solutions.Packages Solutions.Packages.Write"

  # 3. Deploy to target environment
  - name: Deploy Solution
    run: |
      uipcli solution deploy MySolution \
        -v "1.0.${{ github.run_number }}" \
        -d "MySolution-Prod-v1.0.${{ github.run_number }}" \
        -f Production \
        -U ${{ secrets.ORCHESTRATOR_URL }} \
        -T ${{ secrets.ORCHESTRATOR_TENANT }} \
        -A ${{ secrets.ORG_NAME }} \
        -I ${{ secrets.EXTERNAL_APP_ID }} \
        -S ${{ secrets.EXTERNAL_APP_SECRET }} \
        --applicationScope "AutomationSolutions Solutions.Deployments Solutions.Deployments.Read Solutions.Deployments.Write Solutions.Packages Solutions.Packages.Read Solutions.Packages.Write"

  # 4. Activate the deployment
  - name: Activate Deployment
    run: |
      uipcli solution deploy-activate "MySolution-Prod-v1.0.${{ github.run_number }}" \
        -U ${{ secrets.ORCHESTRATOR_URL }} \
        -T ${{ secrets.ORCHESTRATOR_TENANT }} \
        -A ${{ secrets.ORG_NAME }} \
        -I ${{ secrets.EXTERNAL_APP_ID }} \
        -S ${{ secrets.EXTERNAL_APP_SECRET }} \
        --applicationScope "AutomationSolutions Solutions.Deployments Solutions.Deployments.Read Solutions.Deployments.Write Solutions.Packages Solutions.Packages.Read Solutions.Packages.Write"
steps:
  # 1. Pack the Solution
  - name: Pack Solution
    run: |
      uipcli solution pack ./MySolution \
        --output ./packages \
        --version "1.0.${{ github.run_number }}"

  # 2. Upload to Solutions Management
  - name: Upload Package
    run: |
      uipcli solution upload-package ./packages/MySolution.1.0.${{ github.run_number }}.zip \
        -U ${{ secrets.ORCHESTRATOR_URL }} \
        -T ${{ secrets.ORCHESTRATOR_TENANT }} \
        -A ${{ secrets.ORG_NAME }} \
        -I ${{ secrets.EXTERNAL_APP_ID }} \
        -S ${{ secrets.EXTERNAL_APP_SECRET }} \
        --applicationScope "AutomationSolutions Solutions.Packages Solutions.Packages.Write"

  # 3. Deploy to target environment
  - name: Deploy Solution
    run: |
      uipcli solution deploy MySolution \
        -v "1.0.${{ github.run_number }}" \
        -d "MySolution-Prod-v1.0.${{ github.run_number }}" \
        -f Production \
        -U ${{ secrets.ORCHESTRATOR_URL }} \
        -T ${{ secrets.ORCHESTRATOR_TENANT }} \
        -A ${{ secrets.ORG_NAME }} \
        -I ${{ secrets.EXTERNAL_APP_ID }} \
        -S ${{ secrets.EXTERNAL_APP_SECRET }} \
        --applicationScope "AutomationSolutions Solutions.Deployments Solutions.Deployments.Read Solutions.Deployments.Write Solutions.Packages Solutions.Packages.Read Solutions.Packages.Write"

  # 4. Activate the deployment
  - name: Activate Deployment
    run: |
      uipcli solution deploy-activate "MySolution-Prod-v1.0.${{ github.run_number }}" \
        -U ${{ secrets.ORCHESTRATOR_URL }} \
        -T ${{ secrets.ORCHESTRATOR_TENANT }} \
        -A ${{ secrets.ORG_NAME }} \
        -I ${{ secrets.EXTERNAL_APP_ID }} \
        -S ${{ secrets.EXTERNAL_APP_SECRET }} \
        --applicationScope "AutomationSolutions Solutions.Deployments Solutions.Deployments.Read Solutions.Deployments.Write Solutions.Packages Solutions.Packages.Read Solutions.Packages.Write"

Implementaciones cerradas con aprobación manual

Puedes separar los pasos de implementación y activación para implementar los flujos de trabajo de aprobación:

# Stage 1: Deploy (automated)
- stage: DeployToProduction
  jobs:
  - job: Deploy
    steps:
    - script: |
        uipcli solution deploy MySolution -v $(version) -d MySolution-Prod-$(version) -f Production ...
      displayName: 'Prepare Production Deployment'

# Stage 2: Activate (requires approval)
- stage: ActivateProduction
  dependsOn: DeployToProduction
  # Manual approval gate configured in Azure DevOps
  jobs:
  - deployment: Activate
    environment: 'Production'
    steps:
    - script: |
        uipcli solution deploy-activate MySolution-Prod-$(version) ...
      displayName: 'Activate Production Deployment'
# Stage 1: Deploy (automated)
- stage: DeployToProduction
  jobs:
  - job: Deploy
    steps:
    - script: |
        uipcli solution deploy MySolution -v $(version) -d MySolution-Prod-$(version) -f Production ...
      displayName: 'Prepare Production Deployment'

# Stage 2: Activate (requires approval)
- stage: ActivateProduction
  dependsOn: DeployToProduction
  # Manual approval gate configured in Azure DevOps
  jobs:
  - deployment: Activate
    environment: 'Production'
    steps:
    - script: |
        uipcli solution deploy-activate MySolution-Prod-$(version) ...
      displayName: 'Activate Production Deployment'

Promoción multientorno

Implementa la misma versión en varios entornos de forma secuencial:

# Deploy to Dev
uipcli solution deploy MySolution -v 1.2.3 -d MySolution-Dev-1.2.3 -f Dev ...
uipcli solution deploy-activate MySolution-Dev-1.2.3 ...

# Deploy to Test
uipcli solution deploy MySolution -v 1.2.3 -d MySolution-Test-1.2.3 -f Test ...
uipcli solution deploy-activate MySolution-Test-1.2.3 ...

# Deploy to Production (after approval)
uipcli solution deploy MySolution -v 1.2.3 -d MySolution-Prod-1.2.3 -f Production ...
uipcli solution deploy-activate MySolution-Prod-1.2.3 ...
# Deploy to Dev
uipcli solution deploy MySolution -v 1.2.3 -d MySolution-Dev-1.2.3 -f Dev ...
uipcli solution deploy-activate MySolution-Dev-1.2.3 ...

# Deploy to Test
uipcli solution deploy MySolution -v 1.2.3 -d MySolution-Test-1.2.3 -f Test ...
uipcli solution deploy-activate MySolution-Test-1.2.3 ...

# Deploy to Production (after approval)
uipcli solution deploy MySolution -v 1.2.3 -d MySolution-Prod-1.2.3 -f Production ...
uipcli solution deploy-activate MySolution-Prod-1.2.3 ...

Estrategia de reversión

Para revertir a una versión anterior:

  1. Implementa la versión anterior con un nuevo nombre de implementación.
  2. Activa la implementación de la versión anterior.
  3. Opcionalmente, desinstala la implementación más reciente.
# Roll back to v1.2.2
uipcli solution deploy MySolution -v 1.2.2 -d MySolution-Prod-Rollback-1.2.2 -f Production ...
uipcli solution deploy-activate MySolution-Prod-Rollback-1.2.2 ...
# Roll back to v1.2.2
uipcli solution deploy MySolution -v 1.2.2 -d MySolution-Prod-Rollback-1.2.2 -f Production ...
uipcli solution deploy-activate MySolution-Prod-Rollback-1.2.2 ...

Próximos pasos

Después de implementar y activar las soluciones, puedes:

  1. Supervisar la ejecución en Orchestrator.
  2. Desinstala las implementaciones cuando ya no sean necesarias.
  3. Implementa nuevas versiones siguiendo el mismo flujo de trabajo.

¿Te ha resultado útil esta página?

Conectar

¿Necesita ayuda? Soporte

¿Quiere aprender? UiPath Academy

¿Tiene alguna pregunta? Foro de UiPath

Manténgase actualizado