- Overview
- Get started
- Concepts
- Using UiPath CLI
- How-to guides
- CI/CD recipes
- Command reference
- Overview
- Exit codes
- Global options
- uip codedagent
- uip coder
- uip context-grounding
- uip docsai
- uip function
- uip guardrails
- uip llm-configuration
- uip llm-gateway
- uip model-hub
- add-test-data-entity
- add-test-data-queue
- add-test-data-variation
- analyze
- build
- create-project
- diff
- find-activities
- get-analyzer-rules
- get-default-activity-xaml
- get-errors
- get-manual-test-cases
- get-manual-test-steps
- get-library-object-repository
- get-object-repository
- get-versions
- get-workflow-example
- indicate-application
- indicate-element
- inspect-package
- install-data-fabric-entities
- install-or-update-packages
- list-data-fabric-entities
- list-instances
- list-workflow-examples
- pack
- publish
- remote
- restore
- run, debug & execution
- run-file
- search-templates
- start-studio
- stop-execution
- tm
- uia
- uip tasks
- uip traces
- uip traces feedback
- Migration
- Reference & support
Syntax and options for `uip solution deploy`, which installs, upgrades, activates, and uninstalls solution deployments in Orchestrator.
uip solution deploy takes a published solution package (see uip solution publish) and installs it into Orchestrator: creates a folder, provisions resources (queues, assets, processes, buckets, connections), and activates the deployment.
This page covers every subcommand under deploy.
| Subcommand | Purpose |
|---|---|
run | Install a new deployment from a published package. |
upgrade | Upgrade an existing deployment to a newer package version, in place. |
status | Check the status of a pipeline deployment. |
list | List existing deployments. |
activate | Activate a deployment that was installed without auto-activation. |
uninstall | Remove a deployment and its provisioned resources. |
config get | Fetch the default deployment configuration for a package. |
config set | Set a resource property in a deploy config file. |
config link | Link a solution resource to an existing Orchestrator resource. |
config unlink | Remove a resource link from a deploy config file. |
Also documented on this page:
Every subcommand is authenticated. Run uip login first.
Typical workflow
deploy config get → deploy config set / link → deploy run → deploy status
│
├─→ deploy activate (if not auto-activated)
├─→ deploy upgrade (new package version, same deployment)
└─→ deploy uninstall (tear down)
deploy config get → deploy config set / link → deploy run → deploy status
│
├─→ deploy activate (if not auto-activated)
├─→ deploy upgrade (new package version, same deployment)
└─→ deploy uninstall (tear down)
deploy run always creates a new deployment in a new folder — it never updates an existing one. If a package is already deployed under a given --name, use deploy upgrade to move that deployment to a new version in place, or pass -y, --yes on deploy run to install a second, independent copy instead.
uip solution deploy run
Install a new solution deployment in Orchestrator from a published package. Creates a new folder (under --parent-folder-path or --parent-folder-key, or the current user's Personal Workspace), provisions every resource described in the package (or in --config-file), and — unless --skip-activate is set — activates it.
Because this always creates a new deployment, the command first checks whether the package already has one under the same --name; if so, it stops and points at deploy upgrade instead of silently reinstalling. That check is best-effort, not a guarantee: it reads the Solutions search, which needs a user session, so an application (client-credentials) login skips it, and a lookup failure only warns.
Synopsis
uip solution deploy run \
--name <deployment-name> \
--package-name <name> \
--package-version <version> \
--folder-name <name> \
[--parent-folder-path <path> | --parent-folder-key <guid> | --personal-workspace] \
[--feed <name-or-key>] \
[--config-file <path>] \
[--skip-activate] \
[--wait] \
[-y, --yes] \
[--timeout <seconds>] \
[--poll-interval <ms>] \
[--login-validity <minutes>]
uip solution deploy run \
--name <deployment-name> \
--package-name <name> \
--package-version <version> \
--folder-name <name> \
[--parent-folder-path <path> | --parent-folder-key <guid> | --personal-workspace] \
[--feed <name-or-key>] \
[--config-file <path>] \
[--skip-activate] \
[--wait] \
[-y, --yes] \
[--timeout <seconds>] \
[--poll-interval <ms>] \
[--login-validity <minutes>]
Options
| Long | Value | Default | Description |
|---|---|---|---|
-n, --name <deployment-name> | text | — | Required. Name for the deployment. Used by deploy status, deploy upgrade, deploy activate, and deploy uninstall to identify this install. |
--package-name <name> | text | — | Required. Solution package name. Use packages list to find available names. |
--package-version <version> | text | — | Required. Solution package version. |
--folder-name <name> | text | — | Required. Name of the new Orchestrator folder created for this deployment. |
--parent-folder-path <path> | path | — | Parent folder path (for example Shared). The deployment folder is created beneath it. Mutually exclusive with --parent-folder-key and --personal-workspace. |
--parent-folder-key <key> | GUID | — | Parent folder key. Alternative to --parent-folder-path. |
--personal-workspace | flag | off | Deploy into the current user's Personal Workspace. The workspace name is resolved from Orchestrator automatically. Mutually exclusive with --parent-folder-path, --parent-folder-key, and --feed. |
--feed <name-or-key> | text | tenant feed | Deploy a package published to this feed (name or folder key, from solution feeds list) instead of the tenant feed. This scopes which feed the package comes from — the --parent-folder-path/--parent-folder-key/--personal-workspace flags still control where the Orchestrator folder is created. Mutually exclusive with --personal-workspace. |
--config-file <path> | path | — | JSON or YAML configuration file. Generate with deploy config get, edit with config set / config link, then pass it here. |
--skip-activate | flag | off | Skip auto-activation; leave the deployment in Inactive (Ready to activate) state. Activate later with deploy activate. |
--wait | flag | off | For a --personal-workspace or --feed deploy, wait for it to finish instead of returning as soon as it starts (bounded by --timeout). The tenant-feed path always waits, so this flag changes nothing there. |
-y, --yes | flag | off | Deploy even when this package already has a deployment under --name, installing a second, independent copy with its own folder. |
--timeout <seconds> | seconds | 360 | Polling timeout applied per phase — deploy, and (when not skipped) activate. |
--poll-interval <ms> | ms | 5000 | Milliseconds between status polls during the deploy and activate phases. |
--login-validity <minutes> | minutes | 10 | Minimum minutes before token expiration to trigger a refresh. |
Examples
Common
uip solution deploy run \
--name my-deployment \
--package-name my-package \
--package-version 1.0.0 \
--folder-name MySolution \
--parent-folder-path "Shared"
uip solution deploy run \
--name my-deployment \
--package-name my-package \
--package-version 1.0.0 \
--folder-name MySolution \
--parent-folder-path "Shared"
Skip auto-activation
uip solution deploy run \
--name my-deployment \
--package-name my-package --package-version 1.0.0 \
--folder-name MySolution --parent-folder-path "Shared" \
--skip-activate
uip solution deploy run \
--name my-deployment \
--package-name my-package --package-version 1.0.0 \
--folder-name MySolution --parent-folder-path "Shared" \
--skip-activate
Into the Personal Workspace, waiting for completion
uip solution deploy run \
--name my-deployment \
--package-name my-package --package-version 1.0.0 \
--folder-name MySolution --personal-workspace --wait
uip solution deploy run \
--name my-deployment \
--package-name my-package --package-version 1.0.0 \
--folder-name MySolution --personal-workspace --wait
A second, independent copy of an already-deployed package
uip solution deploy run \
--name my-deployment-2 \
--package-name my-package --package-version 1.0.0 \
--folder-name MySolutionCopy --parent-folder-path "Shared" --yes
uip solution deploy run \
--name my-deployment-2 \
--package-name my-package --package-version 1.0.0 \
--folder-name MySolutionCopy --parent-folder-path "Shared" --yes
From a folder feed
uip solution deploy run \
--name my-deployment \
--package-name my-package --package-version 1.0.0 \
--folder-name MySolution --feed Finance
uip solution deploy run \
--name my-deployment \
--package-name my-package --package-version 1.0.0 \
--folder-name MySolution --feed Finance
With a customized configuration
uip solution deploy config get my-package -d ./deploy-config.json
uip solution deploy config set ./deploy-config.json MyQueue maxNumberOfRetries 5
uip solution deploy run \
--name my-deployment \
--package-name my-package --package-version 1.0.0 \
--folder-name MySolution --parent-folder-path "Shared" \
--config-file ./deploy-config.json
uip solution deploy config get my-package -d ./deploy-config.json
uip solution deploy config set ./deploy-config.json MyQueue maxNumberOfRetries 5
uip solution deploy run \
--name my-deployment \
--package-name my-package --package-version 1.0.0 \
--folder-name MySolution --parent-folder-path "Shared" \
--config-file ./deploy-config.json
Scripting — capture the deployment ID for follow-up calls
PIPELINE_ID=$(uip solution deploy run \
--name my-deployment \
--package-name my-package --package-version 1.0.0 \
--folder-name MySolution --parent-folder-path "Shared" \
--output-filter "Data.PipelineDeploymentId" --output plain)
uip solution deploy status "$PIPELINE_ID"
PIPELINE_ID=$(uip solution deploy run \
--name my-deployment \
--package-name my-package --package-version 1.0.0 \
--folder-name MySolution --parent-folder-path "Shared" \
--output-filter "Data.PipelineDeploymentId" --output plain)
uip solution deploy status "$PIPELINE_ID"
Data shape (--output json)
Tenant-feed deployment (always waits):
{
"Code": "SolutionDeployRun",
"Data": {
"Status": "DeploymentSucceeded",
"DeploymentKey": "a1b2c3d4-0000-0000-0000-000000000001",
"PipelineDeploymentId": "b2c3d4e5-0000-0000-0000-000000000001",
"InstanceId": "c3d4e5f6-0000-0000-0000-000000000001",
"FolderName": "MySolution",
"FolderPath": "Shared/MySolution",
"ActivationStatus": "SuccessfulActivate"
}
}
{
"Code": "SolutionDeployRun",
"Data": {
"Status": "DeploymentSucceeded",
"DeploymentKey": "a1b2c3d4-0000-0000-0000-000000000001",
"PipelineDeploymentId": "b2c3d4e5-0000-0000-0000-000000000001",
"InstanceId": "c3d4e5f6-0000-0000-0000-000000000001",
"FolderName": "MySolution",
"FolderPath": "Shared/MySolution",
"ActivationStatus": "SuccessfulActivate"
}
}
Personal Workspace / folder-feed deployment without --wait:
{
"Code": "SolutionDeployRun",
"Data": {
"Status": "DeploymentStarted",
"DeploymentName": "my-deployment",
"PackageName": "my-package",
"PackageVersion": "1.0.0",
"FolderName": "MySolution",
"FolderPath": "alice@uipath.com/MySolution",
"ActivationStatus": "Auto",
"NextSteps": "Deployment created in your Personal Workspace and will auto-activate. Check status with: uip solution deploy list."
}
}
{
"Code": "SolutionDeployRun",
"Data": {
"Status": "DeploymentStarted",
"DeploymentName": "my-deployment",
"PackageName": "my-package",
"PackageVersion": "1.0.0",
"FolderName": "MySolution",
"FolderPath": "alice@uipath.com/MySolution",
"ActivationStatus": "Auto",
"NextSteps": "Deployment created in your Personal Workspace and will auto-activate. Check status with: uip solution deploy list."
}
}
RequestedFolderName and FolderNote appear only when the requested --folder-name was already taken: Orchestrator collision-renames the folder rather than reusing it, so the actual FolderName/FolderPath differ from what was requested, and FolderNote explains the rename with a pointer to either use the renamed folder or re-run with a free name.
Terminal deployment statuses: DeploymentSucceeded, DeploymentFailed, ValidationFailed, ConflictFixingError, DeploymentScheduleError. Non-success terminal states exit with 1 and aggregate the validation / conflict / schedule / workflow errors into the Instructions field.
Timeout behaviour
If the deployment does not reach a terminal state before --timeout elapses, the command exits non-zero with a pointer to deploy status <pipeline-deployment-id> so you can continue monitoring.
Failure modes
- Deployment already exists under
--name. Refused unless-y, --yesis passed (installs a second, independent copy) — usedeploy upgradeinstead if the intent is to move the existing deployment to a new version. --nameexists, bound to a different--package-name. Fails outright — a deployment name cannot switch packages viadeploy run.- A deployment for
--nameis already in progress. Fails — the previous operation must finish first.
uip solution deploy upgrade
Upgrade an existing deployment to a newer package version in place — the CLI equivalent of the Orchestrator UI's "Upgrade" button. Use this when deploy run is blocked because a deployment already exists under the target name. The deployment's existing configuration is preserved, so values already set on it (for example a credential asset's secret) are not reset to the package defaults. Waits for the upgrade to finish unless --no-wait is passed.
Arguments
<deployment-key>(required) — Key of the deployment to upgrade. Usedeploy listto find it (theKeyfield).
Options
| Long | Value | Default | Description |
|---|---|---|---|
--version <version> | text | newest available | Target package version. Only the latest published version is supported today. |
--personal-workspace | flag | off | Upgrade a deployment in your Personal Workspace feed instead of the tenant. |
--no-wait | flag | off | Return as soon as the upgrade is accepted, instead of waiting for it to finish. |
--timeout <seconds> | seconds | 300 | Seconds to wait for the upgrade to finish. |
--poll-interval <ms> | ms | 5000 | Milliseconds between status polls. |
--login-validity <minutes> | minutes | 10 | Minimum minutes before token expiration to trigger a refresh. |
Examples
# Upgrade to the newest published version, waiting for completion
uip solution deploy upgrade a1b2c3d4-0000-0000-0000-000000000001
# Start the upgrade without waiting
uip solution deploy upgrade a1b2c3d4-0000-0000-0000-000000000001 --no-wait
# Upgrade to the newest published version, waiting for completion
uip solution deploy upgrade a1b2c3d4-0000-0000-0000-000000000001
# Start the upgrade without waiting
uip solution deploy upgrade a1b2c3d4-0000-0000-0000-000000000001 --no-wait
Data shape (--output json)
{
"Code": "SolutionDeployUpgrade",
"Data": {
"Status": "Successful",
"DeploymentName": "billing-solution",
"FromVersion": "1.0.0",
"ToVersion": "2.0.0",
"VersionChangeKey": "b2c3d4e5-0000-0000-0000-000000000002"
}
}
{
"Code": "SolutionDeployUpgrade",
"Data": {
"Status": "Successful",
"DeploymentName": "billing-solution",
"FromVersion": "1.0.0",
"ToVersion": "2.0.0",
"VersionChangeKey": "b2c3d4e5-0000-0000-0000-000000000002"
}
}
With --no-wait, Status is "Draft" and the upgrade has only been accepted, not completed — poll deploy list (the Actions/TargetPackageVersion fields) to track it.
uip solution deploy status
Check the current status of a pipeline deployment. Returns the deployment state and, if available, the name/package/version of the deployment and a concatenated error summary.
Arguments
<pipeline-deployment-id>(required) — ThePipelineDeploymentIdreturned bydeploy run.
Options
--login-validity <minutes>— Defaults to10.
Example
uip solution deploy status b2c3d4e5-0000-0000-0000-000000000001
uip solution deploy status b2c3d4e5-0000-0000-0000-000000000001
Data shape (--output json)
{
"Code": "SolutionDeployStatus",
"Data": {
"PipelineDeploymentId": "b2c3d4e5-0000-0000-0000-000000000001",
"Status": "DeploymentSucceeded",
"DeploymentKey": "a1b2c3d4-0000-0000-0000-000000000001",
"ConfigurationKey": "...",
"InstanceId": "c3d4e5f6-0000-0000-0000-000000000001",
"DeploymentResult": {
"Name": "my-deployment",
"PackageName": "my-package",
"PackageVersion": "1.0.0",
"Status": "Successful",
"StartDate": "2026-04-15T10:30:00Z",
"EndDate": "2026-04-15T10:31:12Z",
"Errors": null
}
}
}
{
"Code": "SolutionDeployStatus",
"Data": {
"PipelineDeploymentId": "b2c3d4e5-0000-0000-0000-000000000001",
"Status": "DeploymentSucceeded",
"DeploymentKey": "a1b2c3d4-0000-0000-0000-000000000001",
"ConfigurationKey": "...",
"InstanceId": "c3d4e5f6-0000-0000-0000-000000000001",
"DeploymentResult": {
"Name": "my-deployment",
"PackageName": "my-package",
"PackageVersion": "1.0.0",
"Status": "Successful",
"StartDate": "2026-04-15T10:30:00Z",
"EndDate": "2026-04-15T10:31:12Z",
"Errors": null
}
}
}
uip solution deploy list
List solution deployments. Shows deployment name, current/target package version, pending operation, activation status, and folder path.
Options
| Long | Value | Default | Description |
|---|---|---|---|
--folder-path <path> | path | — | Filter by parent folder path. Filtering is applied after fetching; increase --limit if results look incomplete when using this filter. |
--folder-key <key> | GUID | — | Filter by parent folder key. Alternative to --folder-path. |
-l, --limit <number> | number | 50 | Max deployments to fetch. |
--offset <number> | number | 0 | Number of deployments to skip (applied before --folder-path/--folder-key filtering). |
--sort-by <column> | text | startTime | Column to sort by. |
--sort-order <direction> | Ascending | Descending | Descending | Sort direction. |
--operation-status <statuses> | comma-separated | — | Server-side filter by operation status (for example Successful, InProgress, Failed). |
--activation-status <statuses> | comma-separated | — | Server-side filter by activation status (for example Active, Inactive). |
--personal-workspace | flag | off | Only list deployments from the current user's Personal Workspace feed. Mutually exclusive with --feed. |
--feed <name-or-key> | text | — | Only list deployments from this feed. Mutually exclusive with --personal-workspace. |
--login-validity <minutes> | minutes | 10 | Minimum minutes before token expiration to trigger a refresh. |
Both --operation-status and --activation-status reject values outside the SDK's known status lists — the error message enumerates the valid values.
Examples
uip solution deploy list --limit 20 --folder-path "Shared/Production"
# Spot a pending in-place upgrade
uip solution deploy list --operation-status InProgress
uip solution deploy list --limit 20 --folder-path "Shared/Production"
# Spot a pending in-place upgrade
uip solution deploy list --operation-status InProgress
Data shape (--output json)
{
"Code": "SolutionDeployList",
"Data": [
{
"Key": "a1b2c3d4-0000-0000-0000-000000000002",
"InstallDeploymentKey": "b2c3d4e5-0000-0000-0000-000000000002",
"Name": "billing-solution",
"PackageName": "billing-solution",
"PackageVersion": "1.0.0",
"CurrentPackageVersion": "1.0.0",
"TargetPackageVersion": "2.0.0",
"NewPackageVersionAvailable": "2.0.0",
"Operation": "VersionChange",
"OperationStatus": "InProgress",
"ActivationStatus": "Active",
"FolderPath": "Shared/Billing",
"FolderKey": "c3d4e5f6-0000-0000-0000-000000000002",
"CreatedAt": "2026-04-15T10:30:00Z",
"Actions": ["Upgrade"]
}
],
"Pagination": { "Returned": 1, "Limit": 10, "Offset": 0, "Total": 1 }
}
{
"Code": "SolutionDeployList",
"Data": [
{
"Key": "a1b2c3d4-0000-0000-0000-000000000002",
"InstallDeploymentKey": "b2c3d4e5-0000-0000-0000-000000000002",
"Name": "billing-solution",
"PackageName": "billing-solution",
"PackageVersion": "1.0.0",
"CurrentPackageVersion": "1.0.0",
"TargetPackageVersion": "2.0.0",
"NewPackageVersionAvailable": "2.0.0",
"Operation": "VersionChange",
"OperationStatus": "InProgress",
"ActivationStatus": "Active",
"FolderPath": "Shared/Billing",
"FolderKey": "c3d4e5f6-0000-0000-0000-000000000002",
"CreatedAt": "2026-04-15T10:30:00Z",
"Actions": ["Upgrade"]
}
],
"Pagination": { "Returned": 1, "Limit": 10, "Offset": 0, "Total": 1 }
}
Key is the value deploy upgrade expects as <deployment-key>. NewPackageVersionAvailable is non-null when a newer published version exists than the one currently deployed. Actions lists operations currently available on the deployment (for example ["Upgrade"]).
uip solution deploy activate
Activate a deployment that was installed without auto-activation. Activation provisions all solution components. activate first prints the pre-activate steps reported by Orchestrator (to stderr, via --log-level info), then calls activate and polls until a terminal state (SuccessfulActivate or FailedActivate).
Arguments
<deployment-name>(required) — Name of the deployment to activate. Usedeploy listto find deployment names.
Options
--timeout <seconds>— Activation polling timeout. Defaults to360.--poll-interval <ms>— Milliseconds between status polls. Defaults to5000.--login-validity <minutes>— Defaults to10.
Example
uip solution deploy activate my-deployment
uip solution deploy activate my-deployment
Data shape (--output json)
{
"Code": "SolutionDeployActivate",
"Data": {
"Status": "SuccessfulActivate",
"DeploymentName": "my-deployment",
"InstanceId": "b2c3d4e5-0000-0000-0000-000000000001"
}
}
{
"Code": "SolutionDeployActivate",
"Data": {
"Status": "SuccessfulActivate",
"DeploymentName": "my-deployment",
"InstanceId": "b2c3d4e5-0000-0000-0000-000000000001"
}
}
If Orchestrator reports no instanceId (nothing to poll), InstanceId is omitted and the command returns successfully.
uip solution deploy uninstall
Uninstall a deployed solution. Removes all provisioned resources and the solution folder. This is a permanent operation — there is no undo.
Arguments
<deployment-name>(required) — Name of the deployment to uninstall.
Options
-y, --yes— Required. Confirms this irreversible operation — the CLI never prompts.--timeout <seconds>— Uninstall polling timeout. Defaults to360.--poll-interval <ms>— Milliseconds between status polls. Defaults to5000.--login-validity <minutes>— Defaults to10.
Example
uip solution deploy uninstall my-deployment --yes
uip solution deploy uninstall my-deployment --yes
Data shape (--output json)
{
"Code": "SolutionDeployUninstall",
"Data": {
"Status": "SuccessfulUninstall",
"DeploymentName": "my-deployment",
"InstanceId": "b2c3d4e5-0000-0000-0000-000000000001"
}
}
{
"Code": "SolutionDeployUninstall",
"Data": {
"Status": "SuccessfulUninstall",
"DeploymentName": "my-deployment",
"InstanceId": "b2c3d4e5-0000-0000-0000-000000000001"
}
}
Three success shapes are possible, distinguished by which fields appear:
- Immediate — Orchestrator reports
complete: trueon the first call; no polling happens. OnlyStatus/DeploymentNameappear. - Scheduled — Orchestrator schedules the work without returning an instance ID; a
Scheduledfield is added. - Polled — an
InstanceIdis returned and the command polls it to completion, as shown above.
Failure modes
- Missing
-y, --yes. The command refuses without confirming.
uip solution deploy config get
Fetch the default deployment configuration for a published solution package. The config lists every resource the solution will create (queues, assets, processes, buckets, connections, ...) with their default settings. Save it to a file (-d), customize with config set / config link, then pass it to deploy run --config-file.
Arguments
<package-name>(required) — Solution package name. Usepackages list.
Options
| Long | Value | Default | Description |
|---|---|---|---|
--package-version <version> | text | latest | Package version. |
-d, --destination <path> | path | stdout | Write the configuration to this file instead of stdout. |
--format <format> | json | yaml | json | Configuration format. |
--login-validity <minutes> | minutes | 10 | Minimum minutes before token expiration to trigger a refresh. |
Example
uip solution deploy config get my-package --package-version 1.0.0 -d ./deploy-config.json
# YAML format
uip solution deploy config get my-package -d ./deploy-config.yaml --format yaml
uip solution deploy config get my-package --package-version 1.0.0 -d ./deploy-config.json
# YAML format
uip solution deploy config get my-package -d ./deploy-config.yaml --format yaml
Data shape (--output json)
When -d is provided:
{
"Code": "SolutionDeployConfig",
"Data": {
"Status": "Configuration written",
"OutputPath": "/workspace/deploy-config.json",
"PackageName": "my-package",
"PackageVersion": "1.0.0",
"State": "Ready",
"Format": "json"
}
}
{
"Code": "SolutionDeployConfig",
"Data": {
"Status": "Configuration written",
"OutputPath": "/workspace/deploy-config.json",
"PackageName": "my-package",
"PackageVersion": "1.0.0",
"State": "Ready",
"Format": "json"
}
}
When -d is omitted, the configuration is embedded in the response:
{
"Code": "SolutionDeployConfig",
"Data": {
"PackageName": "my-package",
"PackageVersion": "1.0.0",
"State": "Ready",
"Format": "json",
"Configuration": { "resources": [ "..." ] }
}
}
{
"Code": "SolutionDeployConfig",
"Data": {
"PackageName": "my-package",
"PackageVersion": "1.0.0",
"State": "Ready",
"Format": "json",
"Configuration": { "resources": [ "..." ] }
}
}
uip solution deploy config set
Edit a resource property in a deploy config file. The file stays local until you pass it to deploy run --config-file.
Arguments
<file>(required) — Path to the deploy config JSON file (produced byconfig get).<args...>(required) — Depends on--all:- Without
--all:<resource> <property> <value>— e.g.MyQueue maxNumberOfRetries 5. - With
--all:<property> <value>— applies to every resource in the file. Only valid for the top-levelconflictFixingActionproperty.
- Without
Options
--all— Apply the property to all resources in the file. Only permitted withconflictFixingAction(e.g.UseExisting).
Examples
Change retries on a single queue
uip solution deploy config set ./deploy-config.json MyQueue maxNumberOfRetries 5
uip solution deploy config set ./deploy-config.json MyQueue maxNumberOfRetries 5
Set a conflict-fixing policy on every resource
uip solution deploy config set ./deploy-config.json --all conflictFixingAction UseExisting
uip solution deploy config set ./deploy-config.json --all conflictFixingAction UseExisting
Data shape (--output json)
Single-resource update:
{
"Code": "DeployConfigSet",
"Data": {
"Resource": "MyQueue",
"Property": "maxNumberOfRetries",
"OldValue": 1,
"NewValue": 5
}
}
{
"Code": "DeployConfigSet",
"Data": {
"Resource": "MyQueue",
"Property": "maxNumberOfRetries",
"OldValue": 1,
"NewValue": 5
}
}
Bulk update (--all):
{
"Code": "DeployConfigSet",
"Data": {
"Resource": "all",
"Property": "conflictFixingAction",
"NewValue": "UseExisting",
"ResourceCount": 12
}
}
{
"Code": "DeployConfigSet",
"Data": {
"Resource": "all",
"Property": "conflictFixingAction",
"NewValue": "UseExisting",
"ResourceCount": 12
}
}
uip solution deploy config link
Link a solution resource to an existing Orchestrator resource, so the deployment reuses it instead of creating a new one. Changes are local — apply them by passing the file to deploy run --config-file.
Arguments
<file>(required) — Path to the deploy config JSON file.<resource>(required) — Resource name orresourceKeyfrom the config file.
Options
-n, --name <name>(required) — Name of the existing Orchestrator resource to link to.--folder-path <path>— Orchestrator folder path where the existing resource lives.
Example
uip solution deploy config link ./deploy-config.json MyQueue \
--name ProductionQueue \
--folder-path "Shared/Production"
uip solution deploy config link ./deploy-config.json MyQueue \
--name ProductionQueue \
--folder-path "Shared/Production"
Data shape (--output json)
{
"Code": "DeployConfigLink",
"Data": {
"Resource": "MyQueue",
"LinkedTo": {
"name": "ProductionQueue",
"folderPath": "Shared/Production"
}
}
}
{
"Code": "DeployConfigLink",
"Data": {
"Resource": "MyQueue",
"LinkedTo": {
"name": "ProductionQueue",
"folderPath": "Shared/Production"
}
}
}
uip solution deploy config unlink
Remove a link previously set with config link. On the next deploy run --config-file, the resource will be created fresh instead of reused.
Arguments
<file>(required) — Path to the deploy config JSON file.<resource>(required) — Resource name orresourceKeyto unlink.
Example
uip solution deploy config unlink ./deploy-config.json MyQueue
uip solution deploy config unlink ./deploy-config.json MyQueue
Data shape (--output json)
{
"Code": "DeployConfigUnlink",
"Data": {
"Resource": "MyQueue",
"UnlinkedFrom": "ProductionQueue"
}
}
{
"Code": "DeployConfigUnlink",
"Data": {
"Resource": "MyQueue",
"UnlinkedFrom": "ProductionQueue"
}
}
Failure modes
- Resource not currently linked. The command refuses the unlink and points to
config link.
Related commands
uip solution publish— required step beforedeploy run.uip solution packages list— discover package names and versions.uip or— inspect or create the Orchestrator resources thatdeploy config linkreferences.
See also
- Your first pipeline — pack → publish → deploy run walkthrough.
- Authentication and Configuration — session setup and per-tenant defaults.
uip solutionoverview.
- Typical workflow
- uip solution deploy run
- Synopsis
- Options
- Examples
- Data shape (--output json)
- Timeout behaviour
- Failure modes
- uip solution deploy upgrade
- Arguments
- Options
- Examples
- Data shape (--output json)
- uip solution deploy status
- Arguments
- Options
- Example
- Data shape (--output json)
- uip solution deploy list
- Options
- Examples
- Data shape (--output json)
- uip solution deploy activate
- Arguments
- Options
- Example
- Data shape (--output json)
- uip solution deploy uninstall
- Arguments
- Options
- Example
- Data shape (--output json)
- Failure modes
- uip solution deploy config get
- Arguments
- Options
- Example
- Data shape (--output json)
- uip solution deploy config set
- Arguments
- Options
- Examples
- Data shape (--output json)
- uip solution deploy config link
- Arguments
- Options
- Example
- Data shape (--output json)
- uip solution deploy config unlink
- Arguments
- Example
- Data shape (--output json)
- Failure modes
- Related commands
- See also