All checks were successful
Deploy server-up (dev) / deploy (push) Successful in 1m34s
Invulmenu:
- Vaste stappen (Basis, Verbinden, Instellingen, Toegang, Controleren) in
plaats van één lange lijst. Eén stap per groep werkt niet: de mediane app
heeft één groep, arr-stack eenentwintig. Lege stappen worden overgeslagen.
- Volgende controleert de verplichte velden van die stap; die melding kwam
eerder pas bij het installeren.
- Geavanceerde opties achter één schakelaar die op elke stap zichtbaar is,
plus 'Alles op één pagina' voor het oude gedrag. Beide onthouden.
Geheimen naar .env:
- compose_transform.geheimen_naar_env() vervangt geheime waarden door
${NAAM} en schrijft ze naar .env met rechten 0600. Werkt ook midden in
een database-URL. Poorten en paden blijven leesbaar in compose.
- .serverup.json bevat geen geheimen meer en krijgt ook 0600; daar stonden
ze wereldleesbaar in. Het herconfiguratieformulier leest ze terug uit
.env via een bewaarde veld-naar-sleutel-koppeling.
- docs/beveiliging.md legt uit wat dit niet oplost: docker inspect toont de
waarde nog steeds.
Bewerken:
- Laatste stap toont het gerenderde resultaat met jouw waarden en is
bewerkbaar; compose_override/env_override gaan mee bij het installeren.
Ongeldige YAML wordt geweigerd voordat er een map bestaat.
- De bestaande editor heeft tabbladen (compose/.env) en biedt herstarten na
opslaan. De .env-PUT weigert een regel zonder '=' en logt in audit.
Inloggegevens:
- /api/stacks/<n>/credentials plus paneel op de stackkaart: adres,
gebruikersnaam, wachtwoord achter een oog-knop, kopieerknop. Alleen voor
beheerders, elk bekijken komt in het auditlog.
- Nieuw 'credential'-kenmerk in template.json met naamherkenning als
terugval, zodat de bestaande 96 sjablonen meteen werken.
Herstel van een regressie uit v0.7.60: acht inlogwachtwoorden hadden hun
genereerknop verloren toen die aan 'generate' werd gehangen. Terug, behalve
waar een verzonnen waarde fout is (WireGuard-sleutel, externe tokens).
De menulogica wordt getest door de echte component uit index.html in Node uit
te voeren; slaat zichzelf over waar node ontbreekt. 2295 tests groen.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01C7oLCRYzY5ixJ5Sv8Y8EFb
86 lines
1.9 KiB
JSON
86 lines
1.9 KiB
JSON
{
|
|
"kind": "compose",
|
|
"metadata": {
|
|
"name": "Miniflux",
|
|
"description": "Minimalistische en snelle RSS-lezer, zelfgehost met een opgeruimde interface.",
|
|
"tags": [
|
|
"rss",
|
|
"nieuws",
|
|
"lezer",
|
|
"feeds"
|
|
],
|
|
"icon": {
|
|
"provider": "selfhst",
|
|
"id": "miniflux"
|
|
},
|
|
"version": {
|
|
"name": "latest"
|
|
},
|
|
"categories": [
|
|
"documenten"
|
|
]
|
|
},
|
|
"variables": [
|
|
{
|
|
"title": "Algemeen",
|
|
"items": [
|
|
{
|
|
"name": "service_name",
|
|
"type": "str",
|
|
"title": "Servicenaam",
|
|
"default": "miniflux",
|
|
"required": true
|
|
},
|
|
{
|
|
"name": "port",
|
|
"type": "int",
|
|
"title": "Web poort",
|
|
"default": 8080,
|
|
"required": true
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"title": "Beheerder",
|
|
"items": [
|
|
{
|
|
"name": "admin_username",
|
|
"type": "str",
|
|
"title": "Admin gebruikersnaam",
|
|
"default": "admin",
|
|
"required": true
|
|
},
|
|
{
|
|
"name": "admin_password",
|
|
"type": "str",
|
|
"title": "Admin wachtwoord",
|
|
"default": "",
|
|
"required": true,
|
|
"config": {
|
|
"placeholder": "sterk-wachtwoord"
|
|
},
|
|
"generate": true,
|
|
"secret": true
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"title": "Database",
|
|
"items": [
|
|
{
|
|
"name": "db_password",
|
|
"type": "str",
|
|
"title": "Database wachtwoord",
|
|
"default": "",
|
|
"required": true,
|
|
"config": {
|
|
"placeholder": "sterk-wachtwoord"
|
|
},
|
|
"secret": true,
|
|
"generate": "auto",
|
|
"help": "Wordt automatisch ingevuld met een willekeurige waarde. Alleen de containers onderling gebruiken hem, dus je hoeft hem niet te onthouden."
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|