docs: initial readme

This commit is contained in:
rob boll 2016-11-22 12:51:51 -05:00
parent 42bc99b403
commit d41cd794a2
2 changed files with 61 additions and 4 deletions

57
README.md Normal file
View File

@ -0,0 +1,57 @@
# helmfile
Deploy Kubernetes Helm Charts
## about
Helmfile is a declarative spec for deploying helm charts. It lets you...
* Keep a directory of chart value files and maintain changes in version control.
* Apply CI/CD to configuration changes.
* Periodically sync to avoid skew in environments.
To avoid upgrades for each iteration of `helm`, the `helmfile` executable delegates to `helm` - as a result, `helm` must be installed.
The default helmfile is `charts.yaml`:
```
repositories:
- name: roboll
url: http://roboll.io/charts
charts:
- name: vault # helm deployment name
namespace: vault # target namespace
chart: roboll/vault-secret-manager # chart reference
values: [ vault.yaml ] # value files (--values)
set: # values (--set)
- name: address
value: https://vault.example.com
```
## usage
```
NAME:
helmfile
USAGE:
helmfile [global options] command [command options] [arguments...]
VERSION:
0.0.0
COMMANDS:
repos sync repositories from state file (helm repo add && help repo update)
charts sync charts from state file (helm repo upgrade --install)
sync sync all resources from state file (repos && charts)
delete delete charts from state file (helm delete)
help, h Shows a list of commands or help for one command
GLOBAL OPTIONS:
--file FILE, -f FILE load config from FILE (default: "charts.yaml")
--quiet, -q silence output
--help, -h show help
--version, -v print the version
```

View File

@ -36,7 +36,7 @@ func main() {
app.Commands = []cli.Command{
{
Name: "repos",
Usage: "sync repositories from state file",
Usage: "sync repositories from state file (helm repo add && helm repo update)",
Flags: []cli.Flag{
cli.StringFlag{
Name: "args",
@ -66,7 +66,7 @@ func main() {
},
{
Name: "charts",
Usage: "sync charts from state file",
Usage: "sync charts from state file (helm repo upgrade --install)",
Flags: []cli.Flag{
cli.StringFlag{
Name: "args",
@ -96,7 +96,7 @@ func main() {
},
{
Name: "sync",
Usage: "sync all resources from state file",
Usage: "sync all resources from state file (repos && charts)",
Action: func(c *cli.Context) error {
state, helm, err := before(c)
if err != nil {
@ -121,7 +121,7 @@ func main() {
},
{
Name: "delete",
Usage: "delete charts from state file",
Usage: "delete charts from state file (helm delete)",
Action: func(c *cli.Context) error {
state, helm, err := before(c)
if err != nil {