From c2412b6e26035aa844538626662dc1431c11d5c8 Mon Sep 17 00:00:00 2001 From: Joseph Hanson Date: Fri, 29 Sep 2023 13:20:22 +0000 Subject: [PATCH] Added flux taskfile. --- .taskfiles/flux/Taskfile.yaml | 47 +++++++++++++++++++++++++++++++++++ Taskfile.yaml | 3 +++ 2 files changed, 50 insertions(+) create mode 100644 .taskfiles/flux/Taskfile.yaml diff --git a/.taskfiles/flux/Taskfile.yaml b/.taskfiles/flux/Taskfile.yaml new file mode 100644 index 0000000..2f3768a --- /dev/null +++ b/.taskfiles/flux/Taskfile.yaml @@ -0,0 +1,47 @@ +--- +version: "3" + +tasks: + gr-sync: + desc: Sync all Flux GitRepositories + cmds: + - | + kubectl get gitrepositories --all-namespaces --no-headers | awk '{print $1, $2}' \ + | xargs -P 4 -L 1 bash -c \ + 'kubectl -n $0 annotate gitrepository/$1 reconcile.fluxcd.io/requestedAt=$(date +%s) --field-manager=flux-client-side-apply --overwrite' + + ks-sync: + desc: Sync all Flux Kustomizations + cmds: + - | + kubectl get kustomization --all-namespaces --no-headers | awk '{print $1, $2}' \ + | xargs -P 4 -L 1 bash -c \ + 'kubectl -n $0 annotate kustomization/$1 reconcile.fluxcd.io/requestedAt="$(date +%s)" --field-manager=flux-client-side-apply --overwrite' + + hr-sync: + desc: Sync all Flux HelmReleases + cmds: + - | + kubectl get helmreleases --all-namespaces --no-headers | awk '{print $1, $2}' \ + | xargs -P 4 -L 1 bash -c \ + 'kubectl -n $0 annotate helmrelease/$1 reconcile.fluxcd.io/requestedAt="$(date +%s)" --overwrite' + + tf-sync: + desc: Sync Flux Terraforms + cmds: + - | + kubectl get terraforms --all-namespaces --no-headers | awk '{print $1, $2}' \ + | xargs -P 4 -L 1 bash -c \ + 'kubectl -n $0 annotate terraform/$1 reconcile.fluxcd.io/requestedAt="$(date +%s)" --overwrite' + hr-suspend: + desc: Suspend all Flux HelmReleases + cmds: + - | + flux get helmrelease --all-namespaces --no-header | awk '{print $1, $2}' \ + | xargs -L 1 bash -c 'flux -n $0 suspend helmrelease $1' + hr-resume: + desc: Resume all Flux HelmReleases + cmds: + - | + flux get helmrelease --all-namespaces --no-header | awk '{print $1, $2}' \ + | xargs -L 1 bash -c 'flux -n $0 resume helmrelease $1' diff --git a/Taskfile.yaml b/Taskfile.yaml index ef08fa5..e1caf3f 100644 --- a/Taskfile.yaml +++ b/Taskfile.yaml @@ -24,6 +24,9 @@ includes: rook: taskfile: ".taskfiles/rook" dir: .taskfiles/rook + flux: + dir: .taskfiles/flux + taskfile: .taskfiles/flux tasks: