UiPath Documentation
uipath-cli
latest
false
Guia do usuário da UiPath CLI
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.

Pacote de solução uip

Sintaxe e opções para o "uip solution package", que produz um arquivo `.zip` implantável a partir de um diretório de soluções ou arquivo de pacote `.uis`.

produz um pacote uip solution pack .zip a partir de um diretório de soluções (contendo um manifesto .uipx ) ou de um arquivo pacote .uis . O arquivo resultante é o que uip solution publish carrega no feed do tenant, que uip solution deploy run pode implantar.

Pack is an offline operation — it does not contact Orchestrator except to resolve NuGet dependencies from tenant feeds (or an Orchestrator folder's library feed via --feed-folder), and does not contact AutomationOps except when a governance flag or --ignored-rules is passed while you are signed in — so it is safe to run inside build steps that do not yet have full credentials, as long as dependency resolution is covered.

Resumo​

uip solution pack <solutionPath> [outputPath] \
  [--name <name>] [--version <version>] \
  [--project <id-or-path> [--package-id <id>]] \
  [--dry-run] \
  [--skip-analyze] [--ignored-rules <rules>] [--governance-file-path <path>] [--governance-product <product>] \
  [--nuget-sources-config-path <path>] [--exclude-configured-sources] [--feed-folder <name>] \
  [--signing-certificate-path <path>] [--signing-certificate-password <password>] [--signing-timestamp-server <url>] \
  [--author <text>] [--description <text>] [--release-notes <text>] [--project-url <url>] \
  [--repository-url <url>] [--repository-commit <sha>] [--repository-branch <branch>] [--repository-type <type>] \
  [--login-validity <minutes>]
uip solution pack <solutionPath> [outputPath] \
  [--name <name>] [--version <version>] \
  [--project <id-or-path> [--package-id <id>]] \
  [--dry-run] \
  [--skip-analyze] [--ignored-rules <rules>] [--governance-file-path <path>] [--governance-product <product>] \
  [--nuget-sources-config-path <path>] [--exclude-configured-sources] [--feed-folder <name>] \
  [--signing-certificate-path <path>] [--signing-certificate-password <password>] [--signing-timestamp-server <url>] \
  [--author <text>] [--description <text>] [--release-notes <text>] [--project-url <url>] \
  [--repository-url <url>] [--repository-commit <sha>] [--repository-branch <branch>] [--repository-type <type>] \
  [--login-validity <minutes>]

O comando honra as opções globais e retorna os códigos de saída padrão.

Argumentos​

  • <solutionPath> (necessário) — Caminho para um diretório de solução (contendo um manifesto .uipx ) ou um arquivo .uis .
  • [outputPath] opcional) — Diretório de saída onde o pacote .zip será escrito. Obrigatório, a menos que --dry-run esteja definido — omiti-lo sem --dry-run falha com um ponteiro para adicionar um ou outro.

Opções​

LongValorPadrãoDescription
-n, --name <name>textnome da pasta da solução (ou nome base do arquivo .uis)Nome do pacote. O .zip empacotado é nomeado <name>_<version>.zip.
-v, --version <version>text1.0.0Versão do pacote. Aparece no nome do arquivo de saída e é o valor passado para --package-version em deploy run.
--project <id-or-path>project Id or path—Pack only this project of the solution into its own .nupkg, instead of the solution .zip. Takes the project's Id from the .uipx, or its path relative to the solution folder; separators and case are ignored. The project packs as a stand-alone project, so no solution resources go into it. Not supported for a .uis file, and cannot be combined with --name. Refer to Pack one project.
--package-id <id>textthe id a whole-solution pack gives the projectPackage id for the project packed with --project. Without it, the project keeps the id a whole-solution pack gives it: the one the solution saved, else <solution>.<type>.<project folder>. Requires --project.
--dry-runBandeiradesativadaExecute o pipeline completo do pacote (sincronização de recursos, emissão de dependência de runtime, validação de opções do empacotador) em uma cópia temporária descartável e descarte a saída. Pega falhas de tempo de empacotamento — uma dependência ausente, uma associação de recurso quebrada, um tipo de projeto desempacotado — sem produzir um .zip ou escrever qualquer coisa de volta na solução. Ele não inspeciona o conteúdo do pacote produzido, portanto, não pode garantir que o feed da solução aceitará o resultado. Torna [outputPath] opcional.
--login-validity <minutes>minutos10Minimum minutes before token expiration to trigger a refresh. Only relevant when dependency resolution needs a tenant feed, or when the tenant's governance policy is checked.

