120 lines
2.2 KiB
YAML
120 lines
2.2 KiB
YAML
|
---
|
||
|
- name: Install packages
|
||
|
package:
|
||
|
name: s6-rc
|
||
|
|
||
|
- name: Create s6-rc directories
|
||
|
file:
|
||
|
path: '{{ item }}'
|
||
|
state: directory
|
||
|
owner: root
|
||
|
group: wheel
|
||
|
mode: 0755
|
||
|
with_items:
|
||
|
- /etc/s6-rc
|
||
|
- /etc/s6-rc/service
|
||
|
- /etc/s6-rc/service/enabled
|
||
|
|
||
|
- name: Define enabled services bundle
|
||
|
copy:
|
||
|
dest: /etc/s6-rc/service/enabled/type
|
||
|
content: bundle
|
||
|
owner: root
|
||
|
group: wheel
|
||
|
mode: 0444
|
||
|
|
||
|
- name: Default to an empty set of enabled servics
|
||
|
file:
|
||
|
path: /etc/s6-rc/service/enabled/contents
|
||
|
state: touch
|
||
|
owner: root
|
||
|
group: wheel
|
||
|
mode: 0644
|
||
|
changed_when: false
|
||
|
|
||
|
- name: Pick a UUID
|
||
|
command: uuidgen
|
||
|
register: uuidgen
|
||
|
changed_when: false
|
||
|
|
||
|
- name: Expose the UUID as fact
|
||
|
set_fact:
|
||
|
s6_uuid: '{{ uuidgen.stdout }}'
|
||
|
changed_when: false
|
||
|
|
||
|
- name: Compile the s6 service definitions
|
||
|
command: >
|
||
|
s6-rc-compile -v 2 .compiled.{{ s6_uuid }} service
|
||
|
args:
|
||
|
creates: /etc/s6-rc/compiled
|
||
|
chdir: /etc/s6-rc
|
||
|
|
||
|
- name: Link to the latest service database
|
||
|
command: >
|
||
|
env ln -shf .compiled.{{ s6_uuid }} compiled
|
||
|
args:
|
||
|
creates: /etc/s6-rc/compiled
|
||
|
chdir: /etc/s6-rc
|
||
|
|
||
|
- name: Make sure that tmpfs support is loaded early
|
||
|
lineinfile:
|
||
|
path: /boot/loader.conf
|
||
|
regexp: '^tmpfs_load='
|
||
|
line: 'tmpfs_load="YES"'
|
||
|
|
||
|
- name: Add /run to fstab
|
||
|
mount:
|
||
|
path: /run
|
||
|
src: tmpfs
|
||
|
fstype: tmpfs
|
||
|
opts: rw,size=128m,mode=755
|
||
|
state: mounted
|
||
|
|
||
|
- name: Generate s6-svscan startup script
|
||
|
template:
|
||
|
dest: /etc/s6-rc/scan
|
||
|
src: scan.j2
|
||
|
owner: root
|
||
|
group: wheel
|
||
|
mode: 0555
|
||
|
|
||
|
- name: Start s6-svscan from /etc/ttys
|
||
|
lineinfile:
|
||
|
path: /etc/ttys
|
||
|
regexp: '^null'
|
||
|
line: 'null "/etc/s6-rc/scan" vt100 on secure'
|
||
|
notify:
|
||
|
- Reload /etc/ttys
|
||
|
|
||
|
- name: Install s6-rc rc.d script
|
||
|
template:
|
||
|
dest: /usr/local/etc/rc.d/s6-rc
|
||
|
src: s6-rc.j2
|
||
|
owner: root
|
||
|
group: wheel
|
||
|
mode: 0555
|
||
|
|
||
|
- name: Flush handlers
|
||
|
meta: flush_handlers
|
||
|
|
||
|
- name: Starting s6-rc
|
||
|
service:
|
||
|
name: s6-rc
|
||
|
state: started
|
||
|
enabled: yes
|
||
|
|
||
|
- name: Create s6-log group
|
||
|
group:
|
||
|
name: s6-log
|
||
|
gid: 20000
|
||
|
|
||
|
- name: Create s6-log user
|
||
|
user:
|
||
|
name: s6-log
|
||
|
uid: 20000
|
||
|
group: s6-log
|
||
|
create_home: no
|
||
|
home: /var/empty
|
||
|
shell: /bin/sh
|
||
|
|