Ansible-playbook för att driftsätta den svenska 50ohm-sajten

Playbooken är en anpassning av DARC e.V:s 50ohm-ansible (se LICENSE) för den svenska versionen av 50ohm.de (Instegscertifikat och HAREC). Den är inte kopplad till DARC, SSA eller PTS.

  • Installerar kodrepot (generatorn) och innehållsrepot
  • Initierar Python-byggmiljön (uv)
  • Bygger webbplatsen första gången
  • Konfigurerar Certbot (Let's Encrypt) och Nginx
  • Installerar en systemd-timer som var 15:e minut hämtar nya ändringar och bygger om sajten

Förutsättningar

  • En server med Debian 12 (endast detta är testat) och SSH-åtkomst som root eller en användare med sudo.
  • DNS-poster (A/AAAA) för domänen och www.-varianten som pekar på servern.
  • Ansible på din egen dator, samt rollerna: ansible-galaxy install -r requirements.yml.

Konfiguration (görs innan första körningen)

  1. vars.yml: sätt site_domain, site_admin_email, fiftyohm_repo och fiftyohm_contents_dl_repo (dina egna repon/forkar; grenen är som standard sv). site.yml avbryter om platshållarna är kvar.
  2. inventory.yml: byt example.se mot din server.
  3. users.yml: lägg till de administratörer som ska få SSH-nyckel och sudo. Listan är tom som standard. Obs: användare i gruppen sudo får lösenordsfri sudo.

Körning

$ ansible-playbook -i inventory.yml site.yml

Delmoment kan köras med taggarna base, build, webserver och timer.

Att göra

  • Byta till Docker
  • Använda webhooks i stället för timer
  • Egen domän-redirect/URL-förkortare behövs inte längre; det tyska förkortarsystemet (/mw, /rzp, …) har tagits bort tillsammans med länkarna i innehållet.
S
Description
No description provided
Readme AGPL-3.0
86 KiB
Languages
Jinja 75.5%
Shell 24.5%