Resolução de dependência​

LongValorPadrãoDescription
--nuget-sources-config-path <path>Path—Caminho para um arquivo de configuração de origens do NuGet para resolver dependências do projeto.
--exclude-configured-sourcesBandeiradesativadaResolver dependências apenas de feeds de tenant e --nuget-sources-config-path. Solta os feeds UiPath e nuget.org integrados — uma dependência fora desses feeds não será restaurada.
--feed-folder <name>Nome ou caminho—Resolva dependências do feed de biblioteca desta pasta do Orchestrator em vez de cada feed de tenant. Aceita um nome de pasta ou caminho totalmente qualificado.

Análise de governança​

--skip-analyze, --ignored-rules, --governance-file-path, and --governance-product control the workflow analyzer that runs against every RPA project in the solution. The flags can be combined.

LongValorPadrãoDescription
--skip-analyzeBandeiradesativadaIgnorar o analisador de fluxo de trabalho para todos os projetos de RPA. Compilação e validação ainda em execução — apenas as regras do analisador são ignoradas.
--ignored-rules <rules>comma-separated rule IDs—Analyzer rule IDs whose findings are ignored for every RPA project, for example ST-USG-034,ST-MRD-002. Repeat the flag to add more. The rules still run, but their findings are not reported and do not fail the pack. Applies on top of --governance-file-path or the shipped rules. When the signed-in tenant publishes an AutomationOps policy, the list is not applied and a warning says so.
--governance-file-path <path>Path—Analyze every RPA project against this local governance policy file instead of the analyzer rules shipped with the WorkflowCompiler. Accepts a policy exported from AutomationOps or a Studio rules-configuration file. When you are signed in, the tenant is asked first (about StudioWeb, unless --governance-product names another product). When the tenant publishes a policy of its own, that policy is used, this file is ignored with a warning, and the pack continues. When the tenant publishes no policy, when it cannot be asked, or when its policy service does not answer, this file is used. The file is read before the tenant is asked, so an unreadable or non-JSON file fails the pack in every case.
--governance-product <product>text—Analise cada projeto de RPA em relação à política de governança publicada no AutomationOps para o tenant conectado. O valor é o produto cuja política é baixada — por exemplo, StudioWeb, Development, Business.

Um valor vazio para qualquer sinalizador de governança (--governance-file-path "") é rejeitado como um erro, e não é tratado silenciosamente como "sem sinalizador".

Assinatura do pacote​

A assinatura do .nupkg de um projeto já empacotado requer a CLI dotnet em PATH.

LongValorPadrãoDescription
--signing-certificate-path <path>Path—Caminho para um certificado de assinatura de código .pfx. Quando definido, cada projeto empacotado .nupkg na solução é assinado antes de ser agrupado na solução .zip.
--signing-certificate-password <password>texto ou env.VAR—Senha do certificado. Passe env.ENV_NAME para ler uma variável de ambiente em vez do histórico do shell.
--signing-timestamp-server <url>URL—URL do servidor de carimbo de data/hora para a assinatura.

Metadados do pacote (rastreabilidade da origem)​

These flags stamp traceability metadata into a package.metadata.json file at the archive root and into each project's .nuspec. None are required. When --author or --description is omitted, each member project keeps the value its own project file declares, and falls back to UiPath / Created by UiPath when it declares none.

LongValorPadrãoDescription
--author <text>texteach project's own author, else UiPathPackage author. When set, applies to every member project.
--description <text>texteach project's own description, else Created by UiPathPackage description. When set, applies to every member project.
--release-notes <text>text—Notas de versão para o pacote.
--project-url <url>URL—URL da ideia do Automation Hub.
--repository-url <url>URL—URL do repositório de origem.
--repository-commit <sha>text—Hash de confirmação do repositório de origem.
--repository-branch <branch>text—Ramificação do repositório de origem.
--repository-type <type>textgit (quando --repository-url está definido)Tipo de repositório de origem. Gravado apenas quando --repository-url também está definido.

Exemplos​

Mínimo​

uip solution pack ./my-solution ./dist
uip solution pack ./my-solution ./dist

Empacota a solução em ./my-solution em ./dist/my-solution_1.0.0.zip (versão padrão).

