A series of Ansible scripts to manage my infrastructure.
Go to file
Salt 4f96ddf379 Add udev, grub roles for desktops
Lovin how light they are tho
2020-11-03 05:30:19 -06:00
.templates Fix template 2020-10-17 00:27:46 -05:00
contrib Working on basics 2020-10-17 00:21:57 -05:00
inventory Add udev, grub roles for desktops 2020-11-03 05:30:19 -06:00
roles Add udev, grub roles for desktops 2020-11-03 05:30:19 -06:00
.gitignore Remove build directory from gitignore 2020-02-26 18:56:29 -06:00
ansible.cfg Working on basics 2020-10-17 00:21:57 -05:00
README.md How are we doing backups? 2020-11-01 05:28:44 -06:00
site.yml Add udev, grub roles for desktops 2020-11-03 05:30:19 -06:00

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

  • 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.