UiPath CLI Deployment Error

UiPath CLI Package Deploy bug

Using the UiPath CLI version 22.10.8438.32859, run via GitHub actions:

  • CLI said ‘no process exists for this package’ which was incorrect
  • CLI tried to create new process, which resulted in conflict / failure

23)_Windows v2.0.131088147 uploading in 0s to feedId :
24)_Windows v2.0.131088147 uploaded successfully in 0s to feedId :
25)Process will be deployed in modern folder.
26)No process exists for this package. Will create one.
27)System.InvalidOperationException: : Operation returned an invalid status code ‘Conflict’
28) at UiPath.Web.Client21_4.Releases.PostWithHttpMessagesAsync(ReleaseDto body, Nullable1 xUIPATHOrganizationUnitId, Dictionary2 customHeaders, CancellationToken cancellationToken)
29) at UiPath.Orchestrator.Client.Util.ExceptionsHandler.RunWithFriendlyExceptionMessages[T](Func1 func) 30){"message":"The name <Process>_Windows is already used.","errorCode":1001,"traceId":"00-8ed230919dc0f44ab0daab4b7d0de1e4-8354c319853b7e3e-01","resourceIds":null} 31) at UiPath.Orchestrator.Client.Util.ExceptionsHandler.RunWithFriendlyExceptionMessages[T](Func1 func)
32) at UiPath.Orchestrator.Client.Endpoints.Releases.PostAsync(ReleaseDto releaseDto, Nullable1 xUiPathOrganizationUnitId, Dictionary2 customHeaders, CancellationToken cancellationToken)
33) at UiPath.CommandLine.Services.Impl.DeployService.createProcessWhenNoEntryPointSpecified(IOrchestratorClient client, UploadedPackageModel package, List1 existingReleases) 34) at UiPath.CommandLine.Services.Impl.DeployService.DeployPackagesInModernFolder(IOrchestratorClient client, UploadedPackageModel package, List1 existingReleases, List1 validEntryPoints) 35) at UiPath.CommandLine.Services.Impl.DeployService.DeployPackage(IOrchestratorClient client, UploadedPackageModel package, Boolean isModernFolder, IEnumerable1 targetEnvironmentNames, List1 entryPointPaths) 36) at UiPath.CommandLine.Services.Impl.DeployService.<>c__DisplayClass3_0.<<Run>b__4>d.MoveNext() 37)--- End of stack trace from previous location --- 38) at UiPath.CommandLine.Extensions.EnumerableExtensions.<>c__DisplayClass0_02.<b__2>d.MoveNext()
39)— End of stack trace from previous location —
40) at UiPath.CommandLine.Extensions.EnumerableExtensions.SelectParallel[TIn,TOut](IEnumerable1 inputList, Func2 function, Int32 numberOfObjectsInParallel, CancellationToken token)
41) at UiPath.CommandLine.Services.Impl.DeployService.Run(DeployOptions options)
42) at UiPath.CommandLine.Services.Impl.OptionsParser.<>c__DisplayClass7_0.<b__0>d.MoveNext()
43)— End of stack trace from previous location —
44) at UiPath.CommandLine.Services.Impl.OptionsParser.RunOptions(String args, Func`3 notParsedFunc)
45)Error: Process completed with exit code 1.

Hi @Michael_Conan1

The error message suggests that there may be a conflict with the package name you are trying to deploy. Specifically, it says that the name “_Windows” is already used. You could try changing the package name to something unique to avoid this conflict.

It also seems like the CLI is attempting to create a new process when one already exists, which is causing the conflict. You could check in Orchestrator to see if there are any existing processes with the same name as the one you are trying to create. If there are, you could delete them before attempting to deploy the new process again.

Finally, you could try using the --update flag when deploying the package, which will update an existing package if one exists rather than creating a new one.

What is the --update flag? Cannot find it in the documentation and it does not work in practice

The --update flag is a valid flag for some commands in the CLI for some specific packages.

For example, when you use the uipath pack command to package a UiPath project, you can use the --update flag to update an existing package, instead of creating a new one. This flag can be used with the uipath pack command when you want to create a new version of an existing package.

Here’s an example of how to use the --update flag with the uipath pack command:

uipath pack <path-to-project.json> --update

This command will update the existing package instead of creating a new one. However, please note that this flag is not applicable to all the packages and commands. It is only applicable to specific packages and commands where it makes sense.

It is also possible that the --update flag is not available in older versions of the CLI, or that it has been removed in more recent versions.

can you please share the documentation where you get this info from? I am interested in deploying a package to Orcehsrator but without updating the orchestrator process with the new version. From what I see there is no option to disable the automatic update.

@ABHIMANYU_THITE1 you are correct, there is already a process matching the name. My intention is to update the existing process based on the new package version, which old versions of the CLI did without issue.

As mentioned, I do not see an option for an —update argument.

I’ve now set the —createProcess flag to false to avoid the conflict, but would still like my process to update.

UPDATE: interestingly, it identifies and updates the process when I publish to a folder feed rather than tenant feed, however, when I try to run the process associated with the folder package I get errors that it can’t find the package to install on the robot…

1 Like