Top 18 Go Configuration Management Projects
-
Project mention: Is there any service from gcp or third party which is similar to AWS CDK ? I am fluent in python to write any scripts which generate the templates , hence in need of such a service | reddit.com/r/googlecloud | 2022-08-12
Have you checked out Pulumi?
-
Project mention: Monthly 'Shameless Self Promotion' thread - 2022/08 | reddit.com/r/devops | 2022-08-01
-
Scout APM
Less time debugging, more time building. Scout APM allows you to find and fix performance issues with no hassle. Now with error monitoring and external services monitoring, Scout is a developer's best friend when it comes to application development.
-
Project mention: Is it possible to use a conditional in the values.yaml file? | reddit.com/r/kubernetes | 2022-06-27
Why are you using a conditional in a declaration? There is https://github.com/GoogleContainerTools/kpt
-
koanf
Simple, lightweight, extensible, configuration management library for Go. Support for JSON, TOML, YAML, env, command line, file, S3 etc. Alternative to viper.
Use viper with care. It has some dangerous fundamental flaws [1]. We got bitten hard, submitted a PR [2] and followed up for a year and a half to no avail, before I went ahead and reinvented the wheel and wrote koanf (plug), specifically to avoid viper's flaws.
Most importantly:
- Breaks JSON, YAML, TOML etc. language specs by forcibly lowercasing all keys internally. Dangerous because it can silently merge differently cased config keys into lowercase.
- Hard codes big unnecessary dependencies into the core, significantly bloating build sizes. No separation or abstraction.
-
-
-
config
A lightweight yet powerful configuration manager for the Go programming language (by golobby)
-
SonarQube
Static code analysis for 29 languages.. Your projects are multi-language. So is SonarQube analysis. Find Bugs, Vulnerabilities, Security Hotspots, and Code Smells so you can release quality code every time. Get started analyzing your projects today for free.
-
-
-
-
-
Project mention: Efs2 – A dead-simple configuration management tool | news.ycombinator.com | 2022-01-29
-
configuration
Library for setting values to structs' fields from env, flags, files or default tag (by BoRuDar)
-
-
-
-
go-helpers
A small collection of various helpers we use in our Go projects (forms, settings, structure conversions, ...)
```
The "IsInteger" validator can of course be interpreted as a type, the important thing is though that it can be customized using type parameters and that we can add any number of additional validators that do advanced things (e.g. we could define an "IsPrime" validator that checks for primality of the number).
I find this more elegant than having both a "type" field and various extensions for validations that you need to remember. The validator list mechanism also makes it easy to chain validations and perform sub-validations for lists or maps. I have an open-source implementation of this written in Golang [1] that I use in all my projects. It enables me to write a form specification and a Go struct and validate as well as coerce unstructured data into the struct. It makes it very easy to validate complex, hierarchical documents like configuration files as well, is easy to extend and provides nice errors.
1: https://github.com/kiprotect/go-helpers/tree/master/forms
-
Go Configuration Management related posts
- Is there any service from gcp or third party which is similar to AWS CDK ? I am fluent in python to write any scripts which generate the templates , hence in need of such a service
- Helm is both "package manager" and "templating engine" - probably the best package manager but horrible template engine
- Terraform CDK is GA. Is anyone using it? Like it or hate it? How does the experience compare to vanilla terraform?
- Learning Terraform
- How to learn Python for AWS or DevOps use cases
- Generate terraform infrastructure dynamically
- When you are writing IaC, do you consider that to be programming?
Index
What are some of the best open-source Configuration Management projects in Go? This list will help you:
Project | Stars | |
---|---|---|
1 | Pulumi | 13,264 |
2 | mgmt | 2,977 |
3 | kpt | 1,223 |
4 | koanf | 1,094 |
5 | layotto | 608 |
6 | gru | 435 |
7 | config | 288 |
8 | fig | 222 |
9 | carvel-imgpkg | 121 |
10 | harvester | 113 |
11 | envh | 95 |
12 | efs2 | 83 |
13 | configuration | 74 |
14 | up | 43 |
15 | CONFLATE | 28 |
16 | unobin | 5 |
17 | go-helpers | 2 |
18 | pj | 0 |
Are you hiring? Post a new remote job listing for free.