3.8 KiB
3.8 KiB
mgmt: This is: mgmt!
Community:
Come join us on IRC in #mgmtconfig on Freenode! You may like the #mgmtconfig hashtag if you're on Twitter.
Questions:
Please join the #mgmtconfig IRC community! If you have a well phrased question that might benefit others, consider asking it by sending a patch to the documentation FAQ section. I'll merge your question, and a patch with the answer!
Quick start:
- Either get the golang dependencies on your own, or run
make depsif you're comfortable with how we install them. - Run
make buildto get a fresh builtmgmtbinary. - Run
cd $(mktemp --tmpdir -d tmp.XXX) && etcdto get etcd running. Themgmtsoftware will do this automatically for you in the future. - Run
time ./mgmt run --file examples/graph0.yaml --converged-timeout=1to try out a very simple example! - To run continuously in the default mode of operation, omit the
--converged-timeoutoption. - Have fun hacking on our future technology!
Examples:
Please look in the examples/ folder for more examples!
Documentation:
Please see: DOCUMENTATION.md or PDF.
Bugs:
Please set the DEBUG constant in main.go to true, and post the logs when you report the issue.
Bonus points if you provide a shell or OMV reproducible test case.
There are currently a few known bugs which I hope to squash soon.
Notes:
- This is currently a research project into next generation config management technologies!
- This is my first complex project in golang, please notify me of any issues.
- I have some well thought out designs for the future of this project, which I'll try and write up clearly and publish as soon as possible.
- The interfaces and code are not yet stable. Please run in development environments only!
- This design is the result of ideas I've had from hacking on advanced config management projects.
- I first started hacking on this in ~2013, even though I had very little time for it.
- I've published a number of articles about this tool:
- There are some screencasts available:
- TODO
Dependencies:
- golang (required, available in most distros)
- golang libraries (required, available with
go get)go get github.com/coreos/etcd/client go get gopkg.in/yaml.v2 go get gopkg.in/fsnotify.v1 go get github.com/codegangsta/cli go get github.com/coreos/go-systemd/dbus go get github.com/coreos/go-systemd/util - pandoc (optional, for building a pdf of the documentation)
- graphviz (optional, for building a visual representation of the graph)
Patches:
We'd love to have your patch! Please send it by email, or as a pull request.
Happy hacking!



