vpctl release commands
Pull, generate, deploy, and uninstall vpctl release commands
Read time 4 minutesLast updated 11 hours ago
Use the
releasePull a release
Download a release from the registry. If you use a manifest file, the tool reads the version from the manifest automatically. By default, the release is extracted to./extracted-releaseParameters:vpctl release pull --clean-output
- : Directory to extract the archive to (default:
--extract-dir)../extracted-release - : Skip extracting the downloaded archive (default: extracts to
--skip-extract)../extracted-release - : Clear the extraction directory before extracting.
--clean-output - : Release version to pull (optional, defaults to value from manifest).
--version - : Registry URL (default:
--registry).uccmpprivatecloud.azurecr.io - : Output file path for the archive (default:
--output).unity-private-cloud-<platform>-<version>.tar.gz
Example without manifest, specify version:vpctl release pull --clean-output
Example with custom extraction directory:vpctl release pull --version 1.2.3 --clean-output
Example skipping extraction:vpctl release pull --extract-dir ./my-release --clean-output
vpctl release pull --skip-extract
Generate and deploy charts
Choose your deployment method: Helm or ArgoCD.Generate Helm charts
Parameters:vpctl release generate --clean-output
- : Clean the output directory before generating
--clean-output - : Output format (
--formatgenerates app-of-apps chart structure; omit for standard Helm charts)argocd - : Path to extracted release (defaults to
--extracted-release)./extracted-release - : Output directory (defaults to
--output)generated-charts - : Filter to generate only charts matching a name pattern
--name - : Skip vpctl version compatibility check against the release package
--skip-version-check
vpctl release generate --extracted-release ./extracted-release --output ./my-charts --clean-output
Deploy with Helm
Preview deployment (recommended):If you're deploying Asset Manager for the first time, deploy the release in waves. Start with the lowest wave, use thevpctl release deploy --dry-run
--waveCommon options:vpctl release deploy
- : Show commands without executing.
--dry-run - : Deployment format (
--formatorhelm; defaults toargocd).helm - : Directory containing charts (defaults to
--charts-dir).generated-charts - : Deploy only a specific wave (Helm format only; for example,
--waveis lowest,-3is highest).0 - : Deploy only a single chart by name.
--name - : Wait for each Helm release to complete before moving on (default:
--wait; disable withtrue).--wait=false - : Timeout per Helm release when
--timeout(default:--wait=true; ignored when10m).--wait=false - : Number of additional attempts after a failed Helm command (default:
--retries). Useful for the CRD-not-yet-visible race that sometimes resolves on a second attempt.0 - : Delay between retry attempts (default:
--retry-delay; only meaningful when5s).--retries > 0 - : Update chart dependencies before deployment (default: true).
--dependency-update - : Additional Helm flags to pass to the command.
--helm-flags
vpctl release deploy --wave -3
Manifest defaults for ArgoCD
You can define ArgoCD parameters in the manifest underdeployment.argocdWhen the tool reads a value from the manifest instead of a CLI flag, it prints a log message, for example,# manifest.yamldeployment: argocd: repoURL: "https://github.com/org/repo.git" pathPrefix: "onprem/cluster1" destinationServer: "https://kubernetes.default.svc" targetRevision: "main"
Using argocd-repo-url from manifest: ...Helm chart mode
Thedeployment.helmChartMode# manifest.yamldeployment: helmChartMode: "local" # default: use charts from the release package
Value | Behavior |
|---|---|
| All charts are installed from the release package. This is the safe default for existing installations and airgapped environments. |
| Charts marked as |
"local"helmChartMode: "remote"Generate ArgoCD application
If you setdeployment.argocdOr override specific values for each run:vpctl release generate --format argocd --clean-output
You can still pass all flags explicitly, they take precedence over the manifest:vpctl release generate --format argocd --argocd-path-prefix <path-prefix> --argocd-target-revision <branch-or-tag> --clean-output
Parameters:vpctl release generate --format argocd --argocd-repo-url <your-git-repo-url> --argocd-destination "https://kubernetes.default.svc" --argocd-target-revision "main" --argocd-path-prefix <path-prefix> --clean-output
- : Generate ArgoCD format
--format argocd - : Git repository URL where charts are stored (can be set in manifest
--argocd-repo-url)deployment.argocd.repoURL - : Kubernetes server URL (can be set in manifest
--argocd-destination)deployment.argocd.destinationServer - : Git branch/tag to use (can be set in manifest
--argocd-target-revision)deployment.argocd.targetRevision - : Path prefix in the Git repository (can be set in manifest
--argocd-path-prefix)deployment.argocd.pathPrefix - : Clean output directory before generating
--clean-output
Deploy ArgoCD application
Preview deployment (recommended):Execute deployment:vpctl release deploy --format argocd --dry-run
Common options:vpctl release deploy --format argocd
- : Use ArgoCD deployment
--format argocd - : Preview kubectl command without executing
--dry-run - : Directory containing charts (defaults to
--charts-dir)generated-charts
Uninstall a release
To remove a deployed release, use the uninstall command. The tool uninstalls charts in reverse wave order with the highest wave first to ensure dependencies are removed correctly. Preview uninstall commands (recommended):Execute uninstall:vpctl release uninstall --dry-run
Common options:vpctl release uninstall
- : Show commands without executing
--dry-run - : Directory containing charts (defaults to
--charts-dir)generated-charts - : Uninstall only charts in the specified wave (for example
--waveis lowest,-3is highest)0 - : Uninstall only a single chart (chart name)
--name
Example uninstalling a specific chart:vpctl release uninstall --wave 0 --dry-run
The uninstall command usesvpctl release uninstall --name my-chart --dry-run
helm uninstallhelm template | kubectl delete