操作方法:在部署时重用现有 Orchestrator 资源
从 CI/CD 管道部署解决方案时,重用现有的 Orchestrator 连接、资产或队列,而不是配置新的连接、资产或队列。
部署解决方案时,系统会在部署文件夹中全新配置其声明的每项资源(队列、资产、流程、连接)。通常,您在目标环境中已有共享资源,例如与外部系统的连接,并且您希望部署重用该资源,而不是创建新的资源。
在 Orchestrator 用户界面中,您可以通过在手动部署和链接资源时选择“自定义”来完成此操作。该手动步骤不会转换为无人值守的管道。CLI 等效项是获取部署配置,链接该文件中的资源,然后将文件传递给deploy run 。
config link 将一个已声明的资源绑定到现有资源。要使每个资源重用现有对应资源,请参阅下方的重用每个资源。
先决条件
- 租户中已发布的解决方案包。请参阅打包和发布解决方案。
- 为客户端凭据身份验证配置的外部应用程序,具有以下作用域:
AutomationSolutions、Solutions.Deployments、Solutions.Packages、OR.Folders、RCS.FolderAuthorization。请参阅身份验证 — 流程2 。需要OR.Folders和RCS.FolderAuthorization,以便 CLI 可以解析和绑定 Orchestrator 文件夹中的资源。 - 分配给保存现有资源的 Orchestrator 文件夹的外部应用程序。
步骤
-
使用外部应用程序进行身份验证。
uip login \ --client-id env.UIPATH_CLIENT_ID \ --client-secret env.UIPATH_CLIENT_SECRET \ --tenant "$UIPATH_TENANT"uip login \ --client-id env.UIPATH_CLIENT_ID \ --client-secret env.UIPATH_CLIENT_SECRET \ --tenant "$UIPATH_TENANT" -
下载包的部署配置。
uip solution deploy config get "my-package" \ --package-version 1.0.0 \ -d ./deploy-config.jsonuip solution deploy config get "my-package" \ --package-version 1.0.0 \ -d ./deploy-config.json -
将解决方案资源链接到现有的 Orchestrator 资源。使用配置文件中显示的资源名称,并将
--folder-path指向现有资源所在的文件夹。uip solution deploy config link ./deploy-config.json "MyConnection" \ --name "SharedCrmConnection" \ --folder-path "Shared"uip solution deploy config link ./deploy-config.json "MyConnection" \ --name "SharedCrmConnection" \ --folder-path "Shared" -
使用编辑后的配置部署包。
uip solution deploy run \ --name "my-deployment" \ --package-name "my-package" \ --package-version 1.0.0 \ --folder-name "MySolution" \ --parent-folder-path "Shared" \ --config-file ./deploy-config.jsonuip solution deploy run \ --name "my-deployment" \ --package-name "my-package" \ --package-version 1.0.0 \ --folder-name "MySolution" \ --parent-folder-path "Shared" \ --config-file ./deploy-config.json
部署会重用链接的资源,并且不会在部署文件夹中新建资源。
在config link , --folder-path是现有资源所在的位置。deploy run将在--parent-folder-path中创建部署文件夹。它们是单独子命令上的单独标志。
连接:将选择推迟到运行时
对于连接资源,链接现有连接不是唯一的选项。如果在部署配置中将连接的 authenticationType 设置为 ConfigurableByUsers,则可以将该连接保留为未绑定,并将其选择和身份验证推迟到执行时 — 用户在自动化运行时选择连接并进行身份验证。这也是有效的激活配置。
authenticationType 接受两个值:ConfigurableByUsers(在运行时交给用户)和 AuthenticateAfterDeployment(必须在部署后对连接进行身份验证)。使用 AuthenticateAfterDeployment,如果在激活运行时连接未通过身份验证,则激活将报告为失败。
重用所有资源
当您希望整个部署重用现有资源而不是创建新资源时,请在部署前通过一次调用设置所有资源的冲突策略。
-
在配置文件中设置每个资源的冲突策略。
uip solution deploy config set ./deploy-config.json --all conflictFixingAction UseExistinguip solution deploy config set ./deploy-config.json --all conflictFixingAction UseExisting -
将同一文件传递给
deploy run --config-file,如步骤 4中所示。
另请参阅
uip solution deploy— 对config get、config link、config set和deploy run的引用。- 管理 Orchestrator 资产和队列— 创建稍后链接到的资源。
- 从 CI 部署到 Orchestrator — 此密钥所属的管道的身份验证、缓存和版本固定。
- 身份验证— 此处使用的外部应用程序流程。