Commit Graph
34 Commits
Author SHA1 Message Date
Damien d10efadaba fix(ferretdb): create the Mongo user via DocumentDB to fix SCRAM salt length
A plain CREATE ROLE ... PASSWORD stores PostgreSQL's native 16-byte SCRAM salt.
DocumentDB has no check_password_hook, so that salt is served verbatim to Mongo
clients, which reject it at SASL step2 with 'invalid salt length of 16'.

Provision the user through documentdb_api.create_user / update_user instead:
DocumentDB builds the SCRAM-SHA-256 verifier with documentdb.scramDefaultSaltLen
(28 bytes) via its own scram_build_secret. create_user only accepts a read-only
role or the clusterAdmin + readWriteAnyDatabase pair, so use the latter for R/W.

- CREATE EXTENSION documentdb now runs before user provisioning so the API
  functions exist.
- Spec built with jq (password JSON-escaped) and passed in a $DDB$ dollar-quoted
  SQL literal; idempotent via update_user when the role already exists.
- Set password_encryption = 'scram-sha-256' explicitly in postgresql.conf.
2026-05-29 11:18:28 +02:00
Damien f13af26a62 fix(ferretdb): force C.UTF-8 locale to silence apt/perl locale warnings
A fresh Debian template has not generated the Proxmox host locale that pct exec
forwards (e.g. fr_FR.UTF-8), so apt, perl and apt-listchanges warn on every run.
Export LC_ALL=C.UTF-8 / LANG=C.UTF-8 globally and forward them through pct exec
(base tooling, the piped installer, and the host-side upgrade).
2026-05-29 11:01:07 +02:00
Damien 5caf885d83 fix(ferretdb): pin template to debian-12 and fail fast on bad SCRIPT_URL
- detect_latest_debian_template now selects the newest debian-12 template only.
  Auto-detecting the newest Debian overall picked debian-13, which would pair the
  deb12-only DocumentDB extension with a mismatched libicu. Trixie now requires
  setting TEMPLATE + DOCUMENTDB_DISTRO explicitly.
- Add preflight_script_url: verify SCRIPT_URL is reachable on the host before
  creating the LXC, so a branch/path that 404s fails immediately with guidance
  instead of dying mid-install after the container is built.
2026-05-29 10:56:51 +02:00
Damien e120d179e3 Update README with FerretDB installation script and requirements
Add FerretDB script to available scripts table
Update requirements to include FerretDB
2026-05-29 09:26:15 +02:00
Damien 805ae73f7e docs(readme): list openbao in the root README
OpenBao has a working installer and its own README, but the root README
never linked it. Add a row to Available Scripts (grouped with the other
Proxmox installer, gitea-runner) and extend the Proxmox VE Requirements
line so both LXC scripts are mentioned consistently.
2026-05-27 11:02:31 +02:00
Damien 3a7abbc1a0 chore(gitea-runner): fix tty1 autologin on Alpine LXC
Port the working autologin block from openbao/install.sh so both Proxmox
installers behave identically. The previous version assumed agetty was
already installed and relied on a sed pattern that no-ops on fresh Alpine
images; it also never told PID 1 to re-read /etc/inittab, so the change
required a reboot.

- Install agetty (with util-linux fallback) via apk.
- Drop any existing tty1 line and append the autologin line (robust
  against inittab layout drift across Alpine releases).
- SIGHUP PID 1 and kill any stale getty so init respawns the new line
  immediately — no reboot needed, no first-login "type exit once" wart.
