This repository defines the Giant Swarm Kubernetes APIs in the application.giantswarm.io
group including the following:
App
AppCatalog
(deprecated in favor ofCatalog
)AppCatalogEntry
Catalog
Chart
Examples CRs for these can be found in the docs/cr
directory.
Note: These APIs were originally defined in giantswarm/apiextensions
and were moved here to simplify dependency graphs.
Code generation is used to generate:
DeepCopy
methods for each Go type to satisfy theruntime.Object
interface (zz_generated.deepcopy.go
).- CRDs for each API in YAML format to be applied to a Kubernetes cluster before creating CRs using that API (
config/crd
).
Regenerate these files using make generate
. Other options can be viewed in Makefile.custom.mk
.
Additionally, example CRs are generated from code in Go tests using go test ./... -update
.
After creating a release the following steps are needed.
Update the reference in the apiextensions then run make generate
in apiextensions.
opsct ensure crds
uses the master branch of the crds-common chart.
Update the reference in the docs config.
All CRDs are embedded in apptestctl and the Chart CRD is embedded in app-operator.
$ make sync-crds
$ make sync-chart-crd