From a013c68c6b12c1060544bcd8ed0b50b6ac92994a Mon Sep 17 00:00:00 2001 From: Rutam21 Date: Mon, 3 Jun 2024 12:12:21 +0530 Subject: [PATCH 1/2] Feat: New Toolsets added for Docker, Kubernetes and Helm --- examples/build_docker_image.yaml | 9 +++++++++ examples/helm_dry_run.yaml | 9 +++++++++ examples/load_docker_image.yaml | 9 +++++++++ examples/patch_kubernetes_resource.yaml | 9 +++++++++ examples/rollback_helm_release.yaml | 9 +++++++++ examples/rollback_kubernetes_deployment.yaml | 9 +++++++++ examples/rollout_restart_kubernetes_deployment.yaml | 9 +++++++++ examples/save_docker_image.yaml | 9 +++++++++ examples/scale_kubernetes_deploymen.yaml | 9 +++++++++ examples/tag_docker_image.yaml | 9 +++++++++ examples/uninstall_helm_release.yaml | 9 +++++++++ examples/upgrade_helm_release.yaml | 9 +++++++++ 12 files changed, 108 insertions(+) create mode 100644 examples/build_docker_image.yaml create mode 100644 examples/helm_dry_run.yaml create mode 100644 examples/load_docker_image.yaml create mode 100644 examples/patch_kubernetes_resource.yaml create mode 100644 examples/rollback_helm_release.yaml create mode 100644 examples/rollback_kubernetes_deployment.yaml create mode 100644 examples/rollout_restart_kubernetes_deployment.yaml create mode 100644 examples/save_docker_image.yaml create mode 100644 examples/scale_kubernetes_deploymen.yaml create mode 100644 examples/tag_docker_image.yaml create mode 100644 examples/uninstall_helm_release.yaml create mode 100644 examples/upgrade_helm_release.yaml diff --git a/examples/build_docker_image.yaml b/examples/build_docker_image.yaml new file mode 100644 index 0000000000..1221f8dbe8 --- /dev/null +++ b/examples/build_docker_image.yaml @@ -0,0 +1,9 @@ +toolsets: + - name: "docker_tools" + + tools: + - name: "build_docker_image" + description: "Build a Docker image from a Dockerfile" + + command: | + docker build -t {{ image_name }}:{{ tag }} {{ dockerfile_path }} diff --git a/examples/helm_dry_run.yaml b/examples/helm_dry_run.yaml new file mode 100644 index 0000000000..bd04ba30ac --- /dev/null +++ b/examples/helm_dry_run.yaml @@ -0,0 +1,9 @@ +toolsets: + - name: "helm_tools" + + tools: + - name: "helm_dry_run" + description: "Perform a Helm dry run to see the generated manifests" + + command: | + helm upgrade --install {{ release_name }} {{ chart }} -n {{ namespace }} --dry-run diff --git a/examples/load_docker_image.yaml b/examples/load_docker_image.yaml new file mode 100644 index 0000000000..c11533f59d --- /dev/null +++ b/examples/load_docker_image.yaml @@ -0,0 +1,9 @@ +toolsets: + - name: "docker_tools" + + tools: + - name: "load_docker_image" + description: "Load a Docker image from a tar archive" + + command: | + docker load -i {{ tar_path }} diff --git a/examples/patch_kubernetes_resource.yaml b/examples/patch_kubernetes_resource.yaml new file mode 100644 index 0000000000..8cc08cce23 --- /dev/null +++ b/examples/patch_kubernetes_resource.yaml @@ -0,0 +1,9 @@ +toolsets: + - name: "kubernetes_tools" + + tools: + - name: "patch_kubernetes_resource" + description: "Apply a patch to a Kubernetes resource" + + command: | + kubectl patch {{ kind }} {{ name }} -n {{ namespace }} --patch '{{ patch }}' diff --git a/examples/rollback_helm_release.yaml b/examples/rollback_helm_release.yaml new file mode 100644 index 0000000000..6d2835fa61 --- /dev/null +++ b/examples/rollback_helm_release.yaml @@ -0,0 +1,9 @@ +toolsets: + - name: "helm_tools" + + tools: + - name: "rollback_helm_release" + description: "Rollback a Helm release to a previous revision" + + command: | + helm rollback {{ release_name }} {{ revision }} -n {{ namespace }} diff --git a/examples/rollback_kubernetes_deployment.yaml b/examples/rollback_kubernetes_deployment.yaml new file mode 100644 index 0000000000..34ef8ba393 --- /dev/null +++ b/examples/rollback_kubernetes_deployment.yaml @@ -0,0 +1,9 @@ +toolsets: + - name: "kubernetes_tools" + + tools: + - name: "rollback_kubernetes_deployment" + description: "Rollback a Kubernetes deployment to a previous revision" + + command: | + kubectl rollout undo deployment/{{ deployment_name }} -n {{ namespace }} --to-revision={{ revision }} diff --git a/examples/rollout_restart_kubernetes_deployment.yaml b/examples/rollout_restart_kubernetes_deployment.yaml new file mode 100644 index 0000000000..4753cfd355 --- /dev/null +++ b/examples/rollout_restart_kubernetes_deployment.yaml @@ -0,0 +1,9 @@ +toolsets: + - name: "kubernetes_tools" + + tools: + - name: "rollout_restart_kubernetes_deployment" + description: "Perform a rollout restart on a Kubernetes deployment" + + command: | + kubectl rollout restart deployment/{{ deployment_name }} -n {{ namespace }} diff --git a/examples/save_docker_image.yaml b/examples/save_docker_image.yaml new file mode 100644 index 0000000000..24203b4e66 --- /dev/null +++ b/examples/save_docker_image.yaml @@ -0,0 +1,9 @@ +toolsets: + - name: "docker_tools" + + tools: + - name: "save_docker_image" + description: "Save a Docker image to a tar archive" + + command: | + docker save -o {{ output_path }} {{ image_name }}:{{ tag }} diff --git a/examples/scale_kubernetes_deploymen.yaml b/examples/scale_kubernetes_deploymen.yaml new file mode 100644 index 0000000000..a21c055e6d --- /dev/null +++ b/examples/scale_kubernetes_deploymen.yaml @@ -0,0 +1,9 @@ +toolsets: + - name: "kubernetes_tools" + + tools: + - name: "scale_kubernetes_deployment" + description: "Scale a Kubernetes deployment to a specified number of replicas" + + command: | + kubectl scale deployment {{ deployment_name }} --replicas={{ replicas }} -n {{ namespace }} \ No newline at end of file diff --git a/examples/tag_docker_image.yaml b/examples/tag_docker_image.yaml new file mode 100644 index 0000000000..4cc9e9ab6c --- /dev/null +++ b/examples/tag_docker_image.yaml @@ -0,0 +1,9 @@ +toolsets: + - name: "docker_tools" + + tools: + - name: "tag_docker_image" + description: "Tag a Docker image with a new tag" + + command: | + docker tag {{ source_image }}:{{ source_tag }} {{ target_image }}:{{ target_tag }} diff --git a/examples/uninstall_helm_release.yaml b/examples/uninstall_helm_release.yaml new file mode 100644 index 0000000000..233784d5ed --- /dev/null +++ b/examples/uninstall_helm_release.yaml @@ -0,0 +1,9 @@ +toolsets: + - name: "helm_tools" + + tools: + - name: "uninstall_helm_release" + description: "Uninstall a Helm release" + + command: | + helm uninstall {{ release_name }} -n {{ namespace }} diff --git a/examples/upgrade_helm_release.yaml b/examples/upgrade_helm_release.yaml new file mode 100644 index 0000000000..671418b6a8 --- /dev/null +++ b/examples/upgrade_helm_release.yaml @@ -0,0 +1,9 @@ +toolsets: + - name: "helm_tools" + + tools: + - name: "upgrade_helm_release" + description: "Upgrade a Helm release to a new chart version" + + command: | + helm upgrade {{ release_name }} {{ chart }} -n {{ namespace }} --version {{ chart_version }} From 819f6da0f92ae40de814975f1ef3c37f9fe39e08 Mon Sep 17 00:00:00 2001 From: Rutam21 Date: Mon, 3 Jun 2024 12:19:21 +0530 Subject: [PATCH 2/2] Minor Revamp --- examples/scale_kubernetes_deploymen.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/scale_kubernetes_deploymen.yaml b/examples/scale_kubernetes_deploymen.yaml index a21c055e6d..a6b22a0482 100644 --- a/examples/scale_kubernetes_deploymen.yaml +++ b/examples/scale_kubernetes_deploymen.yaml @@ -6,4 +6,4 @@ toolsets: description: "Scale a Kubernetes deployment to a specified number of replicas" command: | - kubectl scale deployment {{ deployment_name }} --replicas={{ replicas }} -n {{ namespace }} \ No newline at end of file + kubectl scale deployment {{ deployment_name }} --replicas={{ replicas }} -n {{ namespace }}