ansible/README.md
2020-11-04 20:57:57 -06:00

1.4 KiB

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.