Et sted å vedlikeholde, drifte og dokumentere systemene vi leverer eller bruker.
  • CSS 22.5%
  • HCL 21.5%
  • HTML 19.1%
  • Python 13.7%
  • Jinja 10.5%
  • Other 12.7%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-09-09 16:03:20 +00:00
.forgejo/workflows Add lint script to make it easier to run 2026-01-16 11:47:09 +01:00
auth Merge pull request 'Setup Loomio auth integration with Keycloak' (#73) from configure-loomio-client into main 2026-09-09 15:25:12 +00:00
bin Fix formatting from directories that are not the root 2026-08-28 21:08:09 +02:00
common/roles Merge pull request 'Setup backups for auth server' (#42) from setup-auth-backups into main 2026-09-09 15:14:06 +00:00
forgejo Move files around 2026-06-17 19:34:19 +02:00
gigahost Move ssh playbook to gigahost 2026-06-30 06:52:33 +02:00
group_vars make changes from PR 2026-09-05 15:04:52 +02:00
kode Add backup config for kode 2026-09-09 18:01:46 +02:00
loomio Remove preflight controller 2026-08-21 13:55:40 +02:00
nettside Improved readme. Re-added some docker ignores 2026-09-09 15:41:00 +02:00
scaleway Add note about scaleway 2026-07-10 12:24:22 +02:00
.editorconfig Move files around 2026-06-17 19:34:19 +02:00
.gitattributes Move files around 2026-06-17 19:34:19 +02:00
.gitignore Improved gitignore, settings and improved deployment to restart the docker container 2026-09-04 12:49:26 +02:00
.python-version Setup python with uv init 2025-12-17 12:29:02 +01:00
.sops.yaml Setup secrets for dockerhub 2026-08-28 10:40:18 +02:00
ansible.cfg Refactor playbook into role for python setup 2026-06-24 19:21:29 +02:00
inventory.yaml make changes from PR 2026-09-05 15:04:52 +02:00
pyproject.toml Upgrade python dependencies 2026-08-28 13:20:05 +02:00
README.md Update readme 2025-12-28 08:24:08 +01:00
requirements.yaml Add community general collection 2026-06-24 19:06:58 +02:00
uv.lock Upgrade python dependencies 2026-08-28 13:20:05 +02:00

Systemer

Et sted å samarbeide om testing og levering av Discourse og Loomio til medlemmene våre på sikt.

Oppsett

uv brukes til å håndtere Python og pakker slik at alle har samme versjoner. I tillegg bruker vi ansible-galaxy med requirements.txt for Ansible-pakker.

Se installasjonsguiden.

sops, som står for Secret OPerations, brukes til kryptering av hemmeligheter som er committed til dette repoet. Installasjon av sops ~3.11:

  • macOS: brew install sops

age er et verktøy vi bruker til å kryptere hemmelighetene. Det funker sammen med sops. Installasjon av age ~1.2.1:

  • macOS: brew install age

Om du ikke har brukt age før, må du:

  1. Lage en nøkkel: mkdir ~/.sops && age-keygen -o ~/.sops/key.txt # TODO endre rettighetene til filen?
  2. Konfigurere standardnøkkelen din i shell-profilen: export SOPS_AGE_KEY_FILE="$HOME/.sops/key.txt"

Med uv, sops og age på plass kan du kjøre:

  1. uv sync
  2. uv run ansible-galaxy install -r requirements.yaml

Tilgang

For å få tilgang til hemmeligheter må du dele den offentlige age nøkkelen:

  1. Kjør: grep "public key:" ~/.sops/key.txt for å finne din offentlige nøkkel.
  2. Del nøkkelen med noen som har tilgang.
  3. De må legge nøkkelen inn i .sops.yaml.
  4. Deretter kan de kjøre: sops updatekeys prod.env.
  5. Opprett en PR til dette repoet.

For tilgang til selve VPS-en må du:

  1. Dele din offentlige SSH-nøkkel.
  2. Få noen med tilgang til å legge den til i ssh.yaml.
  3. De må opprette en PR til dette repoet.
  4. Kjøre ansible-playbook -i inventory.yaml ssh.yaml når PR-en er merget.
  5. Da kan du teste tilgang med: uv run ansible prod -m ping -i inventory.yaml.