docs: v0.84.0 REPORT/CONTEXT/README — catalog-driven initial-login extraction
This commit is contained in:
@@ -207,6 +207,16 @@ Each app can define rich metadata in `.felhom.yml`:
|
||||
- `app_info`: tagline, use_cases, first_steps, prerequisites, default_creds, docs_url
|
||||
- `optional_config`: groups of post-deploy configurable env vars (e.g., API keys for metadata providers)
|
||||
- `resources`: mem_request, mem_limit, pi_compatible, needs_hdd, hungarian_ui
|
||||
- `initial_credentials` (v0.84.0): for apps that **auto-generate a first-login password into a file** at
|
||||
first boot (vs taking it from a deploy field) — e.g. Crafty → `/crafty/app/config/default-creds.txt`.
|
||||
Fields: `file` (path inside the container), `format` (`json`|`regex`|`plain`), optional `container`
|
||||
(defaults to the stack's main container), `username_key`/`password_key` (json), `username_pattern`/
|
||||
`password_pattern` (regex, first capture group), `note`. `ReadInitialCredentials`
|
||||
(`internal/stacks/initialcreds.go`) reads the file **live** via `docker exec … cat` and parses it with
|
||||
the pure `parseInitialCreds`; the value is **never persisted** to `app.yaml`. `appDetailHandler`
|
||||
surfaces it on `/apps/{slug}` as a "Kezdeti belépési adatok" card (masked password + reveal/copy),
|
||||
labelled as the *initial* credential (stays valid only until the customer changes it in-app). Hidden
|
||||
when the container is down / file missing / parse fails. Reuse for any future self-seeding app.
|
||||
|
||||
The `/apps/{slug}` page renders hero section, screenshots, setup guide, and optional config form.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user