124 lines
5.6 KiB
YAML
124 lines
5.6 KiB
YAML
- name: Inspircd
|
|
hosts: beepi
|
|
become: true
|
|
vars:
|
|
inspircd_sendpass: !vault |
|
|
$ANSIBLE_VAULT;1.1;AES256
|
|
38376364613733613839386432376432306531393231383362336465653730656539356362313337
|
|
6365613062323137323563643963656161666631653938380a373462323834653733376663646134
|
|
61613831323831353761376337616635336339363830326536383632306139363831643636626566
|
|
3131623431393438640a356166663965626535383032383232313064363732336164613236393430
|
|
34343536363838626333626439336662303965643337393563396366393831626339
|
|
inspircd_recvpass: !vault |
|
|
$ANSIBLE_VAULT;1.1;AES256
|
|
64653933323335313263613063393164393339613432376437613834366133323138323262343738
|
|
3332323139366163636365343066653539626664373164310a383033376139346331313734356535
|
|
39656164313364333237323230363761623735313938643265656131346436303235396631363631
|
|
3035303865353466660a393537303739396534393133353261393130303636396434383139643163
|
|
32656532613339623837323939383336653732363266323439633839653832623762
|
|
inspircd_root_oper_password: !vault |
|
|
$ANSIBLE_VAULT;1.1;AES256
|
|
30343162623465633134623862326134636233633237613864363862316463653733383939636136
|
|
6263353934666637376563303761376162316334336534390a616336336663316462303862363662
|
|
64386137653566383962616131663866393966613664623036383834633439333162303032656666
|
|
3731353664653761620a333833336531393266643531323935393364656662623530376166383630
|
|
62623132626362643061646639303833346366396562613238623338326531346439
|
|
inspircd_bee_oper_password: !vault |
|
|
$ANSIBLE_VAULT;1.1;AES256
|
|
39396337663133313131383464393236316163653631616565613039393364333636656537393663
|
|
6439383936333837313536636536643063356630306130360a343533326133396632313631336136
|
|
37346330363231623130353432333134313963653365326633383461613834643634303566303230
|
|
3032326237653034350a333934623834656666333234616364663537383166626566653039393661
|
|
62336462613030313532333566363164336262376635633131313133386531333962
|
|
inspircd_diepass: !vault |
|
|
$ANSIBLE_VAULT;1.1;AES256
|
|
62623565646331343664343863656466363234323834323666363436313865366666363130623866
|
|
6661383938323661313636393533356333653361303065640a363135383130653265336230346234
|
|
64616233313132363235646633643436626337313236633766343462383865616662353030383333
|
|
3339343635306465630a383738306261383761316631383738633730333030393635303863383633
|
|
31663438383735303438616531666531323233663235653832323731663336626162
|
|
inspircd_restartpass: !vault |
|
|
$ANSIBLE_VAULT;1.1;AES256
|
|
63356162323139303537353538303661376338316264306630326637393930343738343432343265
|
|
3136306233343930393833373034323966386530613666310a623364646439346538663235363138
|
|
65663139623436346535396535376162356163303639373935643335666339353838363161643965
|
|
6639383631303163610a663033373733396631643435363734616430393238383764363066396333
|
|
32306639333331313437376262636164326135343433663937646232316434386164
|
|
inspircd_cloak_key: !vault |
|
|
$ANSIBLE_VAULT;1.1;AES256
|
|
34393037316433666339356265663363653636313761343633626465633362396265303562303530
|
|
6565326437356631376438363062326130316632396662610a663465313736623031326236313662
|
|
66623039383632333539303536356463346638623234616239383336313065626336633632363438
|
|
3931386263396531360a386338643637386633353565356264303938383334383934316438353931
|
|
39393033643231353263313236643061393337653864633566393965656438636432
|
|
|
|
tasks:
|
|
- name: Install podman
|
|
ansible.builtin.apt:
|
|
name: podman
|
|
state: present
|
|
|
|
- name: Create inspircd config directory
|
|
ansible.builtin.file:
|
|
path: /etc/inspircd
|
|
state: directory
|
|
mode: '0755'
|
|
|
|
- name: Copy config
|
|
ansible.builtin.template:
|
|
src: inspircd.conf.j2
|
|
dest: /etc/inspircd/inspircd.conf
|
|
mode: '0644'
|
|
notify: Reload inspircd
|
|
|
|
- name: Copy motd
|
|
ansible.builtin.copy:
|
|
src: inspircd.motd
|
|
dest: /etc/inspircd/inspircd.motd
|
|
mode: '0644'
|
|
notify: Reload inspircd
|
|
|
|
- name: Create container build context directory
|
|
ansible.builtin.file:
|
|
path: /tmp/inspircd-build
|
|
state: directory
|
|
mode: '0755'
|
|
|
|
- name: Copy Containerfile to build context
|
|
ansible.builtin.copy:
|
|
src: Containerfile
|
|
dest: /tmp/inspircd-build/Containerfile
|
|
mode: '0644'
|
|
|
|
- name: Build inspircd container image
|
|
ansible.builtin.command:
|
|
cmd: podman build -t inspircd:local /tmp/inspircd-build
|
|
changed_when: true
|
|
|
|
- name: Stop and remove existing inspircd container
|
|
ansible.builtin.command:
|
|
cmd: podman rm -f inspircd
|
|
failed_when: false
|
|
changed_when: false
|
|
|
|
- name: Run inspircd container
|
|
changed_when: true
|
|
ansible.builtin.command:
|
|
cmd: >-
|
|
podman run -d
|
|
--name inspircd
|
|
--network host
|
|
--restart always
|
|
-v /etc/inspircd/inspircd.conf:/etc/inspircd/inspircd.conf:ro
|
|
-v /etc/inspircd/inspircd.motd:/etc/inspircd/inspircd.motd:ro
|
|
-v /etc/inspircd/cert.pem:/etc/inspircd/cert.pem:ro
|
|
-v /etc/inspircd/key.pem:/etc/inspircd/key.pem:ro
|
|
inspircd:local
|
|
|
|
handlers:
|
|
- name: Reload inspircd
|
|
changed_when: true
|
|
ansible.builtin.command:
|
|
cmd: podman kill --signal USR1 inspircd
|
|
failed_when: false
|