1
0
Fork 0
Ansible files for managing classroom machines at GJK.
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Emil Miler dfef34e19d Add pipr package 1 year ago
files Disable sleep on inactivity 2 years ago
group_vars Add pipr package 1 year ago
ansible.cfg Initial commit 2 years ago
hosts Initial commit 2 years ago
readme.md Add more playbook execution examples 1 year ago
reboot.yaml Initial commit 2 years ago
setup.yaml XBPS cache and kernel cleanup 1 year ago
shudown.yaml Initial commit 2 years ago

readme.md

Ansible files for managing classroom machines at GJK.

There are two classrooms, POV and POM. All machines are running Void Linux with Gnome in dual-boot with Windows.

GDM configuration can be found at https://help.gnome.org/admin/system-admin-guide/stable/index.html.en.

New client installation

There are several differences in the hardware. System installation is usually done in EFI, though MBR still exists on older machines in POV.

  • Install Void
  • Update xbps: xbps-install -Su xbps
  • Install python3 and avahi: xbps-install python3 avahi
  • Enable avahi service: ln -s /etc/sv/avai-deamon/ /var/service/
  • Import your SSH key to /root/.ssh/authorized_keys

Void has sshd enabled by default as well as having prohibit-password set for root. Post-installation setup can be automated using a script or USB keyboard injector.

Running a playbook

Here are some examples for running a playbook.

ansible-playbook setup.yaml
ansible-playbook -l teachers setup.yaml
ansible-playbook -l VU00.local setup.yaml
ansible-playbook --key-file ~/.ssh/keys/gjk-ansible setup.yaml

Tags can be used to execute or exclude specific parts of the playbook.

ansible-playbook -t grub setup.yaml
ansible-playbook -t [grub, software] setup.yaml
ansible-playbook --skip-tags software setup.yaml

SSH configuration

You should setup your ssh to avoid unnecessary settings when running a playbook, for example:

Host VU* MU*
	User root
	IdentityFile ~/.ssh/keys/gjk-ansible
	StrictHostKeyChecking no
	UserKnownHostsFile=/dev/null