diff options
| author | Jan Tuomi <jan@jantuomi.fi> | 2026-05-13 00:13:57 +0300 |
|---|---|---|
| committer | Jan Tuomi <jan@jantuomi.fi> | 2026-05-16 18:42:27 +0300 |
| commit | b5860daf11ac353049cb1654b9414a129e5cfb96 (patch) | |
| tree | 87ed89711e4f0e85ace0a97fa123199152c67302 /tasks | |
| parent | 4715a28fdcd87440400d17154bfa361d99db29cc (diff) | |
Rework
Diffstat (limited to 'tasks')
| -rw-r--r-- | tasks/email.yml | 50 | ||||
| -rw-r--r-- | tasks/general.yml | 167 | ||||
| -rw-r--r-- | tasks/jail_diddle.yml | 63 | ||||
| -rw-r--r-- | tasks/jail_homepage.yml | 52 | ||||
| -rw-r--r-- | tasks/jail_hommabot.yml | 62 | ||||
| -rw-r--r-- | tasks/jail_ingress.yml | 211 | ||||
| -rw-r--r-- | tasks/jail_postgres.yml | 10 | ||||
| -rw-r--r-- | tasks/jails.yml | 49 | ||||
| -rw-r--r-- | tasks/jails_dataset.yml | 61 | ||||
| -rw-r--r-- | tasks/jails_single.yml | 27 | ||||
| -rw-r--r-- | tasks/network.yml | 48 | ||||
| -rw-r--r-- | tasks/pkg_jail_install.yml | 9 | ||||
| -rw-r--r-- | tasks/zfs.yml | 48 |
13 files changed, 0 insertions, 857 deletions
diff --git a/tasks/email.yml b/tasks/email.yml deleted file mode 100644 index 3585c3f..0000000 --- a/tasks/email.yml +++ /dev/null @@ -1,50 +0,0 @@ -- name: Create dma config directory - file: - path: /etc/dma - state: directory - owner: root - group: wheel - mode: "0755" - -- name: Configure dma.conf - template: - src: etc_dma_dma.conf.j2 - dest: /etc/dma/dma.conf - owner: root - group: wheel - mode: "0644" - register: etc_dma_dma_conf - -- name: Configure auth.conf - template: - src: etc_dma_auth.conf.j2 - dest: /etc/dma/auth.conf - owner: root - group: mail - mode: "0640" - register: etc_dma_auth_conf - -- name: Configure aliases - template: - src: etc_aliases.j2 - dest: /etc/aliases - owner: root - group: wheel - mode: "0644" - register: etc_aliases_conf - -- name: Run newaliases - shell: newaliases - when: etc_aliases_conf.changed - -- name: Test mail delivery - when: etc_dma_dma_conf.changed or etc_dma_auth_conf.changed or etc_aliases_conf.changed - block: - - name: Send email - shell: echo "DMA test message from Ansible" | mail -s "Test DMA" root - register: mail_result - changed_when: false - - - name: Show mail result - debug: - var: mail_result diff --git a/tasks/general.yml b/tasks/general.yml deleted file mode 100644 index 0ec9219..0000000 --- a/tasks/general.yml +++ /dev/null @@ -1,167 +0,0 @@ -- name: Install packages - package: - name: "{{ item }}" - state: present - loop: - - rsync - - dma - - jq - - curl - - bash - - python - - py311-pip - - fastfetch - -- name: Install amd64-specific packages - package: - name: "{{ item }}" - state: present - loop: - - vm-bhyve - - drm-kmod - when: not is_test_vm - -- name: Set up periodic.conf - template: - src: etc_periodic.conf.j2 - dest: /etc/periodic.conf - owner: root - group: wheel - mode: "0644" - -- name: Set up /etc/rc.conf - template: - src: etc_rc.conf.j2 - dest: /etc/rc.conf - owner: root - group: wheel - mode: "0644" - register: rc_conf - -- name: Set up fstab - template: - src: etc_fstab.j2 - dest: /etc/fstab - owner: root - group: wheel - mode: "0644" - register: fstab - when: not is_test_vm - -- name: Run mount -a - shell: mount -a - when: not is_test_vm and fstab.changed - -- name: Start auditd - service: - name: auditd - state: started - -- name: Check if pylogsentinel is installed - shell: pip show pylogsentinel - register: pylogsentinel_check - failed_when: false - changed_when: false - -- name: Install pylogsentinel - shell: pip install pylogsentinel==0.3.0 --force --no-input - when: pylogsentinel_check.rc != 0 - -- name: Install pylogsentinel.conf - template: - src: usr_local_etc_pylogsentinel.conf.j2 - dest: /usr/local/etc/pylogsentinel.conf - owner: root - group: wheel - mode: "0644" - -- name: Install pylogsentinel-batch-email.sh - template: - src: usr_local_bin_pylogsentinel-batch-email.sh.j2 - dest: /usr/local/bin/pylogsentinel-batch-email.sh - owner: root - group: wheel - mode: "0755" - -- name: Set up crontab - template: - src: etc_crontab.j2 - dest: /etc/crontab - owner: root - group: wheel - mode: "0644" - register: etc_crontab - -- name: Restart cron - service: - name: cron - state: restarted - when: etc_crontab.changed - -- name: Install logto - template: - src: usr_local_bin_logto.sh.j2 - dest: /usr/local/bin/logto - owner: root - group: wheel - mode: "0755" - -- name: Copy backup SSH private key - copy: - src: "{{ backup_ssh_privkey_file }}" - dest: /root/.ssh/backup - owner: root - group: wheel - mode: "0600" - when: not is_test_vm - -- name: Copy backup SSH public key - copy: - src: "{{ backup_ssh_pubkey_file }}" - dest: /root/.ssh/backup.pub - owner: root - group: wheel - mode: "0644" - when: not is_test_vm - -- name: Copy SSH config - template: - src: root_ssh_config.j2 - dest: /root/.ssh/config - owner: root - group: wheel - mode: "0644" - when: not is_test_vm - -- name: Copy backup script - template: - src: usr_local_bin_backup.sh.j2 - dest: /usr/local/bin/backup - owner: root - group: wheel - mode: "0755" - when: not is_test_vm - -- name: Check if zroot/vm exists - shell: zfs list zroot/vm - register: zroot_vm_check - failed_when: false - changed_when: false - when: not is_test_vm - -- name: Add vm dataset for bhyve and init - when: not is_test_vm and zroot_vm_check.rc != 0 - block: - - name: Create vm dataset - shell: zfs create zroot/vm - - - name: Run vm init - shell: vm init - -- name: Install .bashrc - copy: - src: templates/root_bashrc - dest: /root/.bashrc - owner: root - group: wheel - mode: "0644" diff --git a/tasks/jail_diddle.yml b/tasks/jail_diddle.yml deleted file mode 100644 index 73424f5..0000000 --- a/tasks/jail_diddle.yml +++ /dev/null @@ -1,63 +0,0 @@ -- name: Install packages inside jail - loop: - - { jail: diddle, package: python311 } - - { jail: diddle, package: py311-sqlite3 } - - { jail: diddle, package: git } - include_tasks: pkg_jail_install.yml - -- name: Install clone.sh - template: - src: root_clone.sh - dest: /usr/local/jails/containers/diddle/root/clone.sh - owner: root - group: wheel - mode: "0755" - -- name: Clone & update diddle - shell: jexec diddle sh /root/clone.sh https://github.com/jantuomi/diddle.git /root/diddle - register: diddle_git - changed_when: diddle_git.rc == 100 - failed_when: diddle_git.rc != 0 and diddle_git.rc != 100 - -- name: Install diddle env file - template: - src: diddle/root_diddle_env.j2 - dest: /usr/local/jails/containers/diddle/root/diddle/.env - owner: root - group: wheel - mode: "0600" - register: diddle_env - -- name: Install diddle startup script - template: - src: diddle/usr_local_bin_diddle - dest: /usr/local/jails/containers/diddle/usr/local/bin/diddle - owner: root - group: wheel - mode: "0755" - register: diddle_bin - -- name: Install diddle service - template: - src: diddle/usr_local_etc_rc.d_diddle - dest: /usr/local/jails/containers/diddle/usr/local/etc/rc.d/diddle - owner: root - group: wheel - mode: "0755" - register: diddle_rc - -- name: Check if diddle service is running - command: service -j diddle diddle status - changed_when: false - failed_when: false - register: diddle_status - -- name: Ensure diddle service is enabled - shell: service -j diddle diddle enable - changed_when: false - failed_when: false - -- name: (Re)start diddle service - shell: service -j diddle diddle restart - when: diddle_git.changed or diddle_bin.changed - or diddle_rc.changed or diddle_env.changed or diddle_status.rc != 0 diff --git a/tasks/jail_homepage.yml b/tasks/jail_homepage.yml deleted file mode 100644 index 6751ad5..0000000 --- a/tasks/jail_homepage.yml +++ /dev/null @@ -1,52 +0,0 @@ -- name: Install packages inside jail - loop: - - { jail: homepage, package: nginx } - - { jail: homepage, package: rsync } - - { jail: homepage, package: bash } - include_tasks: pkg_jail_install.yml - -- name: Create /var/www - file: - path: /usr/local/jails/containers/homepage/var/www - state: directory - owner: www - group: www - mode: "0755" - -# It's important to run this after generating certs, because nginx.conf refers to files -# generated by certbot. Certbot will fail validation if nginx.conf is configured too early. -- name: Configure nginx.conf - template: - src: homepage/usr_local_etc_nginx_nginx.conf.j2 - dest: /usr/local/jails/containers/homepage/usr/local/etc/nginx/nginx.conf - owner: root - group: wheel - mode: "0644" - register: homepage_nginx_conf - -- name: Check if nginx is enabled - shell: service -j homepage nginx status - changed_when: false - failed_when: false - register: homepage_nginx_enabled - -- name: Enable and start nginx - shell: | - service -j ingress nginx enable - service -j ingress nginx restart - when: homepage_nginx_enabled.rc != 0 or homepage_nginx_conf.changed - -- name: Set up crontab - template: - src: homepage/etc_crontab.j2 - dest: /usr/local/jails/containers/homepage/etc/crontab - owner: root - group: wheel - mode: "0644" - register: jail_homepage_etc_crontab - -- name: Restart cron - service: - name: cron - state: restarted - when: jail_homepage_etc_crontab.changed diff --git a/tasks/jail_hommabot.yml b/tasks/jail_hommabot.yml deleted file mode 100644 index b86d5d6..0000000 --- a/tasks/jail_hommabot.yml +++ /dev/null @@ -1,62 +0,0 @@ -- name: Install packages inside jail - loop: - - { jail: hommabot, package: npm } - include_tasks: pkg_jail_install.yml - -- name: Build hommabot on this machine - delegate_to: localhost - shell: | - cd ../hommabot2 - npm run build - -- name: Create hommabot directory - file: - path: /usr/local/jails/containers/hommabot/root/hommabot - state: directory - owner: root - group: wheel - mode: "0755" - -- name: Install index.js - copy: - src: "{{ item }}" - dest: /usr/local/jails/containers/hommabot/root/hommabot/ - owner: root - group: wheel - mode: "0644" - loop: - - "../hommabot2/build/index.js" - - "../hommabot2/package.json" - - "../hommabot2/package-lock.json" - -- name: Install hommabot env file - template: - src: hommabot/root_hommabot_env.j2 - dest: /usr/local/jails/containers/hommabot/root/hommabot/.env - owner: root - group: wheel - mode: "0600" - -- name: Install deps.sh - copy: - src: templates/hommabot/root_hommabot_deps.sh - dest: /usr/local/jails/containers/hommabot/root/hommabot/deps.sh - owner: root - group: wheel - mode: "0755" - -- name: Install dependencies - shell: jexec hommabot /root/hommabot/deps.sh - -- name: Set up crontab - template: - src: hommabot/etc_crontab.j2 - dest: /usr/local/jails/containers/hommabot/etc/crontab - owner: root - group: wheel - mode: "0644" - register: jail_hommabot_etc_crontab - -- name: Restart cron - shell: jexec hommabot service cron restart - when: jail_hommabot_etc_crontab.changed diff --git a/tasks/jail_ingress.yml b/tasks/jail_ingress.yml deleted file mode 100644 index 5945e42..0000000 --- a/tasks/jail_ingress.yml +++ /dev/null @@ -1,211 +0,0 @@ -- name: Ensure ingress goaccess mount points exist - file: - path: "{{ item }}" - state: directory - owner: root - group: wheel - mode: "0755" - loop: - - /usr/local/jails/containers/goaccess/var/www/goaccess - - /usr/local/jails/containers/ingress/mnt/www_goaccess - -- name: Start ingress jail - shell: service jail start ingress - register: ingress_jail_start - failed_when: false - changed_when: "'already running' not in ingress_jail_start.stderr" - -- name: Install packages inside jail - loop: - - { jail: ingress, package: nginx } - - { jail: ingress, package: py311-certbot } - - { jail: ingress, package: py311-certbot-nginx } - - { jail: ingress, package: goaccess } - include_tasks: pkg_jail_install.yml - -- name: Configure pf.conf - template: - src: ingress/etc_pf.conf.j2 - dest: /usr/local/jails/containers/ingress/etc/pf.conf - owner: root - group: wheel - mode: "0644" - register: ingress_pf_conf - -- name: Reload pf.conf - shell: jexec ingress pfctl -f /etc/pf.conf - when: ingress_pf_conf.changed - -- name: Check if gateway mode is enabled - shell: jexec ingress sysrc gateway_enable | grep -q "YES" - register: ingress_gateway_enabled - failed_when: false - changed_when: false - -- name: Enable gateway mode - shell: jexec ingress sysrc gateway_enable=YES - when: ingress_gateway_enabled.rc != 0 - -- name: Check if IP forwarding is enabled - shell: jexec ingress sysctl net.inet.ip.forwarding | grep -q "1" - register: ingress_ip_forwarding_enabled - failed_when: false - changed_when: false - -- name: Enable IP forwarding - shell: jexec ingress sysctl net.inet.ip.forwarding=1 - when: ingress_ip_forwarding_enabled.rc != 0 - -- name: Install pf-ban-socket.py - copy: - src: templates/ingress/pf-ban-socket.py - dest: /usr/local/jails/containers/ingress/usr/local/bin/pf-ban-socket.py - owner: root - group: wheel - mode: "0755" - register: ingress_pf_ban_socket_py - -- name: Install pf-ban-socket service - copy: - src: templates/ingress/usr_local_etc_rc.d_pf_ban_socket - dest: /usr/local/jails/containers/ingress/usr/local/etc/rc.d/pf_ban_socket - owner: root - group: wheel - mode: "0755" - register: ingress_pf_ban_socket_service - -- name: Check if pf enabled - shell: jexec ingress sysrc pf_enable | grep -q "YES" - register: ingress_pf_enabled - failed_when: false - changed_when: false - -- name: Enable pf - shell: jexec ingress sysrc pf_enable=YES - when: ingress_pf_enabled.rc != 0 - -- name: Check if pf is running - shell: service -j ingress pf status - register: ingress_pf_status - changed_when: ingress_pf_status.rc != 0 - -- name: Start pf - shell: service -j ingress pf start - when: ingress_pf_status.rc != 0 - -- name: Enable pf-ban-socket service - shell: | - service -j ingress pf_ban_socket enable - service -j ingress pf_ban_socket restart - when: ingress_pf_ban_socket_service.changed or ingress_pf_ban_socket_py.changed - -- name: Copy acme-dns-auth.py - copy: - src: templates/ingress/acme-dns-auth.py - dest: /usr/local/jails/containers/ingress/usr/local/bin/acme-dns-auth.py - owner: root - group: wheel - mode: "0755" - -- name: Check if LetsEncrypt certs are generated - shell: ls /usr/local/jails/containers/ingress/usr/local/etc/letsencrypt/live/{{ cert_name }} - register: cert_exists - failed_when: false - changed_when: false - -- name: Manually get certs with certbot and DNS challenge - pause: - prompt: | - /usr/local/etc/letsencrypt/live/{{ cert_name }} does not exist. This means that this is the first run of this playbook. - The {{ cert_name }} cert contains all of the @ and * certs for all domains. - Check the ingress crontab template and run the certbot command manually in the ingress jail. Remove the "-n" flag. - Add the requested DNS records manually into Hetzner DNS. Continue after this is done. - when: cert_exists.rc != 0 - -- name: Configure nginx.conf - template: - src: ingress/usr_local_etc_nginx_nginx.conf.j2 - dest: /usr/local/jails/containers/ingress/usr/local/etc/nginx/nginx.conf - owner: root - group: wheel - mode: "0644" - register: nginx_conf - -- name: Create nginx snippets directory - file: - path: "/usr/local/jails/containers/ingress/usr/local/etc/nginx/snippets" - state: directory - owner: root - group: wheel - mode: "0755" - -- name: Include ban.inc - template: - src: ingress/nginx_snippet_ban.inc - dest: /usr/local/jails/containers/ingress/usr/local/etc/nginx/snippets/ban.inc - owner: root - group: wheel - mode: "0644" - -- name: Create static directories - loop: "{{ ingress_routes | selectattr('static', 'defined') | map(attribute='static') | unique | list }}" - file: - path: "/usr/local/jails/containers/ingress{{ item }}" - state: directory - recurse: yes - owner: 80 - group: 80 - mode: "0755" - -- name: Check if nginx is enabled - shell: service -j ingress nginx status - changed_when: false - failed_when: false - register: ingress_nginx_enabled - -- name: Enable and start nginx - shell: | - service -j ingress nginx enable - service -j ingress nginx restart - when: ingress_nginx_enabled.rc != 0 or nginx_conf.changed - -- name: Install hetzner_ddns.sh - template: - src: ingress/usr_local_bin_hetzner_ddns.sh.j2 - dest: /usr/local/jails/containers/ingress/usr/local/bin/hetzner_ddns.sh - owner: root - group: wheel - mode: "0755" - -- name: Set up hetzner_auth - template: - src: ingress/usr_local_etc_hetzner_auth.j2 - dest: /usr/local/jails/containers/ingress/usr/local/etc/hetzner_auth - owner: root - group: wheel - mode: "0600" - -- name: Set up gen_goaccess.sh - template: - src: ingress/usr_local_bin_gen_goaccess.sh.j2 - dest: /usr/local/jails/containers/ingress/usr/local/bin/gen_goaccess.sh - owner: root - group: wheel - mode: "0755" - -- name: Set up crontab - template: - src: ingress/etc_crontab.j2 - dest: /usr/local/jails/containers/ingress/etc/crontab - owner: root - group: wheel - mode: "0644" - vars: - tls_hosts: "{{ ingress_routes | map(attribute='host') | unique }}" - register: jail_ingress_etc_crontab - -- name: Restart cron - service: - name: cron - state: restarted - when: jail_ingress_etc_crontab.changed diff --git a/tasks/jail_postgres.yml b/tasks/jail_postgres.yml deleted file mode 100644 index 42cdacf..0000000 --- a/tasks/jail_postgres.yml +++ /dev/null @@ -1,10 +0,0 @@ -- name: Install packages inside jail - loop: - - { jail: postgres, package: postgresql18-server } - include_tasks: pkg_jail_install.yml - -- name: Enable postgresql service inside jail - shell: | - service -j postgres postgresql enable - changed_when: false -# Run initdb and start manually, not managed by Ansible diff --git a/tasks/jails.yml b/tasks/jails.yml deleted file mode 100644 index 58d22d8..0000000 --- a/tasks/jails.yml +++ /dev/null @@ -1,49 +0,0 @@ -- name: Ensure jails directory exists - file: - path: /usr/local/jails - state: directory - owner: root - group: wheel - mode: "0755" - -- name: Create ZFS datasets - loop: - - { name: "zroot/jails", mountpoint: "/usr/local/jails" } - - { name: "zroot/jails/media" } - - { name: "zroot/jails/templates" } - - { - name: "zroot/jails/templates/{{ jail_userland_14_3 }}", - userland: "{{ jail_userland_14_3 }}", - } - - { - name: "zroot/jails/templates/{{ jail_userland_15_0 }}", - userland: "{{ jail_userland_15_0 }}", - } - - { name: "zroot/jails/containers" } - loop_control: - loop_var: dataset - include_tasks: jails_dataset.yml - -- name: Configure jails - block: - - name: Configure jail.conf - template: - src: etc_jail.conf.j2 - dest: /etc/jail.conf - owner: root - group: wheel - mode: "0644" - - - name: Configure devfs.rules - template: - src: etc_devfs.rules.j2 - dest: /etc/devfs.rules - owner: root - group: wheel - mode: "0644" - - - name: Configure individual jails - loop: "{{ jails }}" - loop_control: - loop_var: jail - include_tasks: jails_single.yml diff --git a/tasks/jails_dataset.yml b/tasks/jails_dataset.yml deleted file mode 100644 index 9e2748c..0000000 --- a/tasks/jails_dataset.yml +++ /dev/null @@ -1,61 +0,0 @@ -- name: "Check if dataset {{ dataset.name }} exists" - shell: zfs list -o name | grep -Fxq "{{ dataset.name }}" - changed_when: false - failed_when: false - register: check_dataset_exists - -- name: "Create ZFS dataset {{ dataset.name }}" - shell: | - {% if dataset.mountpoint is defined %} - zfs create -o "mountpoint={{ dataset.mountpoint }}" -p "{{ dataset.name }}" - {% else %} - zfs create -p "{{ dataset.name }}" - {% endif %} - when: check_dataset_exists.rc != 0 - -- name: Check if userland snapshot already exists - shell: zfs list -t snapshot -o name | grep -Fxq "{{ dataset.name }}@base" - failed_when: false - changed_when: false - register: zfs_userland_check - when: dataset.userland is defined - -- name: Set up userland - when: dataset.userland is defined and zfs_userland_check.rc != 0 - block: - - name: Download userland - get_url: - url: https://download.freebsd.org/ftp/releases/{{ arch }}/{{ dataset.userland }}/base.txz - dest: /usr/local/jails/media/{{ dataset.userland }}-base.txz - owner: root - group: wheel - mode: "0644" - - - name: Unarchive userland - shell: tar -xzf /usr/local/jails/media/{{ dataset.userland }}-base.txz -C /usr/local/jails/templates/{{ dataset.userland }} - - - name: Copy localtime to jail userland - copy: - remote_src: true - src: /etc/localtime - dest: /usr/local/jails/templates/{{ dataset.userland }}/etc/localtime - - - name: Copy resolv.conf to jail userland - template: - src: etc_resolv.conf.j2 - dest: /usr/local/jails/templates/{{ dataset.userland }}/etc/resolv.conf - owner: root - group: wheel - mode: "0644" - - - name: Disable resolvconf in the template - shell: echo 'resolvconf=NO' >> /usr/local/jails/templates/{{ dataset.userland }}/etc/resolvconf.conf - - - name: Update userland to latest patch level - shell: freebsd-update -b /usr/local/jails/templates/{{ dataset.userland }}/ fetch install - - - name: Disable syslogd in the template - shell: echo 'syslogd_enable="NO"' >> /usr/local/jails/templates/{{ dataset.userland }}/etc/rc.conf - - - name: Create userland ZFS snapshot - shell: zfs snapshot zroot/jails/templates/{{ dataset.userland }}@base diff --git a/tasks/jails_single.yml b/tasks/jails_single.yml deleted file mode 100644 index 7c5dd74..0000000 --- a/tasks/jails_single.yml +++ /dev/null @@ -1,27 +0,0 @@ -- name: "Check if jail directory for {{ jail.name }} exists" - shell: zfs list -o name | grep -Fxq "zroot/jails/containers/{{ jail.name }}" - failed_when: false - changed_when: false - register: check_jail_directory - -- name: "ZFS clone snapshot to jail directory for {{ jail.name }}" - shell: zfs clone zroot/jails/templates/{{ jail.userland }}@base "zroot/jails/containers/{{ jail.name }}" - when: check_jail_directory.rc != 0 - -- name: Configure jail.conf.d/{{ jail.name }}.conf - template: - src: etc_jail.conf.d_[jailname].conf.j2 - dest: /etc/jail.conf.d/{{ jail.name }}.conf - owner: root - group: wheel - mode: "0644" -# -#- name: "Check if jail {{ jail.name }} is running" -# shell: jls -j "{{ jail.name }}" -# failed_when: false -# changed_when: false -# register: check_jail_active -# -#- name: "(Re)start jail {{ jail.name }}" -# shell: service jail restart "{{ jail.name }}" -# when: check_jail_active.rc != 0 diff --git a/tasks/network.yml b/tasks/network.yml deleted file mode 100644 index 86cbf46..0000000 --- a/tasks/network.yml +++ /dev/null @@ -1,48 +0,0 @@ -- name: Set up resolv.conf - template: - src: etc_resolv.conf.j2 - dest: /etc/resolv.conf - owner: root - group: wheel - mode: "0644" - -# TODO: this doesn't work without rc_conf having been run -#- name: Restart networking if interface configuration changed -# shell: service netif restart && service routing restart -# when: rc_conf.changed or resolv_conf.changed - -- name: Apply network configuration - shell: service netif restart && service routing restart - when: rc_conf.changed - -- name: Set up sshd - template: - src: etc_ssh_sshd_config.j2 - dest: /etc/ssh/sshd_config - owner: root - group: wheel - mode: "0644" - register: etc_sshd_config - -- name: Start sshd - service: - name: sshd - state: started - register: started_sshd - -- name: Restart sshd - service: - name: sshd - state: restarted - when: not started_sshd.changed and etc_sshd_config.changed - -- name: Start syslogd - service: - name: syslogd - state: started - register: started_syslogd -#- name: Restart syslogd -# service: -# name: syslogd -# state: restarted -# when: not started_syslogd.changed and rc_conf.changed diff --git a/tasks/pkg_jail_install.yml b/tasks/pkg_jail_install.yml deleted file mode 100644 index 0315a03..0000000 --- a/tasks/pkg_jail_install.yml +++ /dev/null @@ -1,9 +0,0 @@ -- name: Check if {{ item.package }} is installed - shell: pkg -j {{ item.jail }} info {{ item.package }} - register: pkg_jail_installed - changed_when: false - failed_when: false - -- name: Install {{ item.package }} - shell: pkg -j {{ item.jail }} install -y {{ item.package }} - when: pkg_jail_installed.rc != 0 diff --git a/tasks/zfs.yml b/tasks/zfs.yml deleted file mode 100644 index 59495dc..0000000 --- a/tasks/zfs.yml +++ /dev/null @@ -1,48 +0,0 @@ -- name: Ensure /usr/local/etc/rc.d/ exists - file: - path: /usr/local/etc/rc.d/ - state: directory - owner: root - group: wheel - mode: "0755" - -- name: Add zpool_gpt_labels rc.d service - template: - src: usr_local_etc_rc.d_zpool_gpt_labels.j2 - dest: /usr/local/etc/rc.d/zpool_gpt_labels - owner: root - group: wheel - mode: "0755" - register: rc_zpool_gpt_labels - -- name: Run zpool_gpt_labels - service: - name: zpool_gpt_labels - state: started - when: rc_zpool_gpt_labels.changed - -- name: Install smartd - package: - name: smartmontools - state: present - -- name: Configure smartd.conf - template: - src: usr_local_etc_smartd.conf.j2 - dest: /usr/local/etc/smartd.conf - owner: root - group: wheel - mode: "0644" - register: smartd_conf - -- name: Start smartd - service: - name: smartd - state: started - register: started_smartd - -- name: Restart smartd - service: - name: smartd - state: restarted - when: not started_smartd.changed and smartd_conf.changed |
