@installdoc/ansible-gas-station
Version:
An Ansible playbook that provisions your network with software from GitHub Awesome lists, developed with disaster recovery in mind ⛽🔥🤤
73 lines (65 loc) • 2.08 kB
YAML
- name: "Ensure yay is installed"
block:
- name: Ensure yay's source directory is present
file:
path: "{{ yay_src_dir }}"
owner: "{{ ansible_user | default(lookup('env', 'USER')) }}"
state: directory
mode: 0755
- name: Ensure yay's source is cloned and up-to-date
become: false
git:
dest: "{{ yay_src_dir }}"
repo: "{{ yay_aur_git_repository }}"
version: master
force: true
register: yay_git
- name: Remove /usr/bin/yay if the source files have changed
file:
path: /usr/bin/yay
state: absent
when: yay_git.changed
- name: Ensure yay is installed
become: false
shell: |
makepkg -sic --noconfirm
args:
chdir: "{{ yay_src_dir }}"
creates: /usr/bin/yay
- name: "Ensure {{ app_name }}'s dependencies are installed"
community.general.pacman:
name: "{{ rear_dependencies }}"
state: "{{ app_state | default('present') }}"
update_cache: "{{ omit if skip_package_cache_update is defined else 'true' }}"
- name: "Ensure {{ app_name }}'s dependencies are installed (AUR)" # noqa 301
become: false
command: "yay -Sa {{ item }} --noconfirm"
loop: "{{ rear_dependencies_aur }}"
- name: "Ensure {{ app_name }}'s source directory is present"
file:
mode: 0755
path: "{{ rear_src_dir }}"
owner: "{{ ansible_user | default(lookup('env', 'USER')) }}"
state: directory
- name: "Ensure {{ app_name }}'s source is cloned and up-to-date"
become: false
git:
dest: "{{ rear_src_dir }}"
repo: "{{ rear_aur_git_repository }}"
version: master
force: true
register: rear_git
- name: "Remove /usr/bin/rear if the source files have changed" # noqa 503
file:
path: /usr/bin/rear
state: absent
when: rear_git.changed
- name: "Ensure {{ app_name }} is installed"
become: false
command: makepkg -sic --noconfirm
args:
chdir: "{{ rear_src_dir }}"
creates: /usr/bin/rear
- name: Run generic configuration tasks
include_tasks: config-Linux.yml