| {%- from "linux/map.jinja" import storage with context %} |
| {%- if storage.enabled %} |
| |
| {%- for swap_name, swap in storage.swap.iteritems() %} |
| |
| {%- if swap.enabled %} |
| |
| {%- if swap.engine == 'file' %} |
| |
| linux_create_swap_file_{{ swap.device }}: |
| cmd.run: |
| - name: 'dd if=/dev/zero of={{ swap.device }} bs=1048576 count={{ swap.size }} && chmod 0600 {{ swap.device }}' |
| - creates: {{ swap.device }} |
| |
| linux_set_swap_file_{{ swap.device }}: |
| cmd.wait: |
| - name: 'mkswap {{ swap.device }}' |
| - watch: |
| - cmd: linux_create_swap_file_{{ swap.device }} |
| |
| linux_set_swap_file_status_{{ swap.device }}: |
| cmd.run: |
| - name: 'swapon {{ swap.device }}' |
| - unless: grep {{ swap.device }} /proc/swaps |
| - require: |
| - cmd: linux_set_swap_file_{{ swap.device }} |
| |
| {{ swap.device }}: |
| mount.swap: |
| - persist: True |
| - require: |
| - cmd: linux_set_swap_file_{{ swap.device }} |
| |
| {%- endif %} |
| |
| {%- endif %} |
| |
| {%- endfor %} |
| |
| {%- endif %} |