UiPath Documentation
uipath-cli
latest
false
Guía del usuario de UiPath CLI
Importante :
Este contenido se ha traducido mediante traducción automática. La localización de contenidos recién publicados puede tardar entre una y dos semanas en estar disponible.

Su primer proceso

Empaque, publique e implemente una solución de UiPath en Orchestrator de extremo a extremo utilizando la herramienta `solución uip`.

Esta página muestra cómo tomar una solución de UiPath en el disco y enviarla a Orchestrator de principio a fin: empaquetarla localmente, publicarla en la fuente de soluciones de tu tenant e implementarla en una carpeta. Utiliza la herramienta solution , que funciona igual desde un portátil de desarrollador y desde un proceso de CI.

Lo que necesitas ​

  • UiPath CLI instalado y una sesión iniciada. Consulta Instalar UiPath CLI y autenticación.
  • Una solución de UiPath en disco. uip solution pack acepta cualquiera de las dos formas (que coincide con la propia solution pack --help de CLI):
    • un directorio de soluciones que contiene un descriptor de soluciones .uipx (el caso común: lo que escribe Studio y lo que crea uip solution init ), o
    • un archivo.uis independiente (un artefacto de solución preempaquetado).
  • Una ruta de carpeta de Orchestrator donde quieres implementar la solución (por ejemplo, Shared/MySolutionFolder).

El flujo​

Tres comandos, cada uno un paso independiente para que puedas ejecutarlos de forma independiente en un proceso de CI:

  1. uip solution pack — produce un paquete .zip versionado desde el directorio de la solución.
  2. uip solution publish : carga .zip a la fuente de soluciones del tenant.
  3. uip solution deploy run — crea una carpeta e implementa el paquete publicado en Orchestrator.

Paso 1. Empaquetar la solución​

uip solution pack ./my-solution ./dist \
  --name my-solution \
  --version 1.0.0
uip solution pack ./my-solution ./dist \
  --name my-solution \
  --version 1.0.0

Argumentos:

  • El primer argumento posicional es el directorio de la solución (o un archivo .uis ).
  • El segundo es el directorio de salida. uip lo crea si falta.

Marcadores:

  • --name anula el nombre del paquete (predeterminado: el nombre del directorio de la solución).
  • --version establece la versión del paquete (predeterminado: 1.0.0). Utiliza el control de versiones semántico para mejorar la legibilidad y permitir que Orchestrator ordene las versiones correctamente.

En caso de éxito, se escribe ./dist/my-solution_1.0.0.zip. La respuesta JSON devuelve Data.Package (en name@version formato) y Data.Packages (la(s) .zip ruta(s) escrita(s)). La ruta .zip en sí sigue la convención {outputDir}/{name}_{version}.zip, por lo que los procesos pueden construirla sin analizar JSON:

NAME=my-solution
VERSION=1.0.0
uip solution pack ./my-solution ./dist --name "$NAME" --version "$VERSION"
PACKAGE="./dist/${NAME}_${VERSION}.zip"
NAME=my-solution
VERSION=1.0.0
uip solution pack ./my-solution ./dist --name "$NAME" --version "$VERSION"
PACKAGE="./dist/${NAME}_${VERSION}.zip"

Paso 2. Publicar en el tenant​

uip solution publish ./dist/my-solution_1.0.0.zip
uip solution publish ./dist/my-solution_1.0.0.zip

El paquete se carga en la fuente de soluciones del tenant. Orchestrator asigna un PackageVersionKey : la identidad de esta versión específica en el tenant. publish es idempotente por (name, version) : volver a ejecutarlo con la misma versión devuelve la versión existente en lugar de duplicarla.

Nota:

Folder feed support (--feed <name-or-key>) will be available in a future release.

Consejo:

If you are running against a specific tenant from a multi-tenant org, use --personal-workspace on publish to target your Personal Workspace feed within the tenant. pack only talks to a tenant when resolving NuGet dependencies from a feed. When in doubt, uip login status shows the tenant the CLI is currently bound to; switch it with uip login tenant set <tenant>.

Paso 3. Implementar en Orchestrator​

uip solution deploy run \
  --name MyFirstDeployment \
  --package-name my-solution \
  --package-version 1.0.0 \
  --folder-name MySolutionFolder \
  --parent-folder-path Shared
uip solution deploy run \
  --name MyFirstDeployment \
  --package-name my-solution \
  --package-version 1.0.0 \
  --folder-name MySolutionFolder \
  --parent-folder-path Shared

