fedora-ansible/tasks/swap.yml

99 lines
1.9 KiB
YAML

# use variables:
# swap_file_size_mb
# swap_file_path
- name: Touch an empty file that we will use for swap
copy:
content: ""
dest: "{{ swap_file_path }}"
force: no
register: swap_touch
tags:
- swap
- name: On BTRFS we need NoCOW
file:
path: "{{ swap_file_path }}"
attr: +C
when:
- swap_touch.changed
- ansible_distribution == 'Fedora'
tags:
- swap
- name: Create swap file
command:
cmd: "dd if=/dev/zero of={{ swap_file_path }} bs=1024 count={{ swap_file_size_mb }}k"
when: swap_touch.changed
tags:
- swap.file.create
- swap
- name: Change swap file permissions
file: path="{{ swap_file_path }}"
owner=root
group=root
mode=0600
tags:
- swap.file.permissions
- swap
- name: Check swap file type
command: file {{ swap_file_path }}
register: swapfile
changed_when: False
tags:
- swap.file.mkswap
- swap
- name: Make swap file
filesystem:
fstype: swap
dev: "{{ swap_file_path }}"
when: swapfile.stdout.find('swap file') == -1
tags:
- swap.file.mkswap
- swap
- name: Write swap entry in fstab
mount: path=none
src={{ swap_file_path }}
fstype=swap
opts=sw
passno=0
dump=0
state=present
register: swap_fstab_added
tags:
- swap.fstab
- swap
- name: Mount swap
command: "swapon -a"
#when: ansible_swaptotal_mb|int < 1
when: swap_fstab_added.changed
tags:
- swap.file.swapon
- swap
notify: restart swap.swap
- name: remove zram-generator-defaults
package:
name: zram-generator-defaults
state: absent
register: remove_zram_generator
tags:
- swap.file.dropzrampackage
- swap
- name: disable zram0
shell: swapoff /dev/zram0
tags:
- swap
- swap.file.swapoffzram
when:
- remove_zram_generator.changed
# - name: Start swap.swap service
# service: state=started enabled=yes name="swap.swap"