1
0
Fork 0
mirror of https://github.com/roles-ansible/ansible_role_i3wm.git synced 2024-08-16 10:09:53 +02:00
ansible_role_i3wm/tasks/main.yml
2018-11-15 15:12:44 +01:00

60 lines
1.5 KiB
YAML

---
# register variables
- import_tasks: variables.yml
# ensure i3 packages are installed [Debian].
- include_tasks: setup-Debian.yml
when: ansible_os_family == 'Debian'
# ensure i3 packages are installed [RHEL].
- include_tasks: setup-RedHat.yml
when: ansible_os_family == 'Fedora' or ansible_os_family == 'RedHat'
# create i3 config file
- name: Creates directory
file:
path: '~/.config/i3'
state: directory
mode: 0750
owner: "{{ ansible_user }}"
- name: create i3 config folder
file:
path: ~/.config/i3/
state: directory
mode: 0755
- name: register i3 config file
action: stat path="~/.config/i3/config"
register: "config_file"
- name: backup i3 config file
block:
- name: backup i3 config file if exists
copy:
src: ~/.config/i3/config
dest: ~/.config/i3/config.bak
remote_src: true
when: config_file.stat.exists
- name: create i3 config file
template:
src: config.j2
dest: "/home/{{ ansible_user }}/.config/i3/config"
- name: check i3 config file
command: i3 -C
register: check_config_response
failed_when: check_config_response.stdout.find('ERROR') != -1
rescue:
- name: register backup i3 config file
action: stat path="~/.config/i3/config.bak"
register: "config_file_backup"
- name: restore backup file
copy:
src: ~/.config/i3/config.bak
dest: ~/.config/i3/config
remote_src: true
when: config_file_backup.stat.exists