Comum — o nome fixo e a versão para uma compilação de CI​

uip solution pack ./my-solution ./dist --name invoices --version 1.2.0
uip solution pack ./my-solution ./dist --name invoices --version 1.2.0

Grava ./dist/invoices_1.2.0.zip.

Validar sem empacotar​

uip solution pack ./my-solution --dry-run
uip solution pack ./my-solution --dry-run

Executa o pipeline completo do pacote em um diretório temporário e descarta a saída — útil como uma porta de pré-implantação no CI, pois captura erros de associação de recursos, referência de variável e dependência de runtime sem precisar de outputPath um.

Metadados de rastreabilidade de origem do carimbo​

uip solution pack ./my-solution ./dist --version 1.2.0 \
  --repository-url https://github.com/acme/repo \
  --repository-commit abc123 \
  --repository-branch main \
  --release-notes "v1.2.0"
uip solution pack ./my-solution ./dist --version 1.2.0 \
  --repository-url https://github.com/acme/repo \
  --repository-commit abc123 \
  --repository-branch main \
  --release-notes "v1.2.0"

Assinar projetos empacotados​

uip solution pack ./my-solution ./dist --version 1.2.0 \
  --signing-certificate-path ./cert.pfx \
  --signing-certificate-password env.UIPATH_SIGNING_CERTIFICATE_PASSWORD \
  --signing-timestamp-server http://timestamp.digicert.com
uip solution pack ./my-solution ./dist --version 1.2.0 \
  --signing-certificate-path ./cert.pfx \
  --signing-certificate-password env.UIPATH_SIGNING_CERTIFICATE_PASSWORD \
  --signing-timestamp-server http://timestamp.digicert.com

Ignorar o analisador de fluxo de trabalho​

uip solution pack ./my-solution ./dist --version 1.2.0 --skip-analyze
uip solution pack ./my-solution ./dist --version 1.2.0 --skip-analyze

Compilação e validação ainda em execução — apenas as regras do analisador são ignoradas.

Analisar com base em uma política de governança do tenant​

uip solution pack ./my-solution ./dist --version 1.2.0 --governance-product Development
uip solution pack ./my-solution ./dist --version 1.2.0 --governance-product Development

Ignore specific analyzer rules​

uip solution pack ./my-solution ./dist --version 1.2.0 --ignored-rules ST-USG-034,ST-MRD-002
uip solution pack ./my-solution ./dist --version 1.2.0 --ignored-rules ST-USG-034,ST-MRD-002

The rules still run, but their findings do not fail the pack. The list is not applied when the tenant publishes an AutomationOps policy.

Pack one project​

uip solution pack ./my-solution ./dist --project MyProcess --package-id Acme.MyProcess --version 1.2.0
uip solution pack ./my-solution ./dist --project MyProcess --package-id Acme.MyProcess --version 1.2.0

--project produces the project's .nupkg instead of the solution .zip, for example to publish one project to an Orchestrator feed on its own. --name names the solution .zip, so it cannot be used with --project; --package-id names the project package.

Scripting — capture o caminho de saída para a etapa de publicação​

PKG=$(uip solution pack ./my-solution ./dist --version 1.2.0 --output-filter "Packages" --output plain)
uip solution publish "$PKG"
PKG=$(uip solution pack ./my-solution ./dist --version 1.2.0 --output-filter "Packages" --output plain)
uip solution publish "$PKG"

Formato dos dados (--output json)​

Pacote real:

{
  "Code": "SolutionPack",
  "Data": {
    "Package": "my-solution@1.2.0",
    "Packages": "./dist/my-solution_1.2.0.zip"
  }
}
{
  "Code": "SolutionPack",
  "Data": {
    "Package": "my-solution@1.2.0",
    "Packages": "./dist/my-solution_1.2.0.zip"
  }
}
  • Package — identificador <name>@<version> para a solução empacotada.
  • Packages — lista separada por vírgulas de .zip caminho(s) escrito(s) para <outputPath>. Normalmente, um único caminho.

Simulação (--dry-run):

{
  "Code": "SolutionPack",
  "Data": {
    "Package": "my-solution@1.0.0",
    "DryRun": true,
    "Status": "Valid"
  }
}
{
  "Code": "SolutionPack",
  "Data": {
    "Package": "my-solution@1.0.0",
    "DryRun": true,
    "Status": "Valid"
  }
}

