UiPath Documentation
uipath-cli
latest
false
UiPath CLI user guide

uip solution deploy

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.

SubcommandPurpose
runInstall a new deployment from a published package.
upgradeUpgrade an existing deployment to a newer package version, in place.
statusCheck the status of a pipeline deployment.
listList existing deployments.
activateActivate a deployment that was installed without auto-activation.
uninstallRemove a deployment and its provisioned resources.
config getFetch the default deployment configuration for a package.
config setSet a resource property in a deploy config file.
config linkLink a solution resource to an existing Orchestrator resource.
config unlinkRemove 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

LongValueDefaultDescription
-n, --name <deployment-name>textRequired. Name for the deployment. Used by deploy status, deploy upgrade, deploy activate, and deploy uninstall to identify this install.
--package-name <name>textRequired. Solution package name. Use packages list to find available names.
--package-version <version>textRequired. Solution package version.
--folder-name <name>textRequired. Name of the new Orchestrator folder created for this deployment.
--parent-folder-path <path>pathParent 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>GUIDParent folder key. Alternative to --parent-folder-path.
--personal-workspaceflagoffDeploy 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>texttenant feedDeploy 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>pathJSON or YAML configuration file. Generate with deploy config get, edit with config set / config link, then pass it here.
--skip-activateflagoffSkip auto-activation; leave the deployment in Inactive (Ready to activate) state. Activate later with deploy activate.
--waitflagoffFor 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, --yesflagoffDeploy even when this package already has a deployment under --name, installing a second, independent copy with its own folder.
--timeout <seconds>seconds360Polling timeout applied per phase — deploy, and (when not skipped) activate.
--poll-interval <ms>ms5000Milliseconds between status polls during the deploy and activate phases.
--login-validity <minutes>minutes10Minimum 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, --yes is passed (installs a second, independent copy) — use deploy upgrade instead if the intent is to move the existing deployment to a new version.
  • --name exists, bound to a different --package-name. Fails outright — a deployment name cannot switch packages via deploy run.
  • A deployment for --name is 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. Use deploy list to find it (the Key field).

Options

LongValueDefaultDescription
--version <version>textnewest availableTarget package version. Only the latest published version is supported today.
--personal-workspaceflagoffUpgrade a deployment in your Personal Workspace feed instead of the tenant.
--no-waitflagoffReturn as soon as the upgrade is accepted, instead of waiting for it to finish.
--timeout <seconds>seconds300Seconds to wait for the upgrade to finish.
--poll-interval <ms>ms5000Milliseconds between status polls.
--login-validity <minutes>minutes10Minimum 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) — The PipelineDeploymentId returned by deploy run.

Options

  • --login-validity <minutes> — Defaults to 10.

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

LongValueDefaultDescription
--folder-path <path>pathFilter by parent folder path. Filtering is applied after fetching; increase --limit if results look incomplete when using this filter.
--folder-key <key>GUIDFilter by parent folder key. Alternative to --folder-path.
-l, --limit <number>number50Max deployments to fetch.
--offset <number>number0Number of deployments to skip (applied before --folder-path/--folder-key filtering).
--sort-by <column>textstartTimeColumn to sort by.
--sort-order <direction>Ascending | DescendingDescendingSort direction.
--operation-status <statuses>comma-separatedServer-side filter by operation status (for example Successful, InProgress, Failed).
--activation-status <statuses>comma-separatedServer-side filter by activation status (for example Active, Inactive).
--personal-workspaceflagoffOnly list deployments from the current user's Personal Workspace feed. Mutually exclusive with --feed.
--feed <name-or-key>textOnly list deployments from this feed. Mutually exclusive with --personal-workspace.
--login-validity <minutes>minutes10Minimum 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. Use deploy list to find deployment names.

Options

  • --timeout <seconds> — Activation polling timeout. Defaults to 360.
  • --poll-interval <ms> — Milliseconds between status polls. Defaults to 5000.
  • --login-validity <minutes> — Defaults to 10.

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, --yesRequired. Confirms this irreversible operation — the CLI never prompts.
  • --timeout <seconds> — Uninstall polling timeout. Defaults to 360.
  • --poll-interval <ms> — Milliseconds between status polls. Defaults to 5000.
  • --login-validity <minutes> — Defaults to 10.

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: true on the first call; no polling happens. Only Status/DeploymentName appear.
  • Scheduled — Orchestrator schedules the work without returning an instance ID; a Scheduled field is added.
  • Polled — an InstanceId is 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. Use packages list.

Options

LongValueDefaultDescription
--package-version <version>textlatestPackage version.
-d, --destination <path>pathstdoutWrite the configuration to this file instead of stdout.
--format <format>json | yamljsonConfiguration format.
--login-validity <minutes>minutes10Minimum 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 by config 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-level conflictFixingAction property.

Options

  • --all — Apply the property to all resources in the file. Only permitted with conflictFixingAction (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
  }
}

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 or resourceKey from 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"
    }
  }
}

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 or resourceKey to 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.

See also

Was this page helpful?

Connect

Need help? Support

Want to learn? UiPath Academy

Have questions? UiPath Forum

Stay updated