hull releases install
Synopsis
hull releases install installs every release in your hull-releases.yaml, in
dependency order — dependencies first, dependents after. One command brings up
a whole set of related releases in the right sequence.
When to use it
- To stand up a fresh set of related releases in one shot — for example a datastore tier plus the services that depend on it.
- When the ordering matters: hull applies each release only after everything it
lists in
dependsOnis already installed.
What happens
- Reads the spec file (
--file, defaulthull-releases.yaml) and sorts the releases into dependency order. A cycle or unknowndependsOnname stops here, before anything is applied. - For each release in order, installs its package under the release
name, in the entry’snamespace(falling back to-n/--namespace), applying itsprofile,values, andset. - Each release is installed atomically: if one release fails to install, that release rolls itself back, the command stops, and the releases already installed before it are left in place.
- Prints one confirmation line per release as it completes.
install does not wait for pods to become ready before moving to the next
release. If a dependent must not start until its dependency is actually
serving, use hull workspace with --health-gate.
Usage
hull releases install [flags]
Flags
| Flag | Type | Default | Effect |
|---|---|---|---|
--file |
string | hull-releases.yaml |
read the spec from this path instead of the default |
Inherits the global flags (--kube-context, --kubeconfig, -n/--namespace,
--debug). -n sets the namespace for any release that does not name its own.
Worked example
INPUT — hull-releases.yaml:
releases:
- name: postgres
package: ./charts/postgres
namespace: data
- name: redis
package: ./charts/redis
namespace: data
- name: api
package: ./charts/api
namespace: apps
dependsOn:
- postgres
- redis
COMMAND:
hull releases install
OUTPUT:
[postgres] installed (revision 1, ns data)
[redis] installed (revision 1, ns data)
[api] installed (revision 1, ns apps)
postgres and redis install first (they depend on nothing), each in the
data namespace; api installs last, in apps, because it lists both as
dependencies. Every release is new, so each is at revision 1.