Cluster API Provider Cloud Director - packaged as a Giant Swarm app.
This repository is primary used to import the upstream Cluster API Provider Cloud Director manifests into Giant Swarm's own app catalog.
Content of the /helm
directory will be bundled, released and pushed to the app-catalog
via architect
. This happens automatically and is done by this circleCI
configuration.
To keep it quite easy to update the manifest from upstream, we don't change the fetched manifests directly. All Giant Swarm specific adjustments get applied via
kustomize
.
How to work within this repository?
Note: Because CAPVCD is in development, we currently work off a fork of upstream main where we pin specific commits as opposed to upstream releases. In the Makefile, specify the organization in UPSTREAM_ORG
and the app name in APPLICATION_NAME
.
- if not already done, run
make fetch-upstream-manifest
(only has to be done once)upstream manifest will be stored in
config/kustomize/origin
- write your desired changes as kustomize patches in [config/kustomize]
- run
make apply-kustomize-patches
to apply the changes\nthis will generate a patched version under
config/kustomize/tmp
- once you're done, run
make release-manifests
to move all relevant files into thehelm/cluster-api-provider-cloud-director
folder - finally, run
make wrap-with-conditional
to wrap some manifests with{{ if }}
statemets, e.g.CiliumNetworkPolicy
when it's disabled
- edit the value of
COMMIT_TO_SYNC
in the Makefile to the desired commit to pin in the source repo. - run
make all
- CAPVCD doc
- internal CAPVCD fork -
giantswarm/cluster-api-provider-cloud-director