71 lines
2 KiB
YAML
71 lines
2 KiB
YAML
- name: Development provisioning
|
|
hosts:
|
|
- personal
|
|
- arch
|
|
- debian
|
|
pre_tasks:
|
|
- name: Verifying that a limit is set
|
|
ansible.builtin.fail:
|
|
msg: 'This playbook cannot be run with no limit'
|
|
run_once: true
|
|
when: ansible_limit is not defined
|
|
|
|
- name: Install packages
|
|
become: true
|
|
ansible.builtin.package:
|
|
name: '{{ item }}'
|
|
state: present
|
|
loop: '{{ packages }}'
|
|
|
|
- name: Add git forge to known hosts
|
|
ansible.builtin.include_role:
|
|
name: common
|
|
tasks_from: 'known_hosts.yml'
|
|
vars:
|
|
user: '{{ ansible_user_id }}'
|
|
items:
|
|
- domain: '{{ git_domain }}'
|
|
key: '{{ git_host_key }}'
|
|
when: ansible_hostname != 'fudiggity'
|
|
tasks:
|
|
- name: Setup dotfiles
|
|
ansible.builtin.import_tasks: 'tasks/dotfiles.yml'
|
|
tags: dotfiles
|
|
|
|
- name: Include generic neovim tasks
|
|
ansible.builtin.import_tasks: 'tasks/neovim.yml'
|
|
tags: neovim
|
|
|
|
- name: Include debian neovim tasks
|
|
ansible.builtin.import_tasks: 'tasks/debian/neovim.yml'
|
|
when: "'debian' in group_names"
|
|
tags: neovim
|
|
|
|
- name: Provision Archlinux hosts
|
|
when: "'arch' in group_names"
|
|
block:
|
|
- name: Gather package facts
|
|
ansible.builtin.package_facts:
|
|
manager: pacman
|
|
|
|
- name: Include arch neovim tasks
|
|
ansible.builtin.import_tasks: 'tasks/arch/neovim.yml'
|
|
when: "'arch' in group_names"
|
|
tags: neovim
|
|
|
|
- name: Install AUR packages
|
|
ansible.builtin.import_tasks: 'tasks/arch/aur.yml'
|
|
tags: aur
|
|
|
|
- name: Setup docker
|
|
ansible.builtin.import_tasks: 'tasks/arch/docker.yml'
|
|
tags: docker
|
|
|
|
- name: Setup python versions
|
|
ansible.builtin.include_tasks: 'tasks/arch/python.yml'
|
|
loop: '{{ python_versions }}'
|
|
tags: python
|
|
|
|
- name: Setup NVM
|
|
ansible.builtin.import_tasks: 'tasks/arch/nvm.yml'
|
|
tags: nvm
|