Skip to content

Instantly share code, notes, and snippets.

@tabrez
Created August 1, 2023 13:25
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save tabrez/219526ef3d0d44f4742f729d78fa44c6 to your computer and use it in GitHub Desktop.
Save tabrez/219526ef3d0d44f4742f729d78fa44c6 to your computer and use it in GitHub Desktop.
Playbook to setup a headless Ubuntu VM
---
- name: setup command line utilities in ubuntu vm(tested 22.04 & 22.10)
hosts: all
become: true
gather_facts: false
vars:
user: tabrez
home: "/home/{{ user }}"
vars_files:
- ../files/credentials
roles:
- role: ansible
tags: ansible
- role: ssh-server
tags: ssh-server
- { role: copy-private-ssh-key,
become_user: "{{ user }}",
tags: private-key
}
- {
role: copy-public-ssh-key,
become_user: "{{ user }}",
tags: public-key
}
- role: password-less-sudo
tags: sudo
- {
role: ssh-config,
become_user: "{{ user }}",
tags: ssh-config
}
- {
name: "copy config files",
role: config-local,
become_user: "{{ user }}",
tags: config
}
- role: utils
tags: utils
- role: packer
tags: packer
- role: terraform
tags: terraform
- role: vscode-extensions
tags: vscode
- role: megacmd
tags: megacmd
- {
role: neovim,
become_user: "{{ user }}",
tags: neovim
}
- {
name: install astrovim config for neovim,
role: astrovim,
become_user: "{{ user }}",
tags: astrovim
}
- {
role: docker,
tags: docker
}
- {
role: multipass,
tags: multipass
}
- {
role: jupyterlab,
tags: jupyterlab
}
- {
role: setup-root,
tags: setup-root
}
post_tasks:
- name: Reboot machine
ansible.builtin.reboot:
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment