aboutsummaryrefslogtreecommitdiffstats
path: root/roles/jails
diff options
context:
space:
mode:
authorJan Tuomi <jan@jantuomi.fi>2026-05-19 00:49:25 +0300
committerJan Tuomi <jan@jantuomi.fi>2026-05-19 00:55:21 +0300
commitb0578d2af1d6bfef7b86103a3f244c9112d06f98 (patch)
treec2165399785450e55d4996ef842c8ec0ad45d102 /roles/jails
parentb38e910899bad2d6ae2049b599dcdd525420c53d (diff)
Remove packager, use ports fork
Diffstat (limited to 'roles/jails')
-rw-r--r--roles/jails/01_ingress/defaults/main.yml1
-rw-r--r--roles/jails/03_irc_thelounge/files/config.js1
-rw-r--r--roles/jails/04_taulubot/defaults/main.yml4
-rw-r--r--roles/jails/06_hommabot/defaults/main.yml12
-rw-r--r--roles/jails/06_hommabot/handlers/main.yml5
-rw-r--r--roles/jails/06_hommabot/tasks/main.yml21
-rw-r--r--roles/jails/06_hommabot/templates/etc_crontab.j210
-rw-r--r--roles/jails/06_hommabot/templates/root_hommabot_deps.sh14
-rw-r--r--roles/jails/06_hommabot/templates/root_hommabot_env.j24
-rw-r--r--roles/jails/20_packager/defaults/main.yml22
-rw-r--r--roles/jails/20_packager/tasks/main.yml15
-rw-r--r--roles/jails/20_packager/templates/etc_crontab5
-rw-r--r--roles/jails/20_packager/templates/usr_local_bin_build_packages.sh26
-rw-r--r--roles/jails/20_packager/templates/usr_local_etc_nginx_nginx.conf18
14 files changed, 33 insertions, 125 deletions
diff --git a/roles/jails/01_ingress/defaults/main.yml b/roles/jails/01_ingress/defaults/main.yml
index 6b95ef9..f6d5aa4 100644
--- a/roles/jails/01_ingress/defaults/main.yml
+++ b/roles/jails/01_ingress/defaults/main.yml
@@ -15,7 +15,6 @@ ingress_routes:
- { host: immich.jan.systems, ip: 192.168.3.3, port: 2283 }
- { host: plex.jan.systems, jail: plex, port: 32400, presets: [streaming] }
- { host: komga.jan.systems, jail: komga, port: 25600 }
- - { host: ports.jan.systems, jail: packager }
cert_domains:
- "jan.systems"
diff --git a/roles/jails/03_irc_thelounge/files/config.js b/roles/jails/03_irc_thelounge/files/config.js
index 174a4eb..1a890a1 100644
--- a/roles/jails/03_irc_thelounge/files/config.js
+++ b/roles/jails/03_irc_thelounge/files/config.js
@@ -1,4 +1,3 @@
-# cat ~/.thelounge/config.js
"use strict";
module.exports = {
// ## Server settings
diff --git a/roles/jails/04_taulubot/defaults/main.yml b/roles/jails/04_taulubot/defaults/main.yml
index 5b5cac6..7220635 100644
--- a/roles/jails/04_taulubot/defaults/main.yml
+++ b/roles/jails/04_taulubot/defaults/main.yml
@@ -3,6 +3,10 @@ userland: "14.3-RELEASE"
pkg:
- python311
- py311-pip
+ - py311-setuptools
+ - py311-build
+ - py311-installer
+ - py311-wheel
- git
- jpeg-turbo
diff --git a/roles/jails/06_hommabot/defaults/main.yml b/roles/jails/06_hommabot/defaults/main.yml
index d12d40f..0b4b4f3 100644
--- a/roles/jails/06_hommabot/defaults/main.yml
+++ b/roles/jails/06_hommabot/defaults/main.yml
@@ -1,14 +1,8 @@
userland: "14.3-RELEASE"
pkg:
+ - node
- npm
-files:
- - src: root_hommabot_env.j2
- dest: /root/hommabot/.env
- mode: "0600"
- - src: root_hommabot_deps.sh
- dest: /root/hommabot/deps.sh
- mode: "0755"
- - src: etc_crontab.j2
- dest: /etc/crontab
+services:
+ - hommabot
diff --git a/roles/jails/06_hommabot/handlers/main.yml b/roles/jails/06_hommabot/handlers/main.yml
new file mode 100644
index 0000000..d291200
--- /dev/null
+++ b/roles/jails/06_hommabot/handlers/main.yml
@@ -0,0 +1,5 @@
+- name: Restart hommabot
+ shell: service hommabot status && service hommabot restart
+ register: _hb_restart
+ failed_when: false
+ changed_when: _hb_restart.rc == 0
diff --git a/roles/jails/06_hommabot/tasks/main.yml b/roles/jails/06_hommabot/tasks/main.yml
index 2abdaff..9b1ee5f 100644
--- a/roles/jails/06_hommabot/tasks/main.yml
+++ b/roles/jails/06_hommabot/tasks/main.yml
@@ -1,2 +1,23 @@
- import_role:
name: jail
+ tasks_from: jail_setup
+
+- name: Install hommabot from port
+ shell: cd /usr/local/my-ports/hommabot && make install
+ register: _hommabot_install
+ failed_when: "_hommabot_install.rc != 0 and 'already installed' not in _hommabot_install.stdout"
+ changed_when: "'already installed' not in _hommabot_install.stdout"
+
+- name: Deploy bot token file
+ copy:
+ content: "{{ hommabot_token }}"
+ dest: /usr/local/etc/hommabot.token
+ owner: root
+ group: wheel
+ mode: "0600"
+ no_log: true
+ notify: Restart hommabot
+
+- import_role:
+ name: jail
+ tasks_from: jail_launch
diff --git a/roles/jails/06_hommabot/templates/etc_crontab.j2 b/roles/jails/06_hommabot/templates/etc_crontab.j2
deleted file mode 100644
index 556d12a..0000000
--- a/roles/jails/06_hommabot/templates/etc_crontab.j2
+++ /dev/null
@@ -1,10 +0,0 @@
-# /etc/crontab - root's crontab for FreeBSD
-#
-#
-SHELL=/bin/sh
-PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin
-#
-#minute hour mday month wday who command
-
-# Run hommabot every Monday at 9:00 AM
-0 9 * * 1 root /bin/sh -c "cd /root/hommabot && node index.js"
diff --git a/roles/jails/06_hommabot/templates/root_hommabot_deps.sh b/roles/jails/06_hommabot/templates/root_hommabot_deps.sh
deleted file mode 100644
index 25c0e56..0000000
--- a/roles/jails/06_hommabot/templates/root_hommabot_deps.sh
+++ /dev/null
@@ -1,14 +0,0 @@
-#!/bin/sh
-
-set -eux
-cd /root/hommabot
-npm ci
-
-# We need to build the better-sqlite3.node file before running the app
-if [ ! -f build/better_sqlite3.node ]; then (
- mkdir -p build
- cd node_modules/better-sqlite3
- npm run build-release
- cp build/Release/better_sqlite3.node ../../build/better_sqlite3.node
-)
-fi
diff --git a/roles/jails/06_hommabot/templates/root_hommabot_env.j2 b/roles/jails/06_hommabot/templates/root_hommabot_env.j2
deleted file mode 100644
index c66c666..0000000
--- a/roles/jails/06_hommabot/templates/root_hommabot_env.j2
+++ /dev/null
@@ -1,4 +0,0 @@
-TELEGRAM_BOT_TOKEN="{{ hommabot_telegram_bot_token }}"
-SHEETS_SPREADSHEET_ID="{{ hommabot_sheets_spreadsheet_id }}"
-SHEETS_RANGE="{{ hommabot_sheets_range }}"
-G_SA_JSON_B64="{{ hommabot_g_sa_json_b64 }}"
diff --git a/roles/jails/20_packager/defaults/main.yml b/roles/jails/20_packager/defaults/main.yml
deleted file mode 100644
index e9d0f26..0000000
--- a/roles/jails/20_packager/defaults/main.yml
+++ /dev/null
@@ -1,22 +0,0 @@
-userland: "15.0-RELEASE"
-
-pkg:
- - nginx
-
-nullfs:
- - src: /usr/local/my-ports
- dst: /usr/local/my-ports
- - src: /usr/ports
- dst: /usr/ports
-
-files:
- - src: usr_local_etc_nginx_nginx.conf
- dest: /usr/local/etc/nginx/nginx.conf
- - src: usr_local_bin_build_packages.sh
- dest: /usr/local/bin/build-packages
- mode: "0755"
- - src: etc_crontab
- dest: /etc/crontab
-
-services:
- - nginx
diff --git a/roles/jails/20_packager/tasks/main.yml b/roles/jails/20_packager/tasks/main.yml
deleted file mode 100644
index e1a44e1..0000000
--- a/roles/jails/20_packager/tasks/main.yml
+++ /dev/null
@@ -1,15 +0,0 @@
-- import_role:
- name: jail
- tasks_from: jail_setup
-
-- name: Create packages output directory
- file:
- path: /usr/local/packages
- state: directory
- owner: root
- group: wheel
- mode: "0755"
-
-- import_role:
- name: jail
- tasks_from: jail_launch
diff --git a/roles/jails/20_packager/templates/etc_crontab b/roles/jails/20_packager/templates/etc_crontab
deleted file mode 100644
index ed18a07..0000000
--- a/roles/jails/20_packager/templates/etc_crontab
+++ /dev/null
@@ -1,5 +0,0 @@
-SHELL=/bin/sh
-PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin
-
-# Build packages every hour
-0 * * * * root /usr/local/bin/build-packages >> /var/log/build-packages.log 2>&1
diff --git a/roles/jails/20_packager/templates/usr_local_bin_build_packages.sh b/roles/jails/20_packager/templates/usr_local_bin_build_packages.sh
deleted file mode 100644
index b4d5ea6..0000000
--- a/roles/jails/20_packager/templates/usr_local_bin_build_packages.sh
+++ /dev/null
@@ -1,26 +0,0 @@
-#!/bin/sh
-# Build all ports in /usr/local/my-ports, skip already-built packages.
-set -eu
-
-PORTS_DIR="/usr/local/my-ports"
-PKG_DIR="/usr/local/packages"
-
-for port_dir in "${PORTS_DIR}"/*/; do
- [ -f "${port_dir}/Makefile" ] || continue
-
- port_name=$(make -C "${port_dir}" -V PKGNAME)
- pkg_file="${PKG_DIR}/All/${port_name}.pkg"
-
- if [ -f "${pkg_file}" ]; then
- echo "SKIP ${port_name} (already built)"
- continue
- fi
-
- echo "BUILD ${port_name}"
- make -C "${port_dir}" clean package PACKAGES="${PKG_DIR}" BATCH=yes
- make -C "${port_dir}" clean
-done
-
-# Rebuild the repository catalog
-pkg repo "${PKG_DIR}"
-echo "Done."
diff --git a/roles/jails/20_packager/templates/usr_local_etc_nginx_nginx.conf b/roles/jails/20_packager/templates/usr_local_etc_nginx_nginx.conf
deleted file mode 100644
index 0d140ef..0000000
--- a/roles/jails/20_packager/templates/usr_local_etc_nginx_nginx.conf
+++ /dev/null
@@ -1,18 +0,0 @@
-worker_processes 1;
-
-events {
- worker_connections 1024;
-}
-
-http {
- include mime.types;
- default_type application/octet-stream;
- sendfile on;
-
- server {
- listen 80;
- server_name _;
- root /usr/local/packages;
- autoindex on;
- }
-}