Welcome !
This project is fully inspired by Cdist
A great easy configuration management tool using only ssh and unix tools.
Install
-
to install just clone the repo on a machine with a posix shell
fossil clone http://chiselapp.com/user/abondis/repository/lcd lcd.fsl mkdir lcd cd lcd fossil open ../lcd.fsl
-
next lcd is ready to use in scripts
How to run
-
source the lcdenv file, or if you have you own config source your file
. lcdenv
-
to run an action on a host now you can
lcd USER@HOST ACTION ARGS
- ACTION
-
This is an action like sshkey or a2_vhost. They are simple scripts stored in a folder named the same way as the script. Apart from the discover folder everything is an action. see Types/Actions documentation
- ARGS
-
See the documentation on Types/Actions documentation
Roadmap
0.0.6
-
deploy shinken client and server
-
configure shinken host and services
-
deploy fusion inventory and configure fusion inventory
0.0.5
-
log actions and maintain a replay script
-
compare state between lcd logs and real state
0.0.4
-
deploy private config cf Private config
-
send/remove ssh keys
-
send/remove a line from a file
0.0.3
-
create a simple apache vhost
0.0.2
-
be able to install packages
-
wrap environment from one script to limit repeating actions in types
0.0.1
-
be able to mark a file remotely
Backlog
-
install php vhost
-
install ruby vhost
-
Clean documentation
-
generate basic documentation automagically
Define the goals
-
execute the code on the machine via push/pull/clone
-
share usefull scripts
-
just plain sh scripts ( cdist represent ;) )
-
generate documentation base on the actions done on a machine (ie: machine’s changelog based on actions)
The main Idea …
-
Take cdist and execute the code locally, in order to avoid a bunch of echos.
-
Take cdist and do not use declarative actions (???), in order to just write a script in the order we want it.
-
Make types usable without having to modify/recheck all the machine’s config to do a small change.
-
Generate config on the fly, after a successful deploy.