tofu-controller
kustomize
tofu-controller | kustomize | |
---|---|---|
14 | 28 | |
1,161 | 10,588 | |
3.9% | 0.7% | |
9.6 | 9.3 | |
9 days ago | about 18 hours ago | |
Go | Go | |
Apache License 2.0 | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
tofu-controller
-
Self-service infrastructure as code
We stumbled upon a project for maintaining Terraform with CRDs that we could deploy with Helm. That project is now called Tofu-Controller - another WeaveWorks project, so it integrated great with our existing Flux setup.
-
Weaveworks Seems to Be Disintegrating
https://github.com/weaveworks/tf-controller/issues/1166#issu...
-
Disaster Recovery for AWS EKS Infra
Weave's TF-Controller, which also has fewer bugs, much better adoption, and it looks like it's actually being developed by someone. But requires a weird argocd <-> flux interop boilerplate. It's a "controller for flux" and not a Kubernetes controller, and I don't really get such ambiguous targeting , but meh...
-
Migrate from terragrunt to terraform
Wrt tools, I wanted to integrate terraform with Flux thanks to their tf-controller. Conciling the core gitops features with terraform would be great imho.
-
My recently deployed media apps in ArgoCD, migrating from Terraform.
I'm using Flux instead of Argo which has support for running terraform from a given Git Repo or OCI artifact so essentially I still fall back on Terraform when needed and it's applied via GitOps.
- Looking for teammate to join project (not a job posting)
-
MySQL operators without the cluster
tf-controller which is integrated with Flux GitOps and reconciles Terraform files in a control loop
-
Automate your Terraform using GitOps with Flux
While searching for alternatives for running Terraform using Kubernetes, I found several controllers and operators, but none that I felt had as much potential as the tf-controller from Weaveworks. We are already using Flux as our GitOps tool, and the tf-controller works by utilizing some of the core functionality from Flux, and has a custom resource for Terraform deployments. The source controller takes care of fetching our modules, the kustomize controllers apply the Terraform resources, and then the controller spin up static pods (called runners) that runs your Terraform commands.
-
2022 was a great year for GitOps
For us, GitOps is a vital part of how we operate, and it is the magic sauce that fuels our platform offering. Not only do we use it for application deployments, but by utilizing the Weaveworks tf-controller, we can create services using Terraform to automate our infrastructure deployments.
-
Terraform to deploy and KEDA to scale - will it work?
Some further research brought me to Weaveworks' TF-Controller which appears to be able to do what I want at least for the initial deployment step. Flux CD (also by Weaveworks) integrates with KEDA now, so it would be great if it could also integrate with KEDA to manage terraform-deployed Azure resources.
kustomize
-
Building a Kubernetes Operator with the Operator Framework
kustomize: brew install kustomize
- Kustomize deployment order
- Deploying helm charts with other resources
-
How and when to use Helm and Kustomize together
It's a built in feature of kustomize https://github.com/kubernetes-sigs/kustomize/blob/master/api/types/helmchartargs.go
-
Alternatives to Helm?
I think the combination of Kustomize and helm works in my experience. For advanced use cases, you can also see KRM functions in Kustomize.
-
How to pass dynamic values to Kustomize?
See for instance a related issue: https://github.com/kubernetes-sigs/kustomize/issues/3866
-
Help with Kustomize: cleanest way to replace an environment variable in a pod or deployment?
Using a strategic merge is the safest way so you avoid the index fragility.
-
Helm makes it overly complex, or is it just me?
Rendering out the manifests is something I have been pushing for. Not having to understand how every templating tool works and what actually is being changed is key. Though, it gets complicated when you use helm (or any templating/patching tool) that produces many variants. You also lose any release/deployment time hooks that are provided (helm hooks or recently "patched" kustomize env variables).
-
Deployment with ArgoCD & secrets in helm chart
https://github.com/kubernetes-sigs/kustomize/blob/master/examples/chart.md (edit: oh I see the other commenter also included this link, oops)
-
Monokle, Kustomize & Quality Kubernetes Deployments
Kustomize is an open-source project that “lets you customize raw, template-free YAML files for multiple purposes, leaving the original YAML untouched and usable as is.” It’s now the most popular tool for customizing Kubernetes manifests reasonably, and it’s even built directly into the Kubernetes CLI since K8s v1.14.
What are some alternatives?
crossplane - The Cloud Native Control Plane
helmfile - Deploy Kubernetes Helm Charts
atlantis - Terraform Pull Request Automation
kpt - Automate Kubernetes Configuration Editing
helm-operator - Successor: https://github.com/fluxcd/helm-controller — The Flux Helm Operator, once upon a time a solution for declarative Helming.
ytt - YAML templating tool that works on YAML structure instead of text
jsonnet-controller - A fluxcd controller for managing manifests declared in jsonnet
kubevela - The Modern Application Platform.
documents - 📑 Lasting documents from the GitOps Working Group which are versioned and released together (including the GitOps Principles and Glossary)
tanka - Flexible, reusable and concise configuration for Kubernetes
flux2 - Open and extensible continuous delivery solution for Kubernetes. Powered by GitOps Toolkit.
helm-charts - Prometheus community Helm charts