When the pack fails and the packager reports per-project results, the failure envelope carries Data.Projects, one entry per member project:

CampoDescription
PathThe project directory, relative to the solution directory, with forward slashes.
TypeThe project type.
ResultSuccess ou Failure.
MessageThe project's result message, when it has one.
FindingsThe project's findings. Each finding can carry Level, Source (Other, Analyzer, Validator, or Compiler), ErrorCode, RuleName, Description, FilePath, ActivityIdRef, and DocumentationLink.

Data.Projects is omitted when the failure belongs to no project.

Com --project:

{
  "Code": "SolutionPack",
  "Data": {
    "Package": "Acme.MyProcess@1.2.0",
    "Packages": "/home/me/dist/Acme.MyProcess.1.2.0.nupkg"
  }
}
{
  "Code": "SolutionPack",
  "Data": {
    "Package": "Acme.MyProcess@1.2.0",
    "Packages": "/home/me/dist/Acme.MyProcess.1.2.0.nupkg"
  }
}
  • Package — <package-id>@<version> of the packed project.
  • Packages — absolute path of the .nupkg.

Tipos de Projeto​

Pack hands each member project to the packager tool for its project type. Some project types have their own pack behavior:

Tipo de ProjetoPack behavior
FluxoThe .flow file is checked against the Maestro designer's validation rules. A flow with errors fails the pack. Every issue, warnings included, is reported as a finding, with ActivityIdRef naming the node.
Regras de NegóciosPacked as a .uirule archive named <rule-name>-<version>.uirule, holding the rule's .dmn files and an entry-points.json derived from them.
Data Fabric entitiesValidated only: pack checks that every entity definition is intact and its schema is valid. The entity definition resources are the deployable payload, so no separate package is produced for the project.

Modos de falha​

  • --project that does not resolve. A project Id or path that is not in the .uipx, that matches more than one project, that points outside the solution folder, or that sits at the solution root is refused with ErrorCode: invalid_argument. The message lists the solution's project Id values and paths to pick from.
  • --project with a .uis file, or with --name. Refused: --project packs a project out of a solution folder, and --name names the solution .zip that --project does not produce. --package-id names the project package.
  • --package-id without --project, or an empty --project or --package-id. Refused.
  • outputPath ausente sem --dry-run. Falha com um ponteiro para fornecer um diretório de saída ou passar --dry-run.
  • Empty governance flag value. An empty value for --governance-file-path or --governance-product is rejected.
  • Unusable governance policy file. A --governance-file-path file that cannot be read or is not JSON fails the pack. So does a file that holds only the inner policy of an AutomationOps export; pass the exported file as-is.
  • Member package ID collision. A member's package ID is composed as <solution>.<project-type>.<member-folder>, capped at 100 characters, and must be unique across the solution. Spaces and dots collapse to a single dot, and IDs are compared case-insensitively. When two members compose the same ID, the pack fails with ErrorCode: invalid_argument, naming the ID and the folders that produced it. The <solution> part is the .uipx file's own name; --name renames the archive only and does not change member IDs. Rename the member folder or the .uipx, then pack again.
  • Project failure. A project that fails compilation, validation, or analysis fails the pack. Data.Projects names the project and its findings.
  • Caminho de saída dentro de um diretório de projeto membro. Recusado — qualquer coisa escrita lá será empacotada no próprio pacote desse projeto no próximo pacote. Escolha um caminho de saída fora dos diretórios do projeto da solução (por exemplo, ./out na raiz da solução ou um diretório totalmente fora da solução).
  • Tipo de projeto desempacotado. Nomeia o tipo de projeto e aponta para uip tools search / uip tools install <tool> para adicionar a ferramenta de empacotamento que gerencia isso (ou uip update primeiro, se for um tipo recém-adicionado).
  • uip solution publish — carrega o .zip empacotado para o feed da solução do tenant.
  • uip solution upload — caminho alternativo que carrega a solução no Studio Web para edição interativa em vez de empacotá-la para implantação.
  • uip solution deploy run — implanta um pacote publicado no Orchestrator.

Veja também​

Esta página foi útil?

Conectar

Precisa de ajuda? Suporte(opens in new window)

Quer aprender? Academia UiPath(opens in new window)

Tem perguntas? Fórum do UiPath(opens in new window)

Fique por dentro das novidades