56 lines
1.4 KiB
Markdown
56 lines
1.4 KiB
Markdown
# Salt's Ansible Repository
|
|
|
|
Useful for management across all of 9iron, thefuck, and desu.
|
|
|
|
## TODO
|
|
|
|
This branch is kinda-sorta a port of master, so it still needs to reach some form of feature parity with it. Namely:
|
|
|
|
* Pleroma(? How about we move to outer heaven?)
|
|
|
|
* Matrix(? Do I still want to keep this around?)
|
|
|
|
* Basic git cloning for websites
|
|
|
|
* My inane desktop setups
|
|
|
|
* Which are part of the way there, mostly just need some off-the-wall stuff
|
|
|
|
* Backups
|
|
|
|
* Duplicity?
|
|
|
|
* Just Linode backups? Would also have to do nightly DB dumps
|
|
|
|
* More homebrew bullshit?
|
|
|
|
* Monitoring (Doesn't necessarily have to be grafana)
|
|
|
|
* Forge server deployment? Terraria? What do I do about all these gameservers?
|
|
|
|
## Initialization
|
|
|
|
* Clone the repo, `cd` in
|
|
|
|
* `ansible-galaxy install -r roles/requirements.yml`
|
|
|
|
## Deployment
|
|
|
|
Adding a new server will require the following be fulfilled:
|
|
|
|
* The server is accessible from the Ansible host;
|
|
|
|
* The server has a user named `ansible` which:
|
|
|
|
* Accepts the public key located in `contrib/desu.pub`; and
|
|
|
|
* Has passwordless sudo capabilities as root
|
|
|
|
* The server is added to `inventory/hosts.yml` in an appropriate place;
|
|
|
|
* DNS records for the machine are set; and
|
|
|
|
* The server is running Ubuntu 18.04 or greater (20.04 recommended)
|
|
|
|
From there, running the playbook `site.yml` should get the machine up to snuff. To automate the host-local steps, use the script file `contrib/bootstrap.sh`.
|