2025-02-14 20:47:50 +09:00
|
|
|
#!/bin/env bash
|
|
|
|
# Upstream doc: https://miniflux.app/docs/debian.html
|
|
|
|
set -euxo pipefail
|
|
|
|
|
|
|
|
IMAGE="ubuntu/24.04"
|
|
|
|
DIST="${IMAGE%%/*}"
|
|
|
|
VER="${IMAGE#*/}"
|
|
|
|
VER="${VER%/*}"
|
|
|
|
VER="${VER//./-}"
|
|
|
|
UPSTREAM_VER="2.2.5"
|
|
|
|
UPSTREAM_VER_DASH="${UPSTREAM_VER//[.+]/-}"
|
|
|
|
UPSTREAM_NAME="miniflux"
|
|
|
|
SERIAL="1benoitjpnet"
|
|
|
|
CNAME="$UPSTREAM_NAME-$UPSTREAM_VER_DASH-$SERIAL-$DIST-$VER"
|
|
|
|
ALIAS="$UPSTREAM_NAME-$UPSTREAM_VER-$SERIAL"
|
|
|
|
|
|
|
|
cd "$WORKSPACE"
|
|
|
|
incus launch images:$IMAGE "$CNAME" --quiet
|
|
|
|
|
|
|
|
wait_network "$CNAME"
|
|
|
|
|
|
|
|
incus exec "$CNAME" -- bash -c 'echo "deb [trusted=yes] https://repo.miniflux.app/apt/ * *" > /etc/apt/sources.list.d/miniflux.list'
|
|
|
|
incus exec "$CNAME" -- apt update
|
|
|
|
incus exec "$CNAME" -- apt upgrade -y
|
|
|
|
incus exec "$CNAME" -- apt install -y --no-install-recommends \
|
|
|
|
miniflux=${UPSTREAM_VER} \
|
|
|
|
postgresql
|
|
|
|
|
|
|
|
set +x
|
|
|
|
PG_PASS=$(openssl rand -hex 32)
|
|
|
|
incus file push <(sed "s/SED_PG_PASS/$PG_PASS/" "$WORKSPACE"/miniflux.conf) \
|
|
|
|
"$CNAME"/etc/miniflux.conf
|
|
|
|
set -x
|
2025-02-14 20:50:29 +09:00
|
|
|
incus exec "$CNAME" -- bash -c "sudo -u postgres psql -c \"CREATE USER miniflux WITH PASSWORD '${PG_PASS}';\""
|
2025-02-14 20:47:50 +09:00
|
|
|
incus exec "$CNAME" -- bash -c 'sudo -u postgres psql -c "CREATE DATABASE miniflux OWNER miniflux;"'
|
|
|
|
|
|
|
|
incus exec "$CNAME" -- systemctl enable miniflux
|
|
|
|
|
|
|
|
laminarc run incus_publish \
|
|
|
|
CNAME="$CNAME" \
|
|
|
|
UPSTREAM_NAME=$UPSTREAM_NAME \
|
|
|
|
UPSTREAM_VER=$UPSTREAM_VER \
|
|
|
|
IMAGE=$IMAGE \
|
|
|
|
SERIAL=$SERIAL \
|
|
|
|
ALIAS=$ALIAS
|