diff options
| author | Jan Tuomi <jan@jantuomi.fi> | 2026-07-12 20:58:57 +0300 |
|---|---|---|
| committer | Jan Tuomi <jan@jantuomi.fi> | 2026-07-12 20:58:57 +0300 |
| commit | e9f180939070e36a3472def2f582ac40c628af86 (patch) | |
| tree | 2775b203826a996de5ddfb833ac3bb066d9fa7d5 | |
| parent | 56f6dcf6d4443e6b22eede461ea5c5d07f3a30a4 (diff) | |
Set up leolalla_fi jail, improve volume migration handling
5 files changed, 53 insertions, 1 deletions
diff --git a/roles/jail/tasks/jail_setup.yml b/roles/jail/tasks/jail_setup.yml index 0b1abad..86e28c2 100644 --- a/roles/jail/tasks/jail_setup.yml +++ b/roles/jail/tasks/jail_setup.yml @@ -26,7 +26,7 @@ This will: 1. Stop the jail - 2. Move existing data to {{ result.item.mountpoint }}.migrate + 2. Move existing data to .migrate 3. Create ZFS volumes 4. Copy data into the volumes ════════════════════════════════════════════════════════════════ diff --git a/roles/jails/19_leolalla_fi/defaults/main.yml b/roles/jails/19_leolalla_fi/defaults/main.yml index 5416267..463fde8 100644 --- a/roles/jails/19_leolalla_fi/defaults/main.yml +++ b/roles/jails/19_leolalla_fi/defaults/main.yml @@ -1 +1,14 @@ userland: "15.0-RELEASE" + +zfs: + - name: zroot/jails/volumes/leolalla_fi_data + mountpoint: /var/db/gdrive-photo-gallery + +pkg: + - py312-sqlite3 + - py312-uv + - py312-pillow + - python + +services: + - gdrive_photo_gallery diff --git a/roles/jails/19_leolalla_fi/tasks/main.yml b/roles/jails/19_leolalla_fi/tasks/main.yml index 2abdaff..413f930 100644 --- a/roles/jails/19_leolalla_fi/tasks/main.yml +++ b/roles/jails/19_leolalla_fi/tasks/main.yml @@ -1,2 +1,30 @@ - import_role: name: jail + tasks_from: jail_setup + +- name: Install gdrive-photo-gallery from port + shell: cd /usr/ports/www/gdrive-photo-gallery && make install BATCH=yes WRKDIRPREFIX=/tmp/ports DISTDIR=/tmp/distfiles + register: _gallery_install + failed_when: "_gallery_install.rc != 0 and 'already installed' not in _gallery_install.stdout" + changed_when: "'already installed' not in _gallery_install.stdout" + +- name: Deploy environment file + template: + src: "{{ jail_role_dir }}/templates/gdrive_photo_gallery.env.j2" + dest: /usr/local/etc/gdrive-photo-gallery.env + owner: root + group: wheel + mode: "0600" + no_log: true + +- name: Deploy wrapper script + template: + src: "{{ jail_role_dir }}/templates/usr_local_bin_gdrive_photo_gallery" + dest: /usr/local/bin/gdrive-photo-gallery + owner: root + group: wheel + mode: "0755" + +- import_role: + name: jail + tasks_from: jail_launch diff --git a/roles/jails/19_leolalla_fi/templates/gdrive_photo_gallery.env.j2 b/roles/jails/19_leolalla_fi/templates/gdrive_photo_gallery.env.j2 new file mode 100644 index 0000000..c579e77 --- /dev/null +++ b/roles/jails/19_leolalla_fi/templates/gdrive_photo_gallery.env.j2 @@ -0,0 +1,5 @@ +GDRIVE_FOLDER="{{ leolalla_fi.gdrive_folder }}" +GAPI_KEY="{{ leolalla_fi.gapi_key }}" +AUTHOR="{{ leolalla_fi.author }}" +IG_LINK="{{ leolalla_fi.ig_link }}" +BASE_URL="{{ leolalla_fi.base_url }}" diff --git a/roles/jails/19_leolalla_fi/templates/usr_local_bin_gdrive_photo_gallery b/roles/jails/19_leolalla_fi/templates/usr_local_bin_gdrive_photo_gallery new file mode 100644 index 0000000..92b911c --- /dev/null +++ b/roles/jails/19_leolalla_fi/templates/usr_local_bin_gdrive_photo_gallery @@ -0,0 +1,6 @@ +#!/bin/sh +set -e +. /usr/local/etc/gdrive-photo-gallery.env +export GDRIVE_FOLDER GAPI_KEY AUTHOR IG_LINK BASE_URL +cd /usr/local/gdrive-photo-gallery +exec /usr/local/bin/uv run gunicorn --bind 0.0.0.0:80 app:app -w 1 |
