deploy.sh/README

68 lines
2.0 KiB
Plaintext

==========================
Comfirm deploy.sh - README
==========================
(C) 2012 Comfirm AB
Deploy your code, files, configurations etc. to multiple servers via ssh.
Perfect for the cloud. Written as a shell script (sh, standard bourne shell) and
runs on every unix server. No need for remote install. Just run the
deploy.sh script on the local machine.
Authors:
Jack Engqvist Johansson, Comfirm AB
http://comfirm.se
License:
BSD 3-Clause
See the LICENSE file
Usage
=====
To deploy, run:
./deploy --install [ .deploy location ]
To update already existing deployment, run:
./deploy --update [ .deploy location ]
It will run copy, replace and update-s2...
Partial deployment options:
./deploy --begin Run begin script
./deploy --copy Copy files to /tmp
./deploy --replace Replace the old files
./deploy --finish Run the finish script
./deploy --update-s2 Run the update script, only
If the location where the .deploy file isn't specified, deploy.sh will assume
it's in the current directory.
What you need
=============
- The same username to all servers.
- An ssh keyfile without passphrase.
- The ssh key should be the same for all servers.
- [optional] Root access or sudo without password.
- sh or bash.
Note:
This script was designed for elastic cloud computing.
Installation
============
- Copy deploy.conf to /etc/deploy.conf
- Create a .deploy file in your project. You can use the sample deploy file
shipped with this release. Just make sure to rename it.
- Put the deploy.sh in a handy place like /usr/local/sbin/deploy.sh and make it
executable. If you want you can even put it in your project location.
Tips & trix
===========
- To make it even easier you can let any heartbeat software update
the deploy.conf automatically.
- Write your .deploy file with if statements etc. to make it easy to rerun it
everytime there's new servers or if the old ones need any updates.
Don't be afraid to fork it and send a pull request. Any improvements are welcome.