add task to create swap

This is mostly useful in AWS where swap does not exist and must be created manualy.
This commit is contained in:
Miroslav Suchý 2020-02-24 19:01:38 +01:00 committed by Pierre-Yves Chibon
parent 5310a1d12a
commit 19be5b46cb

56
tasks/swap.yml Normal file
View file

@ -0,0 +1,56 @@
# use variables:
# swap_file_size_mb
# swap_file_path
- name: Create swap file
command:
cmd: "dd if=/dev/zero of={{ swap_file_path }} bs=1024 count={{ swap_file_size_mb }}k"
creates: "{{ swap_file_path }}"
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
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
tags:
- swap.fstab
- swap
- name: Mount swap
command: "swapon {{ swap_file_path }}"
when: ansible_swaptotal_mb < 1
tags:
- swap.file.swapon
- swap