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>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-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>path—JSON 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": "[email protected]/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": "[email protected]/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>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>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-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-workspaceflagoffOnly 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>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, --yes — Required. 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