- Visão geral
- Introdução
- Instalando o UiPath CLI
- Primeiros comandos (início rápido)
- Seu primeiro pipeline
- Conceitos
- Usando o UiPath CLI
- UiPath para agentes de codificação
- Guias de instruções
- Receitas de CI/CD
- Referência de comando
- Visão geral
- Códigos de saída
- Opções globais
- Agente de código uip
- Documento da UIP
- adicionar-tipo-dados-de-teste
- adicionar-dados-de-teste-fila
- adicionar-teste-variação de dados
- Analisar
- Criar
- criar projeto
- Comparação
- encontrar atividades
- obter-analisador-regras
- obter-padrão-atividade-xaml
- obter-erros
- obter-casos-de-teste-manuais
- obter-etapas-de-teste-manual
- Obter versões
- obter-fluxo-de-trabalho-exemplo
- indicar aplicativo
- indicar elemento
- inspecionar pacote
- instalar-data-fabric-entities
- instalar-ou-atualizar pacotes
- listar-data-fabric-entities
- listar-exemplos-de-fluxo-de-trabalho
- Empacotar
- restore
- arquivo de execução
- modelos-pesquisar
- Iniciar Studio
- interromper a execução
- UIA
- Traces da UIP
- Migração
- Referência e suporte
Guia do usuário da UiPath CLI
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 packaceita qualquer uma de duas formas (correspondendo ao própriosolution pack --helpda CLI):- um diretório de solução contendo um descritor de solução
.uipx(o caso comum — o que o Studio grava e o queuip solution newcria), ou - um arquivo
.uisindependente (um artefato da Solução pré-empacotado).
- um diretório de solução contendo um descritor de solução
- 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:
uip solution packproduza um pacote.zipcom versão do diretório da solução.uip solution publish— carregue o.zippara o feed de solução do tenant.uip solution deploy runcrie 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.
uipo cria se estiver ausente.
Sinalizadores:
--nameo 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.
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):
--nameo nome da implantação (não o nome do pacote). Use algo significativo; isso identifica a implantação para futuras chamadasdeploy status/deploy activate.--package-name,--package-version— corresponda ao que você publicou na Etapa 2.--folder-namea pasta do Orchestrator a ser criada para essa implantação.--folder-patho caminho da pasta pai.Sharedé a raiz do tenant.--folder-keyo GUID da pasta pai; use isso em vez de--folder-pathse 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.
--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.json — não uma solução), o pipeline clássico é pack a .nupkg → upload to a feed → create 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
- Como fazer: implantar no Orchestrator a partir de CI — variantes por plataforma de CI.
- Receitas de CI/CD: Azure DevOps, GitHub Actions, Jenkins, GitLab.
- referência da solução uip — cada subcomando
solution. - Empacotar e publicar uma solução (Instruções) — cobertura mais profunda, incluindo estratégia de controle de versão e promoção de vários ambientes.