botkube-plugins-template
go-arg
Our great sponsors
botkube-plugins-template | go-arg | |
---|---|---|
1 | 6 | |
4 | 1,861 | |
- | - | |
4.8 | 4.4 | |
20 days ago | 25 days ago | |
Go | Go | |
MIT License | BSD 2-clause "Simplified" License |
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.
botkube-plugins-template
-
Build a GitHub Issues Reporter for failing Kubernetes Apps with Botkube Plugins
Now, we need to distribute our plugins. As we mentioned earlier, a plugin repository can be any static file server. The kubeshop/botkube-plugins-template repository comes with two GitHub Actions:
go-arg
- Go-Arg: Struct-based argument parsing in Go
-
Build a GitHub Issues Reporter for failing Kubernetes Apps with Botkube Plugins
Under the hood, the pluginx.ParseCommand method uses go-arg.
-
Libraries for CLI and console applications
I’ve used multiple libraries over the last two years but less is more and go-arg feels like something that would be in the stdlib: https://github.com/alexflint/go-arg
- Libraries you use most of your projects?
-
Best practice for configuring secrets
I use this: https://github.com/alexflint/go-arg and setting defaults for my local environment. So no need to keep a .env file.
-
Recommended framework/library for creating cli apps in go?
I personally swear by the go-arg package, as i prefer its library-not-framework approach.
What are some alternatives?
cobra - A Commander for modern Go CLI interactions
argparse - Argparse for golang. Just because `flag` sucks
goreleaser - Deliver Go binaries as fast and easily as possible
flag - Flag is a simple but powerful command line option parsing library for Go support infinite level subcommand
cli - GitHub’s official command line tool
botkube - An app that helps you monitor your Kubernetes cluster, debug critical deployments & gives recommendations for standard practices
go-flags - go command line option parser
viper - Go configuration with fangs
docopt.go - A command-line arguments parser that will make you smile.
envconfig - Small library to read your configuration from environment variables
CONFLATE - Library providing routines to merge and validate JSON, YAML and/or TOML files