Ansible roles and playbooks to install different *nix distros.
If you are using git-crypt
, setup your key, and override the encrypted files (host_vars/*.yml
)
with your own version.
If you are not using git-crypt
, delete the .gitattributes
file and override the encrypted files
with your own version.
Ex. rm .gitattributes && cp host_vars/ubuntuiso.local.yml.example host_vars/ubuntuiso.local.yml
- Follow the pre-install guides for desired distro in "Boot distro live image"
- Install ansible required dependencies
- Configure the desired
host_vars
in this playbook - Run the playbook
Example:
git clone https://git.sr.ht/~a14m/ansible-distro-install /opt/distro-install
cp /opt/distro-install/host_vars/${DISTRO}iso.local.yml.example /opt/distro-install/host_vars/${DISTRO}iso.local.yml
cd /opt/distro-install
ansible-galaxy install -r requirements.yml
ansible-playbook site.yml --ask-pass
- Clone the
distro-configure
playbook - Configure the desired
host_vars
in thedistro-configure
playbook - Run the playbook with
configure_playbook_dir
variable
Example:
git clone https://git.sr.ht/~a14m/ansible-distro-install /opt/distro-install
cp /opt/distro-install/host_vars/${DISTRO}iso.local.yml.example /opt/distro-install/host_vars/${DISTRO}iso.local.yml
git clone https://git.sr.ht/~a14m/ansible-distro-configure /opt/distro-configure
cp /opt/distro-configure/host_vars/${DISTRO}.local.yml.example /opt/distro-configure/host_vars/${DISTRO}.local.yml
cd /opt/distro-install
ansible-galaxy install -r requirements.yml
ansible-playbook site.yml --ask-pass --extra-vars '{"configure_playbook_dir":"/opt/distro-configure"}'
- Jeff Geerling, who I learned a LOT from his open-source work.