Deployment
Basic Deployment​
dpm canton-deploy deploy --network localnet
By default, deploy builds the project, uploads the DAR set, optionally vets it, onboards configured parties and users, and can run a Daml Script.
Deploy an Additional DAR​
dpm canton-deploy deploy --network localnet --dar ./vendor/token-standard.dar
The --dar flag can be repeated for multiple additional DAR files.
Run a Script After Upload​
dpm canton-deploy deploy --network localnet --script My.Module:setup
A party name should be allocated either by the config parties list or by your script, not both.
deploy allocates configured parties before running --script. If the script also calls allocatePartyByHint for the same name, Canton can reject the second allocation.
If a name is in parties, have the script look the party up instead of allocating it. If the script allocates it, leave it out of parties.
Skip the Build​
Use existing .daml/dist or .dpm/dist artifacts:
dpm canton-deploy deploy --network localnet --skip-build
Dry Run​
Print the DAR set without uploading:
dpm canton-deploy deploy --network devnet --skip-build --dry-run
Vetting​
Disable vetting for a deployment:
dpm canton-deploy deploy --network localnet --no-vet
You can override the configured vetOnUpload value with --vet or --no-vet.
Uploading a DAR does not create contracts. Use --script or the run command to seed the ledger.
Vet​
Vet the DAR set that deploy would upload:
dpm canton-deploy vet --network localnet
dpm canton-deploy vet --network localnet --skip-build
Vet one already-uploaded DAR by main package ID:
dpm canton-deploy vet-dar <mainPackageId> --network localnet
By default, vetting waits until it is observed on the synchronizer. Use --no-sync to return as soon as the request is accepted.