No description
Find a file
Roelof 0bff0aee6c
All checks were successful
Build and publish NuGet package / build-and-publish (push) Successful in 4s
Gebruik ci-dotnet-node-docker
2026-06-10 11:05:39 +02:00
.forgejo/workflows Gebruik ci-dotnet-node-docker 2026-06-10 11:05:39 +02:00
LibreSettings Target .NET 10 and fix solution test wiring 2026-06-09 16:27:06 +02:00
TestSettings Target .NET 10 and fix solution test wiring 2026-06-09 16:27:06 +02:00
.gitignore Release naar artifacts 2026-06-09 15:35:00 +02:00
CLAUDE.md Release naar artifacts 2026-06-09 15:35:00 +02:00
LibreSettings.sln Target .NET 10 and fix solution test wiring 2026-06-09 16:27:06 +02:00
README.md Release naar artifacts 2026-06-09 15:35:00 +02:00

Introductie

Libre settings manager.

Lees configuratiesettings uit appsettings.json. Een waarde die tussen accolades staat ({...}) is geen letterlijke waarde maar de naam van een secret; die wordt opgehaald uit een omgevingsvariabele. Zo komen wachtwoorden en API-keys niet in de broncode of in appsettings.json terecht.

Standaard setting

  "ParseHubSettings": {
    "ApiUrl": "apiurl"
  }

GetSetting("ParseHubSettings", "ApiUrl") geeft "apiurl".

Secret via omgevingsvariabele

  "DatabaseSettings": {
    "ConnectionString": "{libresettings-test}"
  }

GetSetting("DatabaseSettings", "ConnectionString") zoekt de omgevingsvariabele op. Eerst exact (libresettings-test), daarna genormaliseerd naar hoofdletters met underscores (LIBRESETTINGS_TEST). Wordt geen van beide gevonden, dan volgt een EnvironmentException.

Direct een secret ophalen kan met GetSecret("libresettings-test").

Secrets aanleveren

De omgevingsvariabelen worden door de hostomgeving geïnjecteerd, bijvoorbeeld:

  • Docker: -e libresettings-test=... of een env_file
  • Kubernetes: Secret gemount als omgevingsvariabele
  • systemd: EnvironmentFile=
  • CI/CD: secret variables van de pipeline

Let op: gebruik de genormaliseerde naam (hoofdletters/underscores) als je shell geen koppeltekens in variabelenamen toestaat.