diff --git a/bitlair.yaml b/bitlair.yaml index 449f529..b463ff7 100644 --- a/bitlair.yaml +++ b/bitlair.yaml @@ -47,6 +47,7 @@ - hosts: music roles: - { role: "acme", tags: ["acme"] } + - { role: "go", tags: ["go"] } - { role: "music", tags: ["music"] } - hosts: pad @@ -57,7 +58,6 @@ - hosts: services roles: - - { role: "deb_forgejo", tags: [ "deb_forgejo" ] } - { role: "services", tags: ["services"] } - hosts: wiki @@ -75,9 +75,3 @@ - hosts: ldap roles: - { role: "common", tags: [ "common" ] } - -- hosts: tickets - roles: - - { role: "common", tags: [ "common" ] } - - { role: "acme", tags: [ "acme" ] } - - { role: "nginx", tags: [ "nginx" ] } diff --git a/group_vars/all.yaml b/group_vars/all.yaml index 0169ce1..39de4c0 100644 --- a/group_vars/all.yaml +++ b/group_vars/all.yaml @@ -37,7 +37,5 @@ debian_repourl: "http://deb.debian.org/debian/" debian_securityurl: "http://security.debian.org/debian-security" deb_forgejo_repos: - - host: git.bitlair.nl - owner: bitlair - host: git.polyfloyd.net owner: polyfloyd diff --git a/group_vars/ldap.yaml b/group_vars/ldap.yaml new file mode 100644 index 0000000..53187b1 --- /dev/null +++ b/group_vars/ldap.yaml @@ -0,0 +1,4 @@ +--- + +group_nft_input: + - "tcp dport { ldap, ldaps } accept # Allow LDAP traffic" diff --git a/group_vars/music.yaml b/group_vars/music.yaml index 85f4ce8..8f0cc7c 100644 --- a/group_vars/music.yaml +++ b/group_vars/music.yaml @@ -6,18 +6,12 @@ nft: false root_access: - ak - bob + - eightdot - foobar - polyfloyd nginx_client_max_body_size: 512M -nginx_sites: - - server_name: "music.bitlair.nl" - snippets: - - "music-nginx.j2" music_domain: music.bitlair.nl acme_san_domains: - [ music.bitlair.nl ] - -music_bitpanel_host: bitpanel.bitlair.nl -music_bitpanel_port: 1337 diff --git a/group_vars/tickets.yaml b/group_vars/tickets.yaml deleted file mode 100644 index 04e44f0..0000000 --- a/group_vars/tickets.yaml +++ /dev/null @@ -1,28 +0,0 @@ ---- - -root_access: - - ak - - foobar - - polyfloyd - -acme_domains: - - tickets.bitlair.nl - -nginx_sites: - - server_name: "tickets.bitlair.nl" - config: - - |- - location / { - proxy_pass http://127.0.0.1:3000/; - proxy_http_version 1.1; - proxy_set_header Connection "upgrade"; - proxy_set_header Upgrade $http_upgrade; - proxy_set_header X-Forwarded-For $remote_addr; - proxy_set_header X-Forwarded-Proto $scheme; - - # by default nginx times out connections in one minute - proxy_read_timeout 1d; - } - -group_nft_input: - - "tcp dport { http, https } accept # Allow web-traffic from world" diff --git a/inventory b/inventory index 0fd8fac..eca431d 100644 --- a/inventory +++ b/inventory @@ -53,9 +53,6 @@ chat.bitlair.nl [ldap] ldap-new.bitlair.nl -[tickets] -tickets.bitlair.nl - [debian:children] bank fotos diff --git a/music.yaml b/music.yaml index cc04425..17666f3 100644 --- a/music.yaml +++ b/music.yaml @@ -5,5 +5,6 @@ - { role: "common", tags: [ "common" ] } - { role: "acme", tags: [ "acme" ] } - { role: "deb_forgejo", tags: [ "deb_forgejo" ] } - - { role: "nginx", tags: [ "nginx" ] } + - { role: "go", tags: [ "go" ] } +# - { role: "nginx", tags: [ "nginx" ] } - { role: "music", tags: [ "music" ] } diff --git a/roles/389-ldap/tasks/main.yaml b/roles/389-ldap/tasks/main.yaml new file mode 100644 index 0000000..eaf4383 --- /dev/null +++ b/roles/389-ldap/tasks/main.yaml @@ -0,0 +1,9 @@ +--- + +- name: Install packages + ansible.builtin.apt: + state: present + pkg: + - 389-ds-base + - shelldap + diff --git a/roles/bank/defaults/main.yaml b/roles/bank/defaults/main.yaml index 548c8fa..b0fea92 100644 --- a/roles/bank/defaults/main.yaml +++ b/roles/bank/defaults/main.yaml @@ -1,3 +1,3 @@ bank_user: bank +bank_revbank_git: https://git.bitlair.nl/bitlair/revbank.git bank_local_tty: no -bank_revbank_version: "10.6.0" diff --git a/roles/bank/tasks/login.yaml b/roles/bank/tasks/login.yaml index f54bbfd..7ed568e 100644 --- a/roles/bank/tasks/login.yaml +++ b/roles/bank/tasks/login.yaml @@ -4,7 +4,7 @@ name: bank password: $6$idklol$QrOE/21LDR0vhZBAXwgA7AvnmR6Ju4ZqzAzgeazC08i2yw9kyQjgwu.uuV692iL/cyE7AteDYUxCpcorONXom. # "bank" home: /home/{{ bank_user }} - shell: /usr/local/share/revbank/revbank + shell: /home/{{ bank_user }}/revbank.git/revbank update_password: always - name: Allow password auth for bank user @@ -13,7 +13,7 @@ insertafter: EOF validate: "/usr/sbin/sshd -t -f %s" block: |- - Match User {{ bank_user }} + Match User bank PasswordAuthentication yes notify: reload sshd diff --git a/roles/bank/tasks/revbank.yaml b/roles/bank/tasks/revbank.yaml index 7042cb0..ec283d1 100644 --- a/roles/bank/tasks/revbank.yaml +++ b/roles/bank/tasks/revbank.yaml @@ -1,27 +1,50 @@ --- - name: Install dependencies ansible.builtin.apt: - name: - - git - - libcurses-ui-perl - - libjson-perl - - libterm-readline-gnu-perl - - libwww-perl + name: [ git, libterm-readline-gnu-perl, libcurses-ui-perl, qrencode ] state: present - name: Clone revbank source ansible.builtin.git: - repo: https://github.com/revspace/revbank.git - version: "v{{ bank_revbank_version }}" - dest: /usr/local/share/revbank + repo: "{{ bank_revbank_git }}" + version: master + dest: /home/{{ bank_user }}/revbank.git accept_hostkey: yes -- name: Clone revbank-plugin source - ansible.builtin.git: - repo: https://git.bitlair.nl/bitlair/revbank-plugins.git - version: main - dest: /usr/local/share/revbank-plugins - accept_hostkey: yes +- name: Create data files + ansible.builtin.command: cp /home/{{ bank_user }}/revbank.git/{{ item }} /home/{{ bank_user }}/{{ item }} + args: + creates: /home/{{ bank_user }}/{{ item }} + with_items: + - revbank.accounts + - revbank.market + - revbank.products + +- name: Ensure data file permissions + ansible.builtin.file: + path: /home/{{ bank_user }}/{{ item }} + state: touch + owner: "{{ bank_user }}" + group: "{{ bank_user }}" + mode: 0644 + with_items: + - revbank.accounts + - revbank.market + - revbank.products + +- name: Link plugins + ansible.builtin.file: + state: link + path: /home/{{ bank_user }}/{{ item }} + src: /home/{{ bank_user }}/revbank.git/{{ item }} + with_items: + - plugins + - revbank.plugins + +- name: Create git data dir + ansible.builtin.file: + path: /home/{{ bank_user }}/data.git + state: directory - name: Install git cronjob ansible.builtin.template: diff --git a/roles/bank/templates/git.cron b/roles/bank/templates/git.cron index b5ad03c..b334260 100644 --- a/roles/bank/templates/git.cron +++ b/roles/bank/templates/git.cron @@ -1,4 +1,4 @@ SHELL=/bin/bash #m h dom mon dow user command - */10 * * * * {{ bank_user }} git -C ~/.revbank pull -r && git -C ~/.revbank push && git -C ~/.revbank gc + */10 * * * * {{ bank_user }} (cd /home/{{ bank_user }}/data.git && git pull -r && git push && git gc --auto && cp revbank.products ../revbank.products) diff --git a/roles/mqtt/defaults/main.yaml b/roles/mqtt/defaults/main.yaml new file mode 100644 index 0000000..8cf4403 --- /dev/null +++ b/roles/mqtt/defaults/main.yaml @@ -0,0 +1 @@ +mqtt_bambulab_cafile: /etc/mosquitto/ca_certificates/bambulab.pem diff --git a/roles/mqtt/tasks/main.yaml b/roles/mqtt/tasks/main.yaml index c2e46ab..498f49c 100644 --- a/roles/mqtt/tasks/main.yaml +++ b/roles/mqtt/tasks/main.yaml @@ -9,10 +9,8 @@ - name: Install bambulab cafile # openssl s_client -showcerts -connect :8883