- Información general
- CLI de Uipath
- Acerca de la CLI de UiPath
- Descarga de la CLI de UiPath
- Matriz de compatibilidad
- Ejecutar la CLI de UiPath
- Gestionar fuentes NuGet
- Confiar en certificados personalizados
- Soporte de Test Manager
- Empaquetar proyectos en un paquete
- Firma de paquetes de proyecto
- Analizar un proyecto
- Implementar un paquete en Orchestrator
- Ejecutar un trabajo dentro de Orchestrator
- Probar un paquete o ejecutar un conjunto de pruebas
- Probar varios paquetes
- Parámetros de entrada Formato JSON
- Implementar activos en Orchestrator
- Eliminar activos de Orchestrator
- Ejecutar tareas utilizando la configuración JSON
- Restaurar dependencias de automatización
- Solución de problemas de la CLI de UiPath
- Extensión de Azure DevOps
- Acerca de la extensión de Azure DevOps
- Configurar la conexión del servicio Azure DevOps
- Añadir tareas de UiPath a un proceso de Azure DevOps
- Plataforma de instalación de Uipath
- Paquete de soluciones de UiPath
- Paquete de carga de la solución UiPath
- Implementación de la solución UiPath
- Activación de la solución UiPath
- Eliminar paquete de la solución UiPath
- Configuración de descarga de la solución UiPath
- Paquete de descarga de la solución UiPath
- Implementación de desinstalación de la solución UiPath
- Solución de problemas de la extensión de Azure DevOps
- Complemento de Jenkins
- Acerca del complemento de Jenkins
- Instalar el complemento de Jenkins
- Configurar la conexión de servicio para aplicaciones externas
- Plataforma de instalación de Uipath
- Paquete de soluciones de UiPath
- Paquete de carga de la solución UiPath
- Implementación de la solución UiPath
- Solución UiPath Activar implementación
- Eliminar paquete de la solución UiPath
- Configuración de descarga de la solución UiPath
- Paquete de descarga de la solución UiPath
- Implementación de desinstalación de la solución UiPath
- Solución de problemas del complemento de Jenkins
Empaqueta un directorio de soluciones de UiPath en un paquete de soluciones implementables utilizando la CLI.
El comando pack crea un paquete de soluciones implementable (archivo .zip ) que puede cargarse en Soluciones en Orchestrator.
Sintaxis del comando
uipcli solution pack <solution-path> [options]
uipcli solution pack <solution-path> [options]
Parámetros
| Parámetro | Descripción | Obligatorio |
|---|---|---|
<solution-path> (pos. 0) | Ruta a la carpeta de la solución o al archivo .uipx | Sí |
--output | Directorio donde se creará el paquete | Sí |
--version | Número de versión en formato x.y.z | Sí |
--nugetConfigFilePath | Ruta al archivo NuGet.Config utilizado durante la restauración. A partir del 25.10.18, el archivo se respeta de principio a fin: <clear />, <packageSourceCredentials>, <packageSourceMapping> y <fallbackPackageFolders> tienen efecto. Consulta Gestionar fuentes NuGet. En compilaciones más antiguas, solo se aplicaban las URL <packageSources> . | No |
--disableBuiltInNugetFeeds | Deshabilite las fuentes nuget integradas. | No |
--excludeConfiguredSources | Excluye las fuentes integradas y las fuentes de NuGet configuradas a nivel de usuario y máquina en el host que ejecuta la CLI. La CLI resuelve los paquetes solo a partir de las fuentes definidas en --nugetConfigFilePath Consulta Gestionar fuentes NuGet. | No |
-A, --libraryOrchestratorAccountForApp (*) | El nombre de la cuenta de Orchestrator CloudRPA (nombre de la organización). Debes emparejarlo con el ID de la aplicación,el Secreto de la aplicación y el Ámbito de la aplicación para la aplicación externa. Esto es necesario si cualquier proyecto de solución depende de bibliotecas de la fuente de Orchestrator o de otro proceso implementado en Orchestrator. | No |
-I ,--libraryOrchestratorApplicationId (*) (Obligatorio si utilizas la autenticación de aplicación externa) | El ID de la aplicación externa. Debes emparejarlo con la Cuenta de la aplicación, el Secreto de la aplicación y el Ámbito de la aplicación. Esto es necesario si cualquier proyecto de solución depende de bibliotecas de la fuente de Orchestrator o de otro proceso implementado en Orchestrator. | No |
-S, --libraryOrchestratorApplicationSecret (*) (Obligatorio si utilizas la autenticación de aplicación externa) | El secreto de la aplicación externa. Debes emparejarlo con la cuenta de la aplicación, el ID de la aplicación y el ámbito de la aplicación. Esto es necesario si cualquier proyecto de solución depende de bibliotecas de la fuente de Orchestrator o de otro proceso implementado en Orchestrator. | No |
--libraryOrchestratorApplicationScope (*) (Opcional para la autenticación de aplicaciones externas) | La lista de ámbitos de aplicación, separados por espacios individuales. Debes emparejarlo con la cuenta de la aplicación, el ID de la aplicación y el secreto de la aplicación para la aplicación externa. Esto es necesario si cualquier proyecto de solución depende de bibliotecas de la fuente de Orchestrator o de otro proceso implementado en Orchestrator. | No |
--libraryOrchestratorUrl (*) | La URL de la instancia de Orchestrator. Esto es necesario si cualquier proyecto de solución depende de bibliotecas de la fuente de Orchestrator o de otro proceso implementado en Orchestrator. | No |
--libraryOrchestratorTenant (*) | El tenant de la instancia de Orchestrator. Esto es necesario si cualquier proyecto de solución depende de bibliotecas de la fuente de Orchestrator o de otro proceso implementado en Orchestrator. | No |
--libraryIdentityUrl | La URL de tu servidor de identidad. Obligatorio cuando la biblioteca Orchestrator se ejecuta en UiPath Automation Suite o en Orchestrator independiente (MSI local). No es necesario para Automation Cloud : la CLI resuelve el servidor de identidad desde la URL de la nube. | No |
--libraryOrchestratorFolder (*) | El nombre de la carpeta de Orchestrator de destino. Para introducir subcarpetas, asegúrate de introducir tanto el nombre de la carpeta principal como el nombre de la subcarpeta. Por ejemplo, AccountingTeam\TeamJohnusa . | No |
--repositoryUrl | La URL del repositorio donde se versiona el proyecto. | No |
--repositoryCommit | La confirmación del repositorio desde la que se creó el proyecto. | No |
--repositoryBranch | La rama del repositorio desde la que se creó el proyecto. | No |
--repositoryType | Tipo de repositorio del sistema VCS. | No |
--projectUrl | URL de la idea de Automation Hub. | No |
--releaseNotes | Añadir notas de la versión. | No |
--author | El autor del paquete. | No |
--traceLevel | Mostrar el seguimiento de los eventos. | No |
--ca-cert | Archivo(s) de CA raíz de confianza (PEM, DER o PKCS#7) para el certificado TLS de Orchestrator/Identity de la biblioteca. Repetir o separar por comas. Consulta Confiar en certificados personalizados. | No |
--pinnedpubkey | Anclar la clave pública hoja (sha256//<base64>). Consulta Confiar en certificados personalizados. | No |
Para las instancias de biblioteca de Orchestrator firmadas por una autoridad de certificación privada (como UiPath Automation Suite), este comando también acepta los parámetros --ca-cert y --pinnedpubkey . Consulta Confiar en certificados personalizados para escenarios y ejemplos.
Al utilizar la autenticación de aplicaciones externas sin especificar el parámetro --libraryOrchestratorApplicationScope , la CLI aplica automáticamente estos ámbitos predeterminados de Orchestrator:
Solutions.Packages Solutions.Deployments OR.Execution
Ejemplo
uipcli solution pack C:\Solutions\MySolution \
--output C:\Output \
--version 1.2.3 \
--traceLevel Verbose
uipcli solution pack C:\Solutions\MySolution \
--output C:\Output \
--version 1.2.3 \
--traceLevel Verbose
Esto crea un archivo de paquete como:
C:\Output\MySolution.1.2.3.zip
C:\Output\MySolution.1.2.3.zip
Ejemplo de parámetro completo
uipcli solution pack C:\Solutions\MySolution \
--output C:\Output \
--version 1.2.3 \
--libraryOrchestratorAccountForApp MyOrgAccount \
--libraryOrchestratorApplicationId ******* \
--libraryOrchestratorApplicationSecret ******* \
--libraryOrchestratorApplicationScope "OR.Assets OR.Folders OR.Projects" \
--libraryOrchestratorUrl https://cloud.uipath.com/myOrgName/myTenantName \
--libraryOrchestratorTenant myTenantName \
--libraryIdentityUrl https://identity.uipath.com \
--libraryOrchestratorFolder "AccountingTeam\TeamJohn" \
--disableBuiltInNugetFeeds \
--repositoryUrl https://github.com/my-org/my-repo \
--repositoryCommit 7f3a9c2 \
--repositoryBranch main \
--repositoryType git \
--projectUrl https://automationhub.uipath.com/ideas/1234 \
--releaseNotes "Initial packaged solution version" \
--traceLevel Verbose
--author ExampleAuthor
uipcli solution pack C:\Solutions\MySolution \
--output C:\Output \
--version 1.2.3 \
--libraryOrchestratorAccountForApp MyOrgAccount \
--libraryOrchestratorApplicationId ******* \
--libraryOrchestratorApplicationSecret ******* \
--libraryOrchestratorApplicationScope "OR.Assets OR.Folders OR.Projects" \
--libraryOrchestratorUrl https://cloud.uipath.com/myOrgName/myTenantName \
--libraryOrchestratorTenant myTenantName \
--libraryIdentityUrl https://identity.uipath.com \
--libraryOrchestratorFolder "AccountingTeam\TeamJohn" \
--disableBuiltInNugetFeeds \
--repositoryUrl https://github.com/my-org/my-repo \
--repositoryCommit 7f3a9c2 \
--repositoryBranch main \
--repositoryType git \
--projectUrl https://automationhub.uipath.com/ideas/1234 \
--releaseNotes "Initial packaged solution version" \
--traceLevel Verbose
--author ExampleAuthor
Requisito de versión
A diferencia de los proyectos independientes, las soluciones no incrementan automáticamente su número de versión. Debes proporcionar explícitamente una versión utilizando el parámetro --version .
Patrones de versiones típicos en CI/CD
La mayoría de los equipos generan la versión de forma dinámica en función de los metadatos de la compilación:
Usar ID de compilación
--version "1.0.$BUILD_ID"
--version "1.0.$BUILD_ID"
Usar SHA de confirmación de Git
--version "2.1.${GIT_COMMIT_SHA:0:7}"
--version "2.1.${GIT_COMMIT_SHA:0:7}"
Usar versiones semánticas con fecha
--version "$(date +%Y.%m.$BUILD_NUMBER)"
--version "$(date +%Y.%m.$BUILD_NUMBER)"
Formato de versión
La versión debe seguir el control de versiones semántico:
- Formato:
MAJOR.MINOR.PATCH - Ejemplo:
1.0.0,2.3.45,10.20.1234 - Debe contener exactamente tres componentes numéricos separados por puntos
Integración de procesos
Ejemplo de Azure DevOps
- script: |
uipcli solution pack $(Build.SourcesDirectory)\MySolution \
--output $(Build.ArtifactStagingDirectory) \
--version "1.0.$(Build.BuildId)" \
--traceLevel Information
displayName: 'Pack Solution'
- script: |
uipcli solution pack $(Build.SourcesDirectory)\MySolution \
--output $(Build.ArtifactStagingDirectory) \
--version "1.0.$(Build.BuildId)" \
--traceLevel Information
displayName: 'Pack Solution'
Ejemplo de acciones de GitHub
- name: Pack Solution
run: |
uipcli solution pack ${{ github.workspace }}/MySolution \
--output ${{ runner.temp }}/packages \
--version "1.0.${{ github.run_number }}" \
--traceLevel Information
- name: Pack Solution
run: |
uipcli solution pack ${{ github.workspace }}/MySolution \
--output ${{ runner.temp }}/packages \
--version "1.0.${{ github.run_number }}" \
--traceLevel Information
Qué se empaqueta
Los paquetes de comandos pack:
- Todos los proyectos incluidos en la solución
- Dependencias a nivel de proyecto
- Metadatos y configuración de la solución
- Vinculación de definiciones para configuraciones específicas del entorno
El archivo .zip resultante es independiente y está listo para cargarse en Orchestrator.
Empaquetado después de la restauración
Para obtener los mejores resultados, ejecuta restore antes de pack para garantizar que se resuelvan todas las dependencias:
# 1. Restore dependencies
uipcli solution restore C:\Solutions\MySolution \
--restoreFolder C:\Output\Dependencies \
--traceLevel Information
# 2. Pack with explicit version
uipcli solution pack C:\Solutions\MySolution \
--output C:\Output \
--version 1.2.3 \
--traceLevel Verbose
# 1. Restore dependencies
uipcli solution restore C:\Solutions\MySolution \
--restoreFolder C:\Output\Dependencies \
--traceLevel Information
# 2. Pack with explicit version
uipcli solution pack C:\Solutions\MySolution \
--output C:\Output \
--version 1.2.3 \
--traceLevel Verbose
Ubicación de salida del paquete
El archivo .zip empaquetado se coloca en el directorio especificado por --output. Si el directorio no existe, se creará automáticamente.
Rutas de salida típicas
Azure DevOps
--output $(Build.ArtifactStagingDirectory)
--output $(Build.ArtifactStagingDirectory)
Acciones de GitHub
--output ${{ runner.temp }}/packages
--output ${{ runner.temp }}/packages
Jenkins
--output ${WORKSPACE}/output
--output ${WORKSPACE}/output
Próximos pasos
Después de empacar, puedes:
- Carga el paquete en Gestión de soluciones.
- Almacénalo como un artefacto de compilación en tu plataforma CI/CD.
- Versionarlo en un repositorio de artefactos (Artifactory, Azure Artifacts, etc.).
- Sintaxis del comando
- Parámetros
- Ejemplo
- Ejemplo de parámetro completo
- Requisito de versión
- Patrones de versiones típicos en CI/CD
- Formato de versión
- Integración de procesos
- Ejemplo de Azure DevOps
- Ejemplo de acciones de GitHub
- Qué se empaqueta
- Empaquetado después de la restauración
- Ubicación de salida del paquete
- Rutas de salida típicas
- Próximos pasos