- Overview
- UiPath CLI
- About UiPath CLI
- Downloading UiPath CLI
- Compatibility matrix
- Running UiPath CLI
- Managing NuGet feeds
- Packing projects into a package
- Analyzing a project
- Deploying a package to Orchestrator
- Running a job inside Orchestrator
- Testing a package or running a test set
- Testing multiple packages
- Deploying assets to Orchestrator
- Deleting assets from Orchestrator
- Running tasks using JSON configuration
- Restoring automation dependencies
- Troubleshooting UiPath CLI
- Azure DevOps extension
- Jenkins plugin

CI/CD integrations user guide
Analyzing a project
Prerequisites:
- Create a project.
- Run the CLI
exe(for Windows) ordll(for Linux) file. - Add the required Orchestrator API access application scopes.
To analyze a project, take the following steps:
- Run the
packagetask, usinguipcli package. You can notice a list of the available sub-tasks. - Specify the required parameters and run the
analyzesub-task. The following table describes the required parameters.
Project validation is not performed by the Pack or Analyze tasks of UiPath CLI.
Legend: (*) - Optional, recommended when using additional package feeds.
| Parameter | Description |
|---|---|
|
| Choose what types of messages to output after analyzing:
|
|
| The job fails when any rule is violated. |
|
| Treat warnings as errors. |
|
| The full path to a JSON file where you want to store the results. If you don't add this as an argument, then the results will print only in the standard console. |
|
| Pass governance policies containing the Workflow Analyzer rules. Policies can be downloaded from , or extracted from the exported compressed zip file from Studio . The task fails if you specify to use a policy but the policy file is not in the mentioned path. |
|
| A list of rules that you want to ignore during the analysis, separated by commas. |
-u , --orchestratorUsername (*) ( Required if you use Basic Authentication , through a username and a password) | The username used for authenticating to Orchestrator. You must pair it with the corresponding password. |
-p , --orchestratorPassword (*) ( Required if you use Basic Authentication , through a username and a password) | The password used for authenticating to Orchestrator. You must pair it with the corresponding username. |
-t , -orchestratorAuthToken (*) ( Required if you use token-based authentication ) | The OAuth2 refresh token used for authenticating to Orchestrator. You must pair it with the Account Name and Client ID . |
-a , --orchestratorAccountName (*) ( Required if you use token-based authentication ) | The Orchestrator CloudRPA account name. You must pair it with the OAuth2 refresh token and Client ID . |
-A , --orchestratorAccountForApp (*) | The Orchestrator CloudRPA account name(organization name). You must pair it with the Application ID , Application Secret , and Application scope for external application. |
-I , --orchestratorApplicationId (*) ( Required if you use external application authentication ) | The external Application ID. You must pair it with the **Application Account, Application Secret , and Application scope . |
-S , --orchestratorApplicationSecret (*) ( Required if you use external application authentication ) | The external Application Secret. You must pair it with the Application Account , Application ID , and Application scope . |
--orchestratorApplicationScope (*) ( Required if you use external application authentication ) | The list of application scopes, separated by single spaces. You must pair it with the Application Account , Application ID , and Application Secret for external application. |
--orchestratorFolder (*) | The name of the target Orchestrator folder. AccountingTeam\TeamJohn . |
--orchestratorUrl (*) | The URL of the Orchestrator instance. |
--orchestratorTenant (*) | The tenant of the Orchestrator instance where you want to delete a machine. |
-l , --language | The orchestrator language. |
|
| Display the trace of the events. |
--identityUrl ( Required for PaaS or MSI deployments | The URL of your identity server. |
|
| Disable built-in nuget feeds. |
Project(s) Path (pos.0) ( Required ) | The path to the project.json file, or the path to the folder that contains multiple project.json files. |
Usage:
uipcli package analyze <project_path> [--analyzerTraceLevel <analyzer_trace_level>] [--stopOnRuleViolation] [--treatWarningsAsErrors] [--resultPath <result_path>] [--governanceFilePath <governance_file_path>] [--ignoredRules <rule_id_1,rule_id_2>] [--orchestratorUrl <orchestrator_url> --orchestratorTenant <orchestrator_tenant>] [-u <orchestrator_user> -p <orchestrator_pass>] [-t <auth_token> -a <account_name>] [-A <organization_name> -I <application_id> -S <application_secret> --orchestratorApplicationScope <application_scope>] [--orchestratorFolder <folder_name>] [-l <language>] [--traceLevel <None|Critical|Error|Warning|Information|Verbose>] [--identityUrl <identityUrl>] [--disableBuiltInNugetFeeds]uipcli package analyze <project_path> [--analyzerTraceLevel <analyzer_trace_level>] [--stopOnRuleViolation] [--treatWarningsAsErrors] [--resultPath <result_path>] [--governanceFilePath <governance_file_path>] [--ignoredRules <rule_id_1,rule_id_2>] [--orchestratorUrl <orchestrator_url> --orchestratorTenant <orchestrator_tenant>] [-u <orchestrator_user> -p <orchestrator_pass>] [-t <auth_token> -a <account_name>] [-A <organization_name> -I <application_id> -S <application_secret> --orchestratorApplicationScope <application_scope>] [--orchestratorFolder <folder_name>] [-l <language>] [--traceLevel <None|Critical|Error|Warning|Information|Verbose>] [--identityUrl <identityUrl>] [--disableBuiltInNugetFeeds]Minimal command examples:
uipcli package analyze "C:\userprofile\AutomationProject\project.json" --traceLevel Information --resultPath "C:\userprofile\result.json"uipcli package analyze "C:\userprofile\AutomationProject\project.json" --traceLevel Information --resultPath "C:\userprofile\result.json" --orchestratorUrl "https://orch-23-10-paas.cloudapp.azure.com/" --orchestratorTenant "TenantName" -u "orchestratorUsername" -p "********" --orchestratorFolder "FolderName"uipcli package analyze "C:\userprofile\AutomationProject\project.json" --traceLevel Information --resultPath "C:\userprofile\result.json" --orchestratorUrl "https://orch-23-10-paas.cloudapp.azure.com/" --orchestratorTenant "TenantName" -A "organizationName" -I "76000552-3e4f-4590-9317-cdb420001f1d" -S "********" --orchestratorApplicationScope "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" --orchestratorFolder "FolderName" --identityUrl "https://orch-23-10-paas.cloudapp.azure.com/identity"uipcli package analyze "C:\userprofile\AutomationProject\project.json" --traceLevel Information --resultPath "C:\userprofile\result.json" --orchestratorUrl "https://automation-suite.base.url.com/" --orchestratorTenant "TenantName" -A "organizationName" -I "3f6239b9-e0e8-465e-a429-d9ffd1d9e57a" -S "********" --orchestratorApplicationScope "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" --orchestratorFolder "FolderName"uipcli package analyze "C:\userprofile\AutomationProject\project.json" --traceLevel Information --resultPath "C:\userprofile\result.json" --orchestratorUrl "https://cloud.uipath.com/" --orchestratorTenant "TenantName" -A "organizationName" -I "becc663c-8f1e-409a-a75f-c00330d80bc8" -S "********" --orchestratorApplicationScope "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" --orchestratorFolder "FolderName"