cicd-integrations
2025.10
true
CI/CD 集成用户指南
- 概述
- UiPath CLI
- Azure DevOps 扩展程序
- Jenkins 插件
重要 :
请注意,此内容已使用机器翻译进行了部分本地化。
新发布内容的本地化可能需要 1-2 周的时间才能完成。
在 Orchestrator 中运行作业
先决条件
- 在 Orchestrator 中创建流程。
- 运行 CLI
exe(对于 Windows 旧版)或dll(对于 Windows/Linux/macOS)文件。 - 添加所需的 Orchestrator API 访问应用程序作用域。
要在 Orchestrator 中运行作业,请执行以下步骤:
- 使用
uipcli job运行job任务。现在,您可以看到一个可用子任务的列表。 - 指定所需的参数并运行
run子任务。下表介绍了必需参数。
| 参数 | 描述 |
|---|---|
Process Name (pos. 0) (必填) | 要运行的流程的名称。 |
Orchestrator URL (pos. 1) (必填) | Orchestrator 实例的 URL。 |
Orchestrator Tenant (pos. 2) | 要在其中运行流程的 Orchestrator 实例的租户。以Automation Cloud为目标时为必需。对于Automation Suite和独立 Orchestrator (内部部署 MSI)为可选,其中租户是 URL 的一部分。 |
-i 或--input_path (仅在工作流的入口点具有输入参数时才需要) | 要运行的流程对应的 JSON 输入文件的完整路径。有关文件结构的详细信息,请参阅输入参数 JSON 格式。 |
-P , or --priority | 要运行作业的优先级:- 低。- 正常(默认)。- 高。 |
-r , or --robots | 特定机器人名称的列表,以逗号分隔。 |
-j , or --jobscount | 要运行流程的次数。 流程运行的默认次数为 1。 |
-U , or --user | 用户名。此用户不可为计算机用户或 Orchestrator 用户。对于本地用户,用户名格式应为“计算机名称\用户名” 。 |
-M , or --machine | 要在其上运行流程的计算机的名称。 |
-R , or --result_path | 要存储作业结果的 JSON 文件或文件夹的完整路径。 结果以 JSON 文件形式返回。 |
-W , or --timeout | 作业执行的超时 (秒)。 默认值为 1800 秒。 |
-f , or --fail_when_job_fails | 一个作业失败时,该命令将失败,默认值为True 。 |
-w , or --wait | 命令会等待作业完成。默认情况下为True 。 |
-b 、 --job_type (仅适用于新式文件夹)。 | 作业的运行时类型。默认值为 支持的值:
|
-u 或--username (如果通过用户名和密码使用基本身份验证,则为必需) | 用于向 Orchestrator 进行身份验证的用户名。 您必须将其与相应的密码配对。 |
-p 或--password (如果通过用户名和密码使用基本身份验证,则为必需) | 用于对 Orchestrator 进行身份验证的密码。您必须将其与相应的用户名配对。 |
-t 或--token (如果使用 基于令牌的身份验证 , 则为必填项 ) | 用于对 Orchestrator 进行身份验证的OAuth2 刷新令牌。您必须将其与帐户名称和客户端 ID配对。 |
-a 或--accountName (如果使用 基于令牌的身份验证 , 则为必填项 ) | Orchestrator CloudRPA 帐户名称。您必须将其与OAuth2 刷新令牌和客户端 ID配对。 |
-A , or --accountForApp | Orchestrator CloudRPA 帐户名称(组织名称)。您必须将其与外部应用程序的应用程序 ID、应用程序密码和应用程序作用域配对。 |
-I 或--applicationId (如果使用 外部应用程序身份验证 , 则为必填项 ) | 外部应用程序 ID。您必须将其与“应用程序帐户”、“应用程序密码”和“应用程序作用域”配对。 |
-S 或--applicationSecret (如果使用 外部应用程序身份验证 , 则为必填项 ) | 外部应用程序密码。您必须将其与“应用程序帐户”、“应用程序 ID”和“应用程序作用域”配对。 |
--applicationScope (如果使用 外部应用程序身份验证, 则为必填项 ) | 应用程序作用域列表,以单个空格分隔。在使用外部应用程序身份验证时为可选,因为系统会自动应用默认作用域。您必须将其与外部应用程序的“应用程序帐户”、 “应用程序 ID”和“应用程序密码”配对。 |
-o , or --organizationUnit | Orchestrator 文件夹(组织单元)的名称。 要输入子文件夹,请确保同时输入父文件夹的名称和子文件夹的名称。例如,AccountingTeam\TeamJohn。 |
-l , --language | Orchestrator 语言。 |
-y , --disableTelemetry | 禁用遥测数据。 |
|
| 显示事件的跟踪。 |
--identityUrl | 身份服务器的 URL。当 Orchestrator 在UiPath Automation Suite或独立 Orchestrator (内部部署 MSI)上运行时为必需。Automation Cloud不需要 — CLI 从云 URL 解析身份服务器。 |
--ca-cert | 验证 Orchestrator 和 Identity Server TLS 证书时使用的一个或多个受信任的根 CA 证书文件(PEM、DER 或 PKCS#7)。重复标记或用逗号分隔多个路径。有关详细信息,请参阅信任自定义证书。 |
--pinnedpubkey | 固定服务器叶证书的公钥。格式: sha256//<base64> 。除标准证书验证以外进行检查。有关详细信息,请参阅信任自定义证书。 |
提示:
对于私有证书颁发机构签名的 Orchestrator 实例(例如 UiPath Automation Suite),此命令也接受--ca-cert和--pinnedpubkey参数。有关场景和示例,请参阅信任自定义证书。
备注:
在不指定--applicationScope参数的情况下使用外部应用程序身份验证时,CLI 会自动应用这些默认的 Orchestrator 作用域:
OR.Assets OR.BackgroundTasks OR.Execution OR.Folders OR.Robots.Read OR.Machines.Read OR.Jobs OR.TestSets OR.TestSetExecutions OR.Monitoring OR.Settings.Read
警告:
在 PowerShell 脚本中使用--applicationSecret参数时,特殊字符(例如$可能会导致意外行为,原因是 PowerShell 在双引号字符串中扩展了变量。
传递--applicationSecret参数时,请使用单引号 ( '' ) 代替双引号 ( "" ),以防止 PowerShell 解释特殊字符 :
# Correct - single quotes treat the string literally
uipcli job run ProcessName "https://cloud.uipath.com/" "default" -A "myOrg" -I "app-id" -S 'mySecret$123' -o "MyFolder"
# Incorrect - double quotes allow variable expansion
uipcli job run ProcessName "https://cloud.uipath.com/" "default" -A "myOrg" -I "app-id" -S "mySecret$123" -o "MyFolder"
# Correct - single quotes treat the string literally
uipcli job run ProcessName "https://cloud.uipath.com/" "default" -A "myOrg" -I "app-id" -S 'mySecret$123' -o "MyFolder"
# Incorrect - double quotes allow variable expansion
uipcli job run ProcessName "https://cloud.uipath.com/" "default" -A "myOrg" -I "app-id" -S "mySecret$123" -o "MyFolder"
用法
uipcli job run <process_name> <orchestrator_url> <orchestrator_tenant> [-i <input_path>] [-j <jobscount>] [-R <result_path>] [-P <Low|Normal|High>] [-r <robots>] [-f <false|true>] [-W <timeout>] [-w <false|true>] [-u <orchestrator_user> -p <orchestrator_pass>] [-t <auth_token> -a <account_name>] [-A <organization_name> -I <application_id> -S <application_secret> --applicationScope <application_scope>] [-o <folder_name>] [-l <language>] [--user <machine_user> --machine <machine_host_name>] [--job_type <RuntimeType>] [--traceLevel <None|Critical|Error|Warning|Information|Verbose>] [--identityUrl <identityUrl>]
uipcli job run <process_name> <orchestrator_url> <orchestrator_tenant> [-i <input_path>] [-j <jobscount>] [-R <result_path>] [-P <Low|Normal|High>] [-r <robots>] [-f <false|true>] [-W <timeout>] [-w <false|true>] [-u <orchestrator_user> -p <orchestrator_pass>] [-t <auth_token> -a <account_name>] [-A <organization_name> -I <application_id> -S <application_secret> --applicationScope <application_scope>] [-o <folder_name>] [-l <language>] [--user <machine_user> --machine <machine_host_name>] [--job_type <RuntimeType>] [--traceLevel <None|Critical|Error|Warning|Information|Verbose>] [--identityUrl <identityUrl>]
最少命令示例
uipcli job run ProcessName "https://orch-23-10-paas.cloudapp.azure.com/" "TenantName" -u "orchestratorUsername" -p "********" -o "FolderName" --traceLevel "Information"uipcli job run ProcessName "https://orch-23-10-paas.cloudapp.azure.com/" "TenantName" -I "76000552-3e4f-4590-9317-cdb420001f1d" -S '********' --applicationScope "OR.Folders OR.BackgroundTasks OR.TestSets OR.TestSetExecutions OR.TestSetSchedules OR.Settings.Read OR.Robots.Read OR.Machines.Read OR.Execution OR.Assets OR.Users.Read OR.Jobs OR.Monitoring" --identityUrl "https://orch-23-10-paas.cloudapp.azure.com/identity" -o "FolderName" --traceLevel "Information"uipcli job run ProcessName "https://automation-suite.base.url.com/" "TenantName" -A "organizationName" -I "3f6239b9-e0e8-465e-a429-d9ffd1d9e57a" -S '********' --applicationScope "OR.Folders OR.BackgroundTasks OR.TestSets OR.TestSetExecutions OR.TestSetSchedules OR.Settings.Read OR.Robots.Read OR.Machines.Read OR.Execution OR.Assets OR.Users.Read OR.Jobs OR.Monitoring" -o "FolderName" --traceLevel "Information"uipcli job run ProcessName "https://cloud.uipath.com/" "TenantName" -A "organizationName" -I "becc663c-8f1e-409a-a75f-c00330d80bc8" -S '********' --applicationScope "OR.Folders OR.BackgroundTasks OR.TestSets OR.TestSetExecutions OR.TestSetSchedules OR.Settings.Read OR.Robots.Read OR.Machines.Read OR.Execution OR.Assets OR.Users.Read OR.Jobs OR.Monitoring" -o "FolderName" --traceLevel "Information"