What are Stacks
Stacks let vCluster Platform deploy several applications as one dependency-aware unit. Use them when an environment needs more than a collection of independently installed applications.
A Stack can wait for one application to become healthy before it creates another. It can also capture values from one task and pass them to later tasks. Applications without dependencies can deploy concurrently.
Understand stack resources​
A Stack uses two Platform resources:
- A
StackTemplateis a reusable, parameterized task graph. Platform administrators create these templates and control who can use them. - A
StackInstanceapplies an inline graph or a referenced StackTemplate to one tenant cluster or control plane cluster.
Each task creates one child resource:
- An App task creates an AppInstance from an inline definition or an App reference.
- An Argo CD Application task creates an ArgoCDApplication from an inline definition or an ArgoCDApplicationTemplate reference.
A Stack can mix both task types. The destination, owner, and access settings come from the StackInstance and propagate to its children.
Understand task orchestration​
The diagram below shows one example task graph. A Stack's applications, task count, and dependencies depend entirely on what your environment needs.
Tasks form a directed acyclic graph. A task starts after every task in its dependsOn list becomes healthy. Tasks on separate branches can run at the same time.
Each task reports its own phase, reason, and child resource name. The StackInstance combines those results into an aggregate phase. This gives users one place to monitor the environment without hiding the status of each application.
Tasks can capture scalar values from Secrets or namespaced Kubernetes resources. Later tasks consume those values through the .Outputs template context. Template authors can publish selected outputs to Stack users without publishing every captured value.
Choose an application delivery resource​
| Resource | Use it when |
|---|---|
| App | You need one independently managed Helm chart, manifest set, or script. |
| ArgoCDApplication | Git is the source of truth and Argo CD continuously reconciles one application. |
| Stack | Several Apps or Argo CD Applications need dependencies, health gates, shared parameters, or output handoff. |
Argo CD sync waves order resources inside one Argo CD Application. A Stack adds dependency edges between separate applications and can mix App and Argo CD delivery.
Understand lifecycle and licensing​
A referenced StackTemplate is resolved during each reconciliation. StackTemplates don't have Stack revisions. Template changes can therefore affect existing StackInstances.
When a template removes a task, the StackInstance prune policy controls its existing child. Retain is the default and keeps the child. Prune deletes it in reverse dependency order.
Stacks don't have a separate license feature. App tasks use the Apps feature. Argo CD Application tasks also require the Argo CD Integration feature. Both are available on every plan, including the free plan.
Certified Stacks use the same resources and controller. vCluster Platform bundles certified StackTemplates and their supporting resources for tested integrations such as NVIDIA Run:ai. See Certified Stacks integrations for the full list.
Next steps​
- Create a Stack template to define tasks, dependencies, and outputs.
- Use a Stack to install a StackTemplate.
- Certified Stacks integrations to browse the bundled, tested StackTemplates.
- Manage Certified Stacks to deploy the bundled NVIDIA Run:ai integration.
- Stack permissions to configure RBAC for Stack resources.
- StackTemplate and StackInstance API references for the full field schema.
- Troubleshoot Stacks to interpret Stack and task status.