Troubleshooting Deployment Definition
Possible Errors
There are a few errors that can occur when trying to use commands with a Deployment Definition.
- File intersection.
- With another file.
- With an excluded file.
- Multiple Deployment Definitions in the same directory.
File intersection
Using a Deployment Definition is a separate logical grouping than files or directories.
With Another File
If the set of files a Deployment Definition is responsible for intersects with other items in the command, the following error will occur:
Command: ugs deploy Assets/DeployableAssets/CloudCode/CloudCode.ddef Assets/DeployableAssets/CloudCode/scriptA.js
Assets/
├── DeployableAssets/
│ ├── CloudCode/
│ │ ├── CloudCode.ddef
│ │ ├── scriptA.js
│ │ ├── scriptB.js
│ │ └── Tests/
│ │ ├── scriptA_test.js
│ │ └── scriptB_test.js
[Error]:
A conflict was found between the deployment definitions and the other arguments:
'Assets/DeployableAssets/CloudCode/scriptA.js' [CloudCode.ddef]
With an Excluded File
If the set of excluded files for a Deployment Definition intersects with other items in the command, the following error will occur:
Command: ugs deploy Assets/DeployableAssets/CloudCode/CloudCode.ddef Assets/DeployableAssets/CloudCode/scriptA.js
Assets/
├── DeployableAssets/
│ ├── CloudCode/
│ │ ├── CloudCode.ddef
│ │ ├── scriptA.js
│ │ ├── scriptB.js
│ │ └── Tests/
│ │ ├── scriptA_test.js
│ │ └── scriptB_test.js
[Error]:
A conflict was found between the deployment definition exclusions and the other arguments:
'Assets/DeployableAssets/CloudCode/Tests/scriptA_test.js' [CloudCode.ddef]
Multiple Deployment Definitions in a Directory
Given that a Deployment Definition is responsible for a whole directory, having multiple Deployment Definition in the same directory will cause an error when trying to execute a command that involves them.
Command: ugs deploy Assets/DeployableAssets/CloudCode/CloudCode.ddef Assets/DeployableAssets/CloudCode/scriptA.js
Assets/
├── DeployableAssets/
│ ├── CloudCode/
│ │ ├── CloudCode1.ddef
│ │ ├── CloudCode2.ddef
│ │ ├── scriptA.js
│ │ ├── scriptB.js
│ │ └── Tests/
│ │ ├── scriptA_test.js
│ │ └── scriptB_test.js
[Error]:
Multiple deployment definitions were found in the directory 'Assets/DeployableAssets/CloudCode': 'CloudCode1.ddef' and 'CloudCode2.ddef'
Fetch with --reconcile
As mentioned in the commands page, it is not possible to use the --reconcile
with the fetch command when using Deployment Definition.
Attempting to do so will generate the following error message:
[Error]:
Reconcile is not compatible with Deployment Definitions