cicd-integrations
2025.10
true
CI/CD 集成发行说明
重要 :
请注意,此内容已使用机器翻译进行了部分本地化。
新发布内容的本地化可能需要 1-2 周的时间才能完成。
发布日期:2026 年 5 月 27 日
新增功能
您的nuget.config现在已完全符合
如果您使用nuget.config传递--nugetConfigFilePath文件,则 CLI 现在会遵循其中的所有内容,而不仅仅是订阅源 URL 列表。以前,仅应用<packageSources> URL,这意味着 JFtro 等基本身份验证订阅源失败,并显示401 Unauthorized因为其凭据已静默删除。在 25.10.18 版本中,以下常见场景可开箱即用:
- 需要用户名和密码的私有订阅源(JF Robot、Sonnatype 关系、内部 Azure 工件)。将凭据放在
<packageSourceCredentials>下的同一文件中即可,无需额外的 CLI 标志。客户在以前的 CLI 版本上遇到的401 Unauthorized故障均已解决。 - 忽略构建代理自身的 NuGet 配置。在
<packageSources>顶部添加<clear />,之后只会使用您在此文件中声明的订阅源。 - 将特定包路由到特定订阅源。例如,使用
<packageSourceMapping>将UiPath.*包发送到内部镜像,将其他所有内容发送到公共订阅源。 - 离线构建。使用
<fallbackPackageFolders>指向预下载包的本地文件夹。
示例 — 受令牌保护的私人订阅源,使用本地文件夹作为回退:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<packageSources>
<clear />
<add key="UiPath-Internal" value="https://artifactory.contoso.example/api/nuget/v3/uipath-feed/index.json" protocolVersion="3" />
</packageSources>
<packageSourceCredentials>
<UiPath-Internal>
<add key="Username" value="ci-bot" />
<add key="ClearTextPassword" value="%ARTIFACTORY_TOKEN%" />
</UiPath-Internal>
</packageSourceCredentials>
<fallbackPackageFolders>
<add key="OfflinePackages" value="C:\ci\offline-packages" />
</fallbackPackageFolders>
</configuration>
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<packageSources>
<clear />
<add key="UiPath-Internal" value="https://artifactory.contoso.example/api/nuget/v3/uipath-feed/index.json" protocolVersion="3" />
</packageSources>
<packageSourceCredentials>
<UiPath-Internal>
<add key="Username" value="ci-bot" />
<add key="ClearTextPassword" value="%ARTIFACTORY_TOKEN%" />
</UiPath-Internal>
</packageSourceCredentials>
<fallbackPackageFolders>
<add key="OfflinePackages" value="C:\ci\offline-packages" />
</fallbackPackageFolders>
</configuration>
uipcli package pack "C:\projects\MyProject\project.json" -o "C:\Output" \
--nugetConfigFilePath "C:\ci\nuget.config"
uipcli package pack "C:\projects\MyProject\project.json" -o "C:\Output" \
--nugetConfigFilePath "C:\ci\nuget.config"
通过 CI 密码注入密码 — 在运行时从环境中读取%ARTIFACTORY_TOKEN%占位符。
如果您以前必须将--nugetConfigFilePath与--disableBuiltInNugetFeeds或--excludeConfiguredSources结合使用,才能将构建代理的订阅源排除在还原之外,现在只需在文件中使用<clear />即可获得相同的结果。这两种方法仍然有效 — 为您的管道选择更简单的一种。
Test Manager 不再因大型测试运行而超时
以前, uipcli test run --projectKey在大型测试集上会失败,因为在 Test Manager 端准备测试集所需的时间超过了单个 HTTP 调用允许的时间。即使 Test Manager 已接受请求并仍在处理,CLI 仍将显示超时错误。
从 25.10.18 开始,CLI 会等待 Test Manager 完成测试集的准备,然后再继续执行。在等待的同时,控制台将定期打印状态消息,例如:
Test set creation is still in progress, retrying in 5 seconds...
Test set creation is still in progress, retrying in 5 seconds...
您无需更改管道中的任何内容 — 无论您是使用--testsetkey引用现有测试集,还是使用-P从项目路径创建暂态测试集,新行为都会自动应用于test run --projectKey调用。
uipcli test run "https://cloud.uipath.com/" "TenantName" \
--projectKey "MyTestProject" \
--testsetkey "MyLargeTestSet" \
-A "organizationName" \
-I "becc663c-8f1e-409a-a75f-c00330d80bc8" \
-S '********' \
--applicationScope "OR.Folders OR.Execution TM.Projects TM.TestSets TM.TestExecutions" \
-o "FolderName" \
--out "junit" \
--result_path "./test-results"
uipcli test run "https://cloud.uipath.com/" "TenantName" \
--projectKey "MyTestProject" \
--testsetkey "MyLargeTestSet" \
-A "organizationName" \
-I "becc663c-8f1e-409a-a75f-c00330d80bc8" \
-S '********' \
--applicationScope "OR.Folders OR.Execution TM.Projects TM.TestSets TM.TestExecutions" \
-o "FolderName" \
--out "junit" \
--result_path "./test-results"