99 lines
1.9 KiB
YAML
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"
|