Marcadores (obligatorios a menos que se indique lo contrario):

  • --name : el nombre de la implementación (no el nombre del paquete). Usa algo significativo; esto identifica la implementación para futuras llamadas deploy status / deploy activate .
  • --package-name, --package-version : coincide con lo que publicaste en el paso 2.
  • --folder-name : la carpeta de Orchestrator que se creará para esta implementación.
  • --parent-folder-path : la ruta de la carpeta principal. Shared es la raíz del tenant.
  • --parent-folder-key : el GUID de la carpeta principal; utilízalo en lugar de --parent-folder-path si prefieres vincular por ID.

deploy run sondea Orchestrator hasta que la implementación alcanza un estado terminal (tiempo de espera de sondeo predeterminado 360 segundos, ajustable con --timeout). La respuesta incluye la ruta de la nueva carpeta y la clave de implementación.

Nota:

--name y --folder-name son dos cosas diferentes. --name nombra el registro de implementación; --folder-name nombra la nueva carpeta de Orchestrator que crea la implementación. Elegir el mismo valor para ambos está bien y es común.

Reuniéndolos en CI​

#!/usr/bin/env bash
set -euo pipefail

uip login \
  --client-id env.UIPATH_CLIENT_ID \
  --client-secret env.UIPATH_CLIENT_SECRET \
  --tenant "$UIPATH_TENANT"

uip solution pack ./my-solution ./dist --version "$BUILD_VERSION"
uip solution publish "./dist/my-solution_$BUILD_VERSION.zip"
uip solution deploy run \
  --name "my-solution-$GIT_SHA" \
  --package-name my-solution \
  --package-version "$BUILD_VERSION" \
  --folder-name MySolutionFolder \
  --parent-folder-path Shared
#!/usr/bin/env bash
set -euo pipefail

uip login \
  --client-id env.UIPATH_CLIENT_ID \
  --client-secret env.UIPATH_CLIENT_SECRET \
  --tenant "$UIPATH_TENANT"

uip solution pack ./my-solution ./dist --version "$BUILD_VERSION"
uip solution publish "./dist/my-solution_$BUILD_VERSION.zip"
uip solution deploy run \
  --name "my-solution-$GIT_SHA" \
  --package-name my-solution \
  --package-version "$BUILD_VERSION" \
  --folder-name MySolutionFolder \
  --parent-folder-path Shared

El script sale en el primer estado distinto de cero, por lo que un fallo en cualquier paso aborta la compilación. uip devuelve 0 en caso de éxito y 1 en caso de error; los comandos con semántica específica del dominio (por ejemplo, uip tm wait, que reutiliza 2 para el tiempo de espera) pueden devolver otros códigos; consulta Códigos de salida.

Después de la implementación​

Con la solución implementada, Orchestrator tiene una carpeta (Shared/MySolutionFolder), un proceso por proyecto implementable en la solución y todos los recursos asociados (activos, colas, desencadenadores). Ahora puedes:

# confirm the folder exists
uip or folders list --all --path "Shared/MySolutionFolder"

# find the processes that were created
uip or processes list --folder-path "Shared/MySolutionFolder"

# start a job
uip or jobs start <process-key>

# inspect the deployment
uip solution deploy status <pipeline-deployment-id>
# confirm the folder exists
uip or folders list --all --path "Shared/MySolutionFolder"

# find the processes that were created
uip or processes list --folder-path "Shared/MySolutionFolder"

# start a job
uip or jobs start <process-key>

# inspect the deployment
uip solution deploy status <pipeline-deployment-id>

¿Qué pasa con un solo proyecto de Studio?​

Para un solo proyecto de Studio (un directorio con project.json , no una solución), el proceso clásico es pack a .nupkg → upload to a feed → create a process. Ese flujo utiliza comandos de las herramientas rpa y or :

uip rpa pack ./MyStudioProject ./dist
uip or packages upload ./dist/MyStudioProject.1.0.0.nupkg
uip or processes create \
  --name MyProcess \
  --package-key MyStudioProject \
  --package-version 1.0.0 \
  --folder-path Shared
uip rpa pack ./MyStudioProject ./dist
uip or packages upload ./dist/MyStudioProject.1.0.0.nupkg
uip or processes create \
  --name MyProcess \
  --package-key MyStudioProject \
  --package-version 1.0.0 \
  --folder-path Shared

Consulta uip rpa y las referencias de paquetes y procesos de Orchestrator para obtener listas de marcadores completas.

Próximos pasos​

¿Te ha resultado útil esta página?

Conectar

¿Necesita ayuda? Soporte

¿Quiere aprender? UiPath Academy

¿Tiene alguna pregunta? Foro de UiPath

Manténgase actualizado