16 Commits

Author SHA1 Message Date
me 44a573f6e0 provision tests, ensure the no is interpreted as a string, not a boolean. 2026-08-05 16:05:30 -07:00
me ba379b253e provision tests, add parameter to keep the containers running after the test is done. 2026-08-05 16:00:44 -07:00
me 55c7287b3d provision tests, allow containers to complete once the script has been run. 2026-08-05 14:18:17 -07:00
me b6aeb47fa4 provision tests, fix variable name. 2026-08-05 06:26:03 -07:00
me d0c791f477 provisioning, add script to easily check the results. 2026-08-04 17:59:04 -07:00
me 481a0b9744 provisioning, main.sh, variablize the local repo name. 2026-08-04 17:46:20 -07:00
me a6a8f4c97a Add ca-certificates to Prosody config which allows it to validate s2s certs. 2026-07-24 05:32:29 -07:00
me 2302897460 Ignore etc files for Prosody as well. 2026-07-24 05:15:36 -07:00
me a08c59bcb2 Remove module example as it was already in the enabled list by default. 2026-07-24 05:07:55 -07:00
me 5850a237ce Add an extra port to Prosody to see if it helps with certificate validation. 2026-07-24 05:06:30 -07:00
me 5b8deb8a67 Add community modules for Prosody and give an example of enabling notifications. 2026-07-23 14:50:42 -07:00
me b5ae8ff0ce Change example of where the prosody certs should be referenced. 2026-07-23 13:32:33 -07:00
me 0ccef4583a Ensure the cert archive exists so the symbolic links can be followed. 2026-07-13 15:55:51 -07:00
me 7b3b7623be Do not do the reload, confuses the system. 2026-07-13 15:55:08 -07:00
me 64415239ca One step closer to getting the Prosody server live. Create the bind dir and ensure certs are imported as root. Still not actually getting the certs, but having way less errors. 2026-07-13 15:03:30 -07:00
me a770eb00ef Also ignore lowercase hugo sites. 2026-07-13 15:02:32 -07:00
9 changed files with 76 additions and 16 deletions
+3
View File
@@ -48,6 +48,8 @@ STAGE-*
# Ignore copies of the Hugo configuration, such as "Config/Hugo-MyWebsite". # Ignore copies of the Hugo configuration, such as "Config/Hugo-MyWebsite".
Hugo-* Hugo-*
*-Hugo *-Hugo
hugo-*
*-hugo
# Ignore Prod and Dev copies as well. # Ignore Prod and Dev copies as well.
*-Prod *-Prod
@@ -66,4 +68,5 @@ DEV-*
# Ignore custom Prosody hosts. # Ignore custom Prosody hosts.
Config/Prosody/conf.avail Config/Prosody/conf.avail
Config/Prosody/etc/conf.avail Config/Prosody/etc/conf.avail
Config/Prosody/etc/
+2 -4
View File
@@ -8,7 +8,7 @@ FROM debian:trixie-slim
## Setup ## ## Setup ##
# System Dependencies # System Dependencies
RUN apt-get update && \ RUN apt-get update && \
apt-get install -y prosody \ apt-get install -y prosody prosody-modules ca-certificates \
bash sudo htop \ bash sudo htop \
vim vim
@@ -21,11 +21,9 @@ COPY ./etc/conf.avail/* /etc/prosody/conf.d/
RUN rm -rfv /etc/prosody/README* RUN rm -rfv /etc/prosody/README*
## Main ## ## Main ##
# Install + Run Website
WORKDIR /root WORKDIR /root
USER root USER root
CMD prosodyctl cert import /etc/letsencrypt/live && \ CMD prosodyctl --root cert import /etc/letsencrypt/live && \
service prosody start && \ service prosody start && \
prosodyctl reload && \
tail -F /var/log/prosody/prosody.log & \ tail -F /var/log/prosody/prosody.log & \
tail -F /var/log/prosody/prosody.err tail -F /var/log/prosody/prosody.err
@@ -14,6 +14,12 @@ volumes:
type: none type: none
device: ../../Volumes/ReverseProxy/letsencrypt/live device: ../../Volumes/ReverseProxy/letsencrypt/live
o: bind o: bind
prosody_cert_archive:
driver: local
driver_opts:
type: none
device: ../../Volumes/ReverseProxy/letsencrypt/archive
o: bind
services: services:
app: app:
@@ -25,6 +31,7 @@ services:
ports: ports:
- 5222:5222 - 5222:5222
- 5269:5269 - 5269:5269
- 5281:5281
#environment: #environment:
# - REPO=$REPO # - REPO=$REPO
# - BRANCH=$BRANCH # - BRANCH=$BRANCH
@@ -39,6 +46,7 @@ services:
volumes: volumes:
- prosody_data:/var/lib/prosody/ - prosody_data:/var/lib/prosody/
- prosody_certs:/etc/letsencrypt/live - prosody_certs:/etc/letsencrypt/live
- prosody_cert_archive:/etc/letsencrypt/archive
deploy: deploy:
mode: global mode: global
resources: resources:
@@ -8,8 +8,8 @@ VirtualHost "example.com"
-- Note that old-style SSL on port 5223 only supports one certificate, and will always -- Note that old-style SSL on port 5223 only supports one certificate, and will always
-- use the global one. -- use the global one.
--ssl = { --ssl = {
-- key = "/etc/letsencrypt/live/example.com/privkey.pem"; -- key = "/etc/prosody/certs/example.com.key";
-- certificate = "/etc/letsencrypt/live/example.com/fullchain.pem"; -- certificate = "/etc/prosody/certs/example.com.crt";
-- } -- }
------ Components ------ ------ Components ------
+17
View File
@@ -0,0 +1,17 @@
#!/usr/bin/env bash
# 2026-07-13 Hyperling
# Create the necessary folders for volumes to work.
# This must be run before the container will start properly.
## Setup ##
DIR="$(dirname -- "${BASH_SOURCE[0]}")"
source $DIR/.env
## Main ##
# Create folders.
mkdir -pv ../../Volumes/Prosody/data
# Finish successfully.
exit 0
+7 -3
View File
@@ -1,16 +1,20 @@
#!/usr/bin/env bash #!/usr/bin/env bash
sh -c "rm -rfv prov-test" local_clone="git-repo"
sh -c "rm -rfv $local_clone"
echo "Downloading Repo '$REPO' : Branch '$BRANCH'" echo "Downloading Repo '$REPO' : Branch '$BRANCH'"
git clone $REPO --branch=$BRANCH prov-test git clone $REPO --branch=$BRANCH $local_clone
cd prov-test cd $local_clone
echo "Starting Executable Script '$EXEC'" echo "Starting Executable Script '$EXEC'"
if [[ "$KEEP_ALIVE" == "Y" ]]; then
tail -F /var/mail/mail & tail -F /var/mail/mail &
tail -F /var/mail/ansible & tail -F /var/mail/ansible &
fi
logfile="/root/test.log" logfile="/root/test.log"
$EXEC > $logfile & $EXEC > $logfile &
+24
View File
@@ -0,0 +1,24 @@
#!/usr/bin/env bash
# 20260804 - Hyperling
DIR="$(dirname -- "${BASH_SOURCE[0]}")"
source $DIR/.env
## Parameters ##
num_lines="$1"
if [[ -z "$num_lines" ]]; then
num_lines=20
fi
## Setup ##
source $DIR/.env
## Main ##
ls $PT_STORAGE_DIR/*/test.log | while read test_log; do
echo -e "\n*** $test_log ***\n"
tail -n $num_lines $test_log
echo -e "\n\n"
done
@@ -20,13 +20,14 @@ services:
args: args:
PACKAGES: ${PACKAGES} PACKAGES: ${PACKAGES}
EXTRA_ARCH: ${EXTRA_ARCH} EXTRA_ARCH: ${EXTRA_ARCH}
restart: no restart: "no"
environment: environment:
- PACKAGES=$PACKAGES - PACKAGES=$PACKAGES
- EXTRA_ARCH=$EXTRA_ARCH - EXTRA_ARCH=$EXTRA_ARCH
- REPO=$REPO - REPO=$REPO
- BRANCH=$BRANCH - BRANCH=$BRANCH
- EXEC=$EXEC - EXEC=$EXEC
- KEEP_ALIVE=$KEEP_ALIVE
volumes: volumes:
- type: volume - type: volume
source: pt-storage source: pt-storage
@@ -49,13 +50,14 @@ services:
args: args:
PACKAGES: ${PACKAGES} PACKAGES: ${PACKAGES}
EXTRA_DEBIAN: ${EXTRA_DEBIAN} EXTRA_DEBIAN: ${EXTRA_DEBIAN}
restart: no restart: "no"
environment: environment:
- PACKAGES=$PACKAGES - PACKAGES=$PACKAGES
- EXTRA_DEBIAN=$EXTRA_DEBIAN - EXTRA_DEBIAN=$EXTRA_DEBIAN
- REPO=$REPO - REPO=$REPO
- BRANCH=$BRANCH - BRANCH=$BRANCH
- EXEC=$EXEC - EXEC=$EXEC
- KEEP_ALIVE=$KEEP_ALIVE
volumes: volumes:
- type: volume - type: volume
source: pt-storage source: pt-storage
@@ -78,13 +80,14 @@ services:
args: args:
PACKAGES: ${PACKAGES} PACKAGES: ${PACKAGES}
EXTRA_FEDORA: ${EXTRA_FEDORA} EXTRA_FEDORA: ${EXTRA_FEDORA}
restart: no restart: "no"
environment: environment:
- PACKAGES=$PACKAGES - PACKAGES=$PACKAGES
- EXTRA_FEDORA=$EXTRA_FEDORA - EXTRA_FEDORA=$EXTRA_FEDORA
- REPO=$REPO - REPO=$REPO
- BRANCH=$BRANCH - BRANCH=$BRANCH
- EXEC=$EXEC - EXEC=$EXEC
- KEEP_ALIVE=$KEEP_ALIVE
volumes: volumes:
- type: volume - type: volume
source: pt-storage source: pt-storage
@@ -107,13 +110,14 @@ services:
args: args:
PACKAGES: ${PACKAGES} PACKAGES: ${PACKAGES}
EXTRA_OPENSUSE: ${EXTRA_OPENSUSE} EXTRA_OPENSUSE: ${EXTRA_OPENSUSE}
restart: no restart: "no"
environment: environment:
- PACKAGES=$PACKAGES - PACKAGES=$PACKAGES
- EXTRA_OPENSUSE=$EXTRA_OPENSUSE - EXTRA_OPENSUSE=$EXTRA_OPENSUSE
- REPO=$REPO - REPO=$REPO
- BRANCH=$BRANCH - BRANCH=$BRANCH
- EXEC=$EXEC - EXEC=$EXEC
- KEEP_ALIVE=$KEEP_ALIVE
volumes: volumes:
- type: volume - type: volume
source: pt-storage source: pt-storage
@@ -136,13 +140,14 @@ services:
args: args:
PACKAGES: ${PACKAGES} PACKAGES: ${PACKAGES}
EXTRA_UBUNTU: ${EXTRA_UBUNTU} EXTRA_UBUNTU: ${EXTRA_UBUNTU}
restart: no restart: "no"
environment: environment:
- PACKAGES=$PACKAGES - PACKAGES=$PACKAGES
- EXTRA_UBUNTU=$EXTRA_UBUNTU - EXTRA_UBUNTU=$EXTRA_UBUNTU
- REPO=$REPO - REPO=$REPO
- BRANCH=$BRANCH - BRANCH=$BRANCH
- EXEC=$EXEC - EXEC=$EXEC
- KEEP_ALIVE=$KEEP_ALIVE
volumes: volumes:
- type: volume - type: volume
source: pt-storage source: pt-storage
+1
View File
@@ -21,3 +21,4 @@ EXTRA_UBUNTU=""
REPO=https://git.hyperling.com/me/env-ansible REPO=https://git.hyperling.com/me/env-ansible
BRANCH=stage BRANCH=stage
EXEC="./setup.sh -l -g -s" EXEC="./setup.sh -l -g -s"
#KEEP_ALIVE=Y