UiPath Documentation
uipath-cli
latest
false
Importante :
Este conteúdo foi traduzido com auxílio de tradução automática. A localização de um conteúdo recém-publicado pode levar de 1 a 2 semanas para ficar disponível.

Guia do usuário da UiPath CLI

Seu primeiro pipeline

Esta página mostra como pegar uma solução da UiPath em disco e enviá-la ao Orchestrator de ponta a ponta: empacotá -la localmente, publicá- la no feed de soluções do seu tenant e implantá- la em uma pasta. Ele usa a solution , que funciona da mesma forma a partir de um laptop de desenvolvedor e de um pipeline de CI.

O que você precisa

  • UiPath CLI instalado e uma sessão conectada. Consulte Instalação do UiPath CLI e Autenticação.
  • Uma Solução da UiPath no disco. uip solution pack aceita qualquer uma de duas formas (correspondendo ao próprio solution pack --help da CLI):
    • um diretório de solução contendo um descritor de solução .uipx (o caso comum — o que o Studio grava e o que uip solution new cria), ou
    • um arquivo.uis independente (um artefato da Solução pré-empacotado).
  • Um caminho de pasta do Orchestrator onde você deseja que a Solução seja implantada (por exemplo, Shared/MySolutionFolder).

O fluxo

Três comandos, cada um uma etapa separada, para que você possa executá-los de forma independente em um pipeline de CI:

  1. uip solution pack produza um pacote .zip com versão do diretório da solução.
  2. uip solution publish — carregue o .zip para o feed de solução do tenant.
  3. uip solution deploy run crie uma pasta e implante o pacote publicado no Orchestrator.

Etapa 1. Empacotar a solução

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:

  • O primeiro argumento posicional é o diretório da solução (ou um arquivo .uis ).
  • O segundo é o diretório de saída. uip o cria se estiver ausente.

Sinalizadores:

  • --name o nome do pacote (padrão: o nome do diretório da solução).
  • define a versão do pacote ( 1.0.0 --version . Use o controle de versão semântico para legibilidade e para permitir que o Orchestrator classifique as versões corretamente.

Em caso de ./dist/my-solution.1.0.0.zip , é escrito. A resposta JSON retorna Data.Package (formatado como name@version) e Data.Packages (os nomes de arquivo .nupkg internos). O caminho .zip em si segue a convenção {outputDir}/{name}.{version}.zip, para que os pipelines possam construí-lo sem analisar 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"

Etapa 2. Publique no tenant

uip solution publish ./dist/my-solution.1.0.0.zip
uip solution publish ./dist/my-solution.1.0.0.zip

O pacote é carregado no feed de solução do tenant. O Orchestrator atribui um PackageVersionKey — a identidade desta versão específica no tenant. publish é idempotent por (name, version) — reexecutá-lo com a mesma versão retorna a versão existente em vez de duplicar.

Dica:

Se você estiver executando em um tenant específico de uma organização com vários tenants, passe --tenant <tenant-name> para publish, pack é agnóstico de tenant. Em caso de dúvida, uip login status mostra o tenant ao qual a CLI está associada no momento.

Etapa 3. Implantar no Orchestrator

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

Sinalizadores (obrigatório a menos que indicado):

  • --name o nome da implantação (não o nome do pacote). Use algo significativo; isso identifica a implantação para futuras chamadas deploy status / deploy activate .
  • --package-name, --package-version — corresponda ao que você publicou na Etapa 2.
  • --folder-name a pasta do Orchestrator a ser criada para essa implantação.
  • --folder-path o caminho da pasta pai. Shared é a raiz do tenant.
  • --folder-key o GUID da pasta pai; use isso em vez de --folder-path se você preferir vincular por ID.

deploy run pesquisa o Orchestrator até que a implantação atinja um estado terminal (tempo limite de pesquisa padrão 360 segundos, configurável com --timeout). A resposta carrega o caminho da nova pasta e a chave de implantação.

Observação:

--name e --folder-name são duas coisas diferentes. --name nomeia o registro de implantação; --folder-name nomeia a nova pasta do Orchestrator que a implantação cria. Escolher o mesmo valor para ambos é bom e comum.

Combinando no 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 \
  --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 \
  --folder-path Shared

O script sai no primeiro status diferente de zero, então uma falha em qualquer etapa anula a compilação. uip retorna 0 em caso de sucesso e 1 em caso de falha; comandos com semântica específica do domínio (por exemplo, uip tm wait, que reutiliza 2 para tempo limite) podem retornar outros códigos — consulte Códigos de saída.

Após a implantação

Com a Solução implantada, o Orchestrator tem uma pasta (Shared/MySolutionFolder), um processo por projeto implantável na Solução e todos os recursos associados (ativos, filas, gatilhos). Agora você pode:

# 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 --deployment-key <deployment-key>
# 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 --deployment-key <deployment-key>

E um único projeto do Studio?

Para um único projeto do Studio (um diretório com project.jsonnão uma solução), o pipeline clássico é pack a .nupkgupload to a feedcreate a process. Esse fluxo usa comandos das ferramentas rpa e 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

Consulte uip rpa e as referências dos pacotes e processos do Orchestrator para obter listas completas de sinalizadores.

Próximas Etapas

Esta página foi útil?

Conectar

Precisa de ajuda? Suporte

Quer aprender? Academia UiPath

Tem perguntas? Fórum do UiPath

Fique por dentro das novidades