takeoff options for installing CRDs and Namespaces
davidmdm opened this issue · 0 comments
davidmdm commented
Until now, the Yoke project has not treated Custom Resource Definitions (CRDs) and namespaces as special cases when encountered in a Flight. However, they pose several challenges:
- They are often required by other resources within the Flight, necessitating a specific order of resource creation.
- Dry runs are impossible due to the absence of the namespace or extension, causing failures.
- Their lifespan often exceeds the scope of the Flight, as other Flights/Resources may depend on them.
- we cannot delete them like other resources when uninstalling a flight.
However, it's often useful to specify them as flight dependencies. To address this, Yoke could introduce the following flags: --create-namespaces and --create-crds. The Takeoff process would work as follows:
- Extract namespaces and CRDs from the flight.
- If the respective create flags are present, create them if they don't already exist.
- Apply the filtered flight as usual, capturing only the state of the filtered result.