github.com/slantview/envd

Application launcher using environment variables from etcd.


Install
go get github.com/slantview/envd

Documentation

envd

Build Status

envd is an daemon for starting and stopping processess using configuration from etcd. You can use it to either run once and exit or to watch a key field for updates and restart your application.

The configuration data is pulled down and provided to the application via local environment variables. You can then use these variables within your application like normal.

The goal of this project is to provide highly available, secure configuration data independent of application deployment or stack.

Usage

NAME:
   envd - Application launcher using environment variables from etcd.

USAGE:
   envd [global options] command

VERSION:
   0.1.0

COMMANDS:
   help, h  Shows a list of commands or help for one command
   
GLOBAL OPTIONS:
   --verbose, -V            Shows verbose logging.
   --environment, -e 'default'      Environment name to watch.
   -d                   Daemonize after launch.
   --debug, -D              Turn on debug output.
   --watch, -w              Watch for updates and restart if changed.
   --key '/etc/envd/client.key'     Client key file.
   --cert '/etc/envd/client.crt'    Client cert file.
   --cacert '/etc/envd/cacert.crt'  Client CA cert file.
   --server 'http://localhost:4001' Host to connect to etcd.
   --version, -v            print the version
   --help, -h               show help
$ envd -e /environments/test /start/my/app

This will run once and exit when the application exits.

$ envd -e /environments/test -d /start/my/app

This will start the app and daemonize in the background.

$ envd -e /environments/test -w /start/my/app

This will start the app, watch the variables for updates and restart the app if any variables are changed in real time.

$ envd -e /environments/test -w -d /start/my/app

This will start the app, daemonize and restart the app if any variables are changed.

Author

Steve Rude srude@riotgames.com