Quickstart Guide
This quick-start guide is designed to get you up and running as quickly as possible.
Step 1: Install SALVE
The quickest and easiest way to get a version of SALVE to play with is to install the latest stable version from PyPi.
easy_install
should work, but pip
is recommended.
pip install salve
Note that you must install salve on the machine that will be the target of your deployment, not necessarily the machine on which you are writing your manifests.
Step 2: Add Your Bashrc
These steps work with any file of your choice, but a bashrc is a good example of a file that should be managed with SALVE.
In your shell, inside of the repository root,
mkdir -p bash
cp ~/.bashrc bash/bashrc
Now, add a manifest, metaconfiguration that describes where the bashrc file goes on your system.
echo 'file {
source "bash/bashrc"
target "$HOME/.bashrc"
action "copy"
}' > bash.manifest
SALVE works on any VCS, but we will assume that you are using git
.
So, add these files to your local repository.
git commit -am "Adding bashrc and bash manifest."
Push to any remotes you use, and you are now ready to deploy your bashrc with SALVE.
Step 3: Deploy
The final step is to deploy your bashrc using SALVE. Since SALVE automagically backs up files that it overwrites if it has read access, you can recover the older bashrc file after you deploy, if necessary. Just run
git clone https://my-remote/my-config
salve deploy --manifest my-config/bash.manifest
SALVE will take care of the rest.
If you ever need to recover from the backups, they should be located in
$HOME/.salve/backups/files
and logged in
$HOME/.salve/backup.log
.
Backed up files are named by a sha512 hash of their contents, but the backup
log records the original locations of the backup file copies.