propellor/doc/centralized_git_repository....

32 lines
1.4 KiB
Plaintext
Raw Normal View History

2014-11-18 21:33:08 +00:00
Propellor can be used without any centralized git repsitory. When
`propellor --spin $HOST` is run, propellor pushes the local git repo
directly to the host. This makes it easy to get started with propellor.
A central git repository allows hosts to run propellor from cron and pick
up any updates you may have pushed. This is useful when managing several
hosts with propellor.
You can add a central git repository to your existing propellor setup easily:
1. Push propellor's git repository to a central server (github or your own):
`cd ~/.propellor/; git remote add origin ssh://git.example.com/propellor.git; git push -u origin master`
2. Configure the url your hosts should use for the git repisitory, if
it differs from the url above, by setting up a remote named "deploy":
`cd ~/.propellor/; git remote add deploy git://git.example.com/propellor.git`
2. Add a property to your hosts like:
`Cron.runPropellor "30 * * * *"`
3. Let your hosts know about the changed configuration (including the url
2014-11-18 21:41:20 +00:00
to the central repository), by running `propellor --spin $HOST` for each
2014-11-18 21:33:08 +00:00
of your hosts.
Now the hosts will automatically update every 30 minutes, and you can
`git commit -S` and `git push` changes that affect any number of
hosts.
Note that private data, set with `propellor --set`, is gpg encrypted, and
hosts cannot decrypt it! So after updating the private data of a host,
you still need to manually run `propellor --spin $HOST`