Update README for deployment with ansible

This commit is contained in:
Fernando Schauenburg 2020-03-04 19:58:03 +01:00
parent 48884d0a9a
commit bf313d7bcf

View file

@ -1,26 +1,31 @@
# Prerequisites # Prerequisites
* [stow][]: for symlinking the dotfiles into the home directory. * [ansible][]: for installing the dofiles.
* [git-crypt][]: for handling sensitive data in the repo. * [git-crypt][]: for handling sensitive data in the repo
* [gpg][]: for decrypting the key used by `git-crypt`. _(installed via ansible cookbook)_.
* [gpg][]: for decrypting the key used by `git-crypt`
[stow]: https://www.gnu.org/software/stow/manual/stow.html _(installed via ansible cookbook)_.
[git-crypt]: https://github.com/AGWA/git-crypt
[gpg]: https://gnupg.org
# Installation # Installation
Steps: Steps:
1. Install [ansible][].
1. Create an SSH key with (e.g. with
`ssh-keygen -t ed25519 -C "$(whoami)@$(hostname)"`) and register it.
1. Clone the repo. 1. Clone the repo.
2. Stow the files into home dir. 1. Play the `dotfiles.yml` ansible playbook.
3. Decrypt key & initialize git-crypt to access sensitive data. 1. Decrypt key & initialize git-crypt to access sensitive data.
Cookbook: Cookbook:
```bash ```bash
cd $HOME sudo apt-get install ansible
git clone git@git.schauenburg.me:fernando/dotfiles.git .dotfiles git clone git@git.schauenburg.me:fernando/dotfiles.git $HOME/.dotfiles
cd .dotfiles cd $HOME/.dotfiles
stow -v --no-folding dotfiles ansible-playbook -i hosts.ini dotfiles.yml
gpg -d --output - <(base64 -d .key) | git crypt unlock - gpg -d --output - <(base64 -d .key) | git crypt unlock -
``` ```
[ansible]: https://www.ansible.com
[git-crypt]: https://github.com/AGWA/git-crypt
[gpg]: https://gnupg.org