- Overview
- UiPath CLI
- Azure DevOps extension
- Jenkins plugin

CI/CD integrations user guide
UiPath Pack
Application: RPA
Type: Build task
UiPath Pack is available in standard jobs and pipelines, and lets you package an existing UiPath project into a NuGet package.

Configuration
| Job parameter | Description |
|---|---|
| Choose versioning method | UiPath packages are versioned. With UiPath pack you can choose between 3 different options: ( 1 ) Auto generate ( 2 ) Define custom version ( 3 ) Use the current version set in the project. |
| Project(s) path | The location of the project(s) to be packaged. It can be a direct path to a project.json file or a directory with one or more projects. In the latter case, each level one project is packaged individually. |
| Output folder | Path to a folder where you want to create the package. |
| Output type | The output type of the project(s). There are 5 options for the project(s) type: ( 1 ) Output type of the project ( 2 ) Pack a process project ( 3 ) Pack a library project ( 4 ) Pack a tests project ( 5 ) Pack an objects project. |
| Run workflow analysis | Run the workflow analysis before packing, checking the project via predefined rules for violations. Fail the job in case of errors. By default, the analysis is not run. |
| Trace logging level | Setting used to enable trace logging to one of the following levels:
|
| Use orchestrator | Use Orchestrator feed when packaging libraries. The Orchestrator must be 20.4 or higher. The library feed needs to allow API Key authentication in Tenant > Setting > Deployment . |
| Orchestrator address | The address of the Orchestrator instance from which library dependencies should be restored. |
| Orchestrator tenant | The Orchestrator tenant from which library dependencies should be restored. |
| Authentication | For authentication towards Orchestrator, you need to create credentials in Jenkins upfront. There are four options to authenticate: ( 1 ) Authenticate to an on-premise Orchestrator using username and password. ( 2 ) Authenticate to a cloud Orchestrator using a refresh token (API key) . ( 3 ) Authenticate to a cloud Orchestrator using external app authentication . ( 4 ) Authenticate to an on-premise Orchestrator using . |
Pipeline example
pipeline { agent any environment { MAJOR = '1' MINOR = '0' } stages { stage ('Build') { steps { UiPathPack ( outputPath: "Output\)\)\)\)${env.BUILD_NUMBER}", projectJsonPath: "UiBank\)\)\)\)project.json", version: [$class: 'ManualVersionEntry', version: "${MAJOR}.${MINOR}.${env.BUILD_NUMBER}"] useOrchestrator: true, traceLoggingLevel: "None", orchestratorAddress: "OrchestratorUrl", orchestratorTenant: "tenant name", credentials: [$class: 'UserPassAuthenticationEntry', credentialsId: “credentialsId”] ) } } }}pipeline { agent any environment { MAJOR = '1' MINOR = '0' } stages { stage ('Build') { steps { UiPathPack ( outputPath: "Output\)\)\)\)${env.BUILD_NUMBER}", projectJsonPath: "UiBank\)\)\)\)project.json", version: [$class: 'ManualVersionEntry', version: "${MAJOR}.${MINOR}.${env.BUILD_NUMBER}"] useOrchestrator: true, traceLoggingLevel: "None", orchestratorAddress: "OrchestratorUrl", orchestratorTenant: "tenant name", credentials: [$class: 'UserPassAuthenticationEntry', credentialsId: “credentialsId”] ) } } }}