2026-05-27 11:01:41 +02:00
Damien 1df3da81d7 Remove seedbox infrastructure 2026-05-26 18:57:07 +02:00
Damien a03af83126 Force tty1 respawn after autologin change 2026-05-26 17:52:54 +02:00
Damien bc1ad49210 Install script adds agetty for console autologin 2026-05-26 17:48:34 +02:00
Damien a6a3b421c5 Add cleanup for temporary directory
Previously the temporary directory was removed via the RETURN trap
but this could be bypassed if the script exited early. Now we
explicitly clean up the directory in all exit paths.
2026-05-26 17:42:24 +02:00
Damien c7f44aa293 Update install script for OpenBao release asset changes
OpenBao now uses raw architecture names (x86_64, aarch64) instead of
Go-style (amd64, arm64) and publishes .tar.gz archives instead of .zip
files. This commit updates the install script to match the new naming
convention and archive format.
2026-05-26 17:38:38 +02:00
Damien 34e0ce087d Update install script to use configurable GitHub releases URL 2026-05-26 17:25:25 +02:00
Damien 10f9a16782 Allow overriding SCRIPT_URL and VERSION_FILE 2026-05-26 17:20:47 +02:00
Damien c52a5b7fea Redirect logging functions to stderr 2026-05-26 17:04:35 +02:00
Damien 274e728aeb Update OpenBao README and add MOTD configuration
```
Update environment variable table formatting for readability

Fix data directory path formatting in README

Add MOTD with OpenBao status and access information
```
2026-05-26 17:02:37 +02:00
Damien 03d7b13f89 Update install script URL to main branch 2026-05-26 15:36:14 +02:00
Damien e8920b246b Enable console auto-login on Proxmox LXCs
Enable root auto-login on tty1 for faster shell access in Proxmox LXCs
by
configuring agetty with autologin and adding the necessary inittab entry
2026-05-26 15:28:07 +02:00
Damien ec77eda69e Format README table for better readability 2026-05-26 15:26:37 +02:00
Damien 636a637e81 Add key features to README 2026-05-26 15:26:02 +02:00
Damien 530e7dce2a Add Tailscale reverse proxy support to OpenBao LXC 2026-05-26 15:25:39 +02:00
Damien 7899d8fd93 Add OpenBao LXC installation and update scripts 2026-05-26 15:16:38 +02:00
Damien 9f6e583135 Update proxy server installation script
Switch to Let's Encrypt HTTP challenge
Add Tailscale exit node support
Add Fail2ban protection for Traefik
Improve idempotency and error handling
2026-05-13 16:37:15 +02:00
Damien 7c3cab2b5a Update proxy installer to use Traefik v3 with Fail2ban and Infomaniak
DNS
2026-05-13 10:39:44 +02:00
Damien f2b8d758b8 Add .DS_Store to gitignore 2026-05-12 15:17:34 +02:00
Damien 47e3275e6b Remove unused Gitea dashboard 2026-05-12 15:17:24 +02:00
Damien ac92b3a6c3 Remove deprecated seedbox deployment workflow 2026-05-12 09:24:14 +02:00
Damien f9c79ded96 Update Gitea runner download URL to use gitea-runner 2026-05-12 09:02:38 +02:00
Damien defe8c7ade feat(gitea-runner): add Prometheus metrics, logrotate and LXC tags 2026-05-11 20:08:02 +02:00
Damien bd38cb4f82 Install and configure Tailscale during runner setup
- Add Tailscale installation and service start in install.sh
- Update service dependencies to include tailscale
- Add instructions to connect via Tailscale after installation
2026-05-04 15:05:05 +02:00
Damien 2bbbb5f04d Configure LXC for Docker and Tailscale
Add unconfined AppArmor profile to allow Docker and required TUN/TAP
device access for Tailscale in LXC container.
2026-05-04 14:56:11 +02:00
Damien 526063b31b Enable console auto-login for root
This sets up automatic login on the console by modifying the agetty
options in /etc/conf.d/agetty and updating the inittab configuration
accordingly.
2026-05-04 14:51:03 +02:00
Damien b36e729e08 Enable TUN/TAP device for Tailscale in LXC container
Add necessary LXC configuration entries to allow TUN/TAP device access
2026-05-04 14:39:07 +02:00
Damien 49d6920f44 Use ip command to get container IP and suppress Docker service output
The script now uses the ip command instead of hostname -i to reliably
obtain the container's IPv4 address. Service command output is also
redirected to /dev/null to reduce noise in the logs.
2026-05-04 14:25:59 +02:00
Damien ebc5547838 Add gitea-runner installation script and update READMEs
- Added new gitea-runner/install.sh script for deploying a Gitea Act
  Runner on Alpine LXC in Proxmox
- Updated main README with new script entry and adjusted formatting
- Added multi-OS support note to requirements
- Improved formatting in code examples with proper command separation
- Translated and enhanced gitea-runner/README.md with consistent
  terminology
2026-05-04 14:14:57 +02:00