Skip to content
@kustomize-everything

Kustomize Everything!

Tools for automating standard Kustomize-based deployment workflows

Overview

This org exists to provide easy-to-use Kustomize-based GitOps deployment tools for repositories containing multiple deploy environments. This is meant to be accomplished via the techniques of promoting built container image shas from development repos and using "rendered YAML branches" for GitOps deployment. Other FOSS tools that enable a similar workflow are Bookkeeper for managing rendered YAML branches and Kargo for managing promotions. Both tools are developed by Akuity, who provides managed ArgoCD as a service.

To get started, look at the guestbook-deploy repository which deploys the guestbook app.

Github Actions

What are "rendered YAML branches"?

The technique of using "rendered YAML branches" removes the responsibility of config templating from your deployment tool and gives it to the CI/CD pipeline. For example, the action-env-build-and-deploy GitHub Action automates the config management templating (e.g. kustomize build) such that fully rendered Kubernetes manifests are outputted to an environment specific branch (e.g. env/stage, env/prod). The deployment tool is then configured to deploy the manifests from the environment branch, as opposed to a directory in the main branch.

An example application source repository is located at https://github.com/kustomize-everything/guestbook and has a CI/CD Pipeline which builds new container images and automatically commits the new image tags to the kustomize environments contained in the guestbook-deploy repository.

Why this approach?

Advantages

  • Easily understandable change history/diff - change is not obfuscated by config tooling
  • Use different policies per environment - e.g. automated commit/deployment to dev/stage, PR approval process and protected branch for prod
  • Upgrading your deployment tool and baked-in toolchain (kustomize) is no longer a risk - templating done in CI, not by the deployment tool
  • Better security - No longer at risk from vulnerabilities in tooling (helm, kustomize)
  • Safer change management - Change to a kustomize base will not immediately affect all environments
  • Improved deployment tool performance - expensive templating process (kustomize build) is no longer performed by the deployment tool

Disadvantages

  • Additional CI automation requirements (e.g. GitHub action)
  • Does not support tools which render plain-text secrets (e.g. Kustomize + SOPS)

Pinned Loading

  1. action-env-build-and-deploy action-env-build-and-deploy Public

    Build and diff a Kustomize Environment with GitHub Actions

    Shell 4 3

  2. action-promote action-promote Public

    GitHub action providing a standard promotion pattern using Kustomize

    Python 4 6

  3. action-kustomize action-kustomize Public

    Run Kustomize with GitHub Actions

    Shell

  4. guestbook guestbook Public

    Forked from akuity/guestbook

    Go

  5. guestbook-deploy guestbook-deploy Public

    Forked from akuity/guestbook-deploy

    Deployment manifests for the guestbook app

    1

Repositories

Showing 10 of 13 repositories
  • action-promote Public

    GitHub action providing a standard promotion pattern using Kustomize

    kustomize-everything/action-promote’s past year of commit activity
    Python 4 MIT 6 6 12 Updated Jul 31, 2024
  • kustomize-everything/test-deploy’s past year of commit activity
    0 MIT 0 1 275 Updated Jul 31, 2024
  • kustomize-everything/action-yaml-linter’s past year of commit activity
    Shell 1 MIT 0 1 6 Updated Jul 22, 2024
  • kustomize-everything/action-gitops’s past year of commit activity
    Shell 0 MIT 0 1 2 Updated Jun 16, 2024
  • action-env-build-and-deploy Public

    Build and diff a Kustomize Environment with GitHub Actions

    kustomize-everything/action-env-build-and-deploy’s past year of commit activity
    Shell 4 MIT 3 3 3 Updated May 24, 2024
  • action-kustomize Public

    Run Kustomize with GitHub Actions

    kustomize-everything/action-kustomize’s past year of commit activity
    Shell 0 MIT 0 1 0 Updated Feb 27, 2024
  • kustomize-overlazy Public

    In development

    kustomize-everything/kustomize-overlazy’s past year of commit activity
    Go 0 0 0 1 Updated Dec 15, 2023
  • .github Public

    Org Profile

    kustomize-everything/.github’s past year of commit activity
    0 0 0 1 Updated Dec 15, 2023
  • action-github-metadata Public

    Github Action to add some extra ENV vars for metadata about the Github repo and action

    kustomize-everything/action-github-metadata’s past year of commit activity
    0 MIT 0 0 0 Updated Oct 2, 2023
  • kustomdiff Public archive

    A Go CLI tool for rendering all the kustomize files that have changed since a particular git ref

    kustomize-everything/kustomdiff’s past year of commit activity
    1 MIT 0 0 0 Updated Aug 14, 2023

People

This organization has no public members. You must be a member to see who’s a part of this organization.

Top languages

Loading…

Most used topics

Loading…