Et sted å vedlikeholde, drifte og dokumentere systemene vi leverer eller bruker.
  • HCL 57.1%
  • Java 25.5%
  • Jinja 10%
  • Shell 7.4%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-08-07 19:24:12 +00:00
.forgejo/workflows Add lint script to make it easier to run 2026-01-16 11:47:09 +01:00
auth Remove todo 2026-08-07 20:01:18 +02:00
bin Fix script mistake 2026-08-04 21:24:31 +02:00
common Add build and deploy of spi-auth.jar 2026-08-05 21:02:13 +02: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/all Setup forge server 2026-08-05 18:36:16 +02:00
kode Setup forge dockerhub secrets 2026-08-05 21:30:52 +02:00
loomio Update groups 2026-07-30 20:09:32 +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 Add tfstate.backup.files to gitignore 2026-08-05 19:52:08 +02:00
.python-version Setup python with uv init 2025-12-17 12:29:02 +01:00
.sops.yaml Setup forge dockerhub secrets 2026-08-05 21:30:52 +02:00
ansible.cfg Refactor playbook into role for python setup 2026-06-24 19:21:29 +02:00
inventory.yaml Setup forge server 2026-08-05 18:36:16 +02:00
pyproject.toml Add ansible lint 2026-01-03 16:35:37 +01: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 Add ansible lint 2026-01-03 16:35:37 +01: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.