UiPath Documentation
cicd-integrations
2024.10
false

CI/CD integrations user guide

Last updated May 4, 2026

Analyzing a project

Prerequisites:

To analyze a project, take the following steps:

  1. Run the package task, using uipcli package. You can notice a list of the available sub-tasks.
  2. Specify the required parameters and run the analyze sub-task. The following table describes the required parameters.
Note:

Project validation is not performed by default. To enable XAML structural validation, use the --validate flag.

Legend: (*) - Optional, recommended when using additional package feeds.

Parameter

Description

--analyzerTraceLevel

Choose what types of messages to output after analyzing:

  • Off = don't show any message
  • Error

    - Warning

    - Info

    - Verbose .

-stopOnRuleViolation

The job fails when any rule is violated.

--validate

Enable XAML structural validation (for example, missing required activity arguments). Validation is off by default. When enabled, validation errors cause a non-zero exit code.

--treatWarningsAsErrors

Treat warnings as errors.

--resultPath

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.

--governanceFilePath

Pass governance policies containing the Workflow Analyzer rules. Policies can be downloaded from , or extracted from the exported compressed zip file from Studio .

Note:

The task fails if you specify to use a policy but the policy file is not in the mentioned path.

--ignoredRules

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 (*)

The external Application ID. You must pair it with the **Application Account, Application Secret , and Application scope .

-S , --orchestratorApplicationSecret (*)

The external Application Secret. You must pair it with the Application Account , Application ID , and Application scope .

--orchestratorApplicationScope (*)

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.

To input subfolders make sure to input both the parent folder name and the name of the subfolder. For instance, use 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.

--traceLevel

Display the trace of the events.

--identityUrl ( Required for PaaS or MSI deployments The URL of your identity server.

--disableBuiltInNugetFeeds

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.

Exit codes

The exit code of the analyze command depends on the flags you use:

FlagsExit code 0 (success)Non-zero exit code (failure)
No flagsAlwaysNever
--stopOnRuleViolationNo rule violationsRule violations detected
--validateNo validation errorsValidation errors detected
--validate --stopOnRuleViolationNo rule violations and no validation errorsRule violations or validation errors detected

Usage:

uipcli package analyze <project_path> [--analyzerTraceLevel <analyzer_trace_level>] [--stopOnRuleViolation] [--validate] [--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] [--validate] [--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"
  • Exit codes

Was this page helpful?

Connect

Need help? Support

Want to learn? UiPath Academy

Have questions? UiPath Forum

Stay updated