diff --git a/kube/1-bootstrap/flux/2-kube-crds.yaml b/kube/1-bootstrap/flux/2-kube-crds.yaml new file mode 100644 index 00000000..109c6bf1 --- /dev/null +++ b/kube/1-bootstrap/flux/2-kube-crds.yaml @@ -0,0 +1,25 @@ +--- +apiVersion: kustomize.toolkit.fluxcd.io/v1beta2 + +# not GitRepository since we're using single repo with both bootstrap path and multiple CD paths +kind: Kustomization + +# what this manifest will be named and where will it be deployed to +metadata: + name: 2-kube-crds + # only manifest is deployed in flux-system namespace so Flux can reference it, resources in the Git repo path won't be deployed here + namespace: flux-system + +spec: + sourceRef: + kind: GitRepository + # for single repo with both bootstrap path and multiple paths to CD, use repo already known to Flux by referring to it using "flux-system", so the Source of Truth = repo Flux already watches for its bootstrap and state + name: flux-system + # path of repo to watch + path: ./kube/2-kube-crds + + # check source every minute + interval: 1m0s + + prune: false + # wait: true diff --git a/kube/1-bootstrap/flux/3-kube-core.yaml b/kube/1-bootstrap/flux/3-kube-core.yaml new file mode 100644 index 00000000..d9c17417 --- /dev/null +++ b/kube/1-bootstrap/flux/3-kube-core.yaml @@ -0,0 +1,23 @@ +--- +apiVersion: kustomize.toolkit.fluxcd.io/v1beta2 +kind: Kustomization +metadata: + name: 3-kube-core + namespace: flux-system +spec: + sourceRef: + kind: GitRepository + name: flux-system + path: ./kube/3-kube-core + interval: 1m0s + + dependsOn: + - name: 2-kube-crds + + decryption: + provider: sops + secretRef: + name: sops-age + + prune: false + # wait: true diff --git a/kube/1-bootstrap/flux/4-core.yaml b/kube/1-bootstrap/flux/4-core.yaml new file mode 100644 index 00000000..f211b24c --- /dev/null +++ b/kube/1-bootstrap/flux/4-core.yaml @@ -0,0 +1,23 @@ +--- +apiVersion: kustomize.toolkit.fluxcd.io/v1beta2 +kind: Kustomization +metadata: + name: 4-core + namespace: flux-system +spec: + sourceRef: + kind: GitRepository + name: flux-system + path: ./kube/4-core + interval: 1m0s + + dependsOn: + - name: 3-kube-core + + decryption: + provider: sops + secretRef: + name: sops-age + + prune: false + # wait: true diff --git a/kube/1-bootstrap/flux/5-apps.yaml b/kube/1-bootstrap/flux/5-apps.yaml new file mode 100644 index 00000000..fc323251 --- /dev/null +++ b/kube/1-bootstrap/flux/5-apps.yaml @@ -0,0 +1,23 @@ +--- +apiVersion: kustomize.toolkit.fluxcd.io/v1beta2 +kind: Kustomization +metadata: + name: 5-apps + namespace: flux-system +spec: + sourceRef: + kind: GitRepository + name: flux-system + path: ./kube/5-apps + interval: 1m0s + + dependsOn: + - name: 4-core + + decryption: + provider: sops + secretRef: + name: sops-age + + prune: false + # wait: true