Skip to content

Commit 903d516

Browse files
committed
feat: add tmpfs role
1 parent 83e1a4d commit 903d516

File tree

5 files changed

+36
-0
lines changed

5 files changed

+36
-0
lines changed

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ This Ansible collection provides a set of roles designed for configuring Kubuntu
1414
| [xebis.ansible.nftables_firewall](roles/nftables_firewall/README.md) | nftables firewall | `xebis.ansible.apt` |
1515
| `xebis.ansible.openssh_server` | Installs OpenSSH server and provides `Restart ssh` handler. | `xebis.ansible.apt` |
1616
| [xebis.ansible.system](roles/system/README.md) | System-related tasks such as reboot handler or reboot when required handler. | |
17+
| [xebis.ansible.tmpfs](roles/tmpfs/README.md) | Sets to mount directories as tmpfs during startup. | `xebis.ansible.system` |
1718
| [`xebis.ansible.users`](roles/users/README.md) | Ansible role for managing system users. | `xebis.ansible.openssh_server` |
1819

1920
## Installation and Configuration

roles/tmpfs/README.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
# Xebis.Ansible.Tmpfs
2+
3+
Sets `tmpfs_dirs` directories to mount during startup.
4+
5+
## Variables
6+
7+
- `tmpfs_dirs` [list of strings]
8+
- Directories to be mounted during the system startup.
9+
- Default `[]`

roles/tmpfs/meta/main.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
---
2+
dependencies:
3+
- role: xebis.ansible.system # Uses "Reboot system" handler

roles/tmpfs/tasks/main.yaml

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
---
2+
- name: Add Ansible managed section separator to /etc/fstab
3+
become: true
4+
ansible.builtin.lineinfile:
5+
path: /etc/fstab
6+
line: "# Ansible managed"
7+
state: present
8+
when: tmpfs_dirs | length > 0
9+
10+
- name: Set directories to mount as tmpfs
11+
become: true
12+
ansible.builtin.lineinfile:
13+
path: /etc/fstab
14+
regexp: "^\\s*tmpfs\\s+{{ item }}"
15+
line: "tmpfs {{ item }} tmpfs rw,nosuid,nodev"
16+
create: false
17+
state: present
18+
loop: "{{ tmpfs_dirs | default([]) }}"
19+
notify: Reboot system

test.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,10 @@
44
- role: xebis.ansible.grub
55
vars:
66
menu_timeout: 15
7+
- role: xebis.ansible.tmpfs
8+
vars:
9+
tmpfs_dirs:
10+
- /tmp
711
- role: xebis.ansible.apt
812
vars:
913
autoclean: true

0 commit comments

Comments
 (0)