bookstack: after_install replaces the default admin@admin.com / password with a generated one (decision 45)
gates / gates (push) Successful in 1s

Proven on 9202 with controller 0.279.0 (drill 5ac5daf): the default no longer logs in, the generated first
password from the app page does, a wrong one does not. Copy freeze: bookstack's new/changed strings signed off.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0159rPz1ZhFKsS53msqPYxtS
This commit is contained in:
2026-09-28 18:53:57 +02:00
parent 5248472cdb
commit ccd17da3c4
2 changed files with 29 additions and 6 deletions
+4 -2
View File
@@ -80,8 +80,8 @@
"bookstack": { "bookstack": {
"app_info.default_creds": "admin@admin.com / password", "app_info.default_creds": "admin@admin.com / password",
"app_info.first_steps[0]": "Nyisd meg a wiki.DOMAIN címet a böngészőben", "app_info.first_steps[0]": "Nyisd meg a wiki.DOMAIN címet a böngészőben",
"app_info.first_steps[1]": "Jelentkezz be: admin@admin.com / password", "app_info.first_steps[1]": "Jelentkezz be: admin@admin.com és a Beállítások oldalon látható első jelszó",
"app_info.first_steps[2]": "Változtasd meg azonnal az admin jelszót és email címet", "app_info.first_steps[2]": "Változtasd meg az admin email címét a sajátodra",
"app_info.first_steps[3]": "Hozd létre az első polcot és könyvet", "app_info.first_steps[3]": "Hozd létre az első polcot és könyvet",
"app_info.first_steps[4]": "Kezdj el írni!", "app_info.first_steps[4]": "Kezdj el írni!",
"app_info.tagline": "Egyszerű wiki platform - polcok, könyvek, fejezetek és oldalak", "app_info.tagline": "Egyszerű wiki platform - polcok, könyvek, fejezetek és oldalak",
@@ -90,6 +90,8 @@
"app_info.use_cases[2]": "Könyv > Fejezet > Oldal hierarchia az áttekinthetőségért", "app_info.use_cases[2]": "Könyv > Fejezet > Oldal hierarchia az áttekinthetőségért",
"app_info.use_cases[3]": "Teljes szöveges keresés és címkék", "app_info.use_cases[3]": "Teljes szöveges keresés és címkék",
"app_info.use_cases[4]": "WYSIWYG és Markdown szerkesztő", "app_info.use_cases[4]": "WYSIWYG és Markdown szerkesztő",
"deploy_fields[ADMIN_PASSWORD].description": "Az első bejelentkezéshez: admin@admin.com és ez a jelszó. Utána a profilodban módosítható.",
"deploy_fields[ADMIN_PASSWORD].label": "Admin jelszó (admin@admin.com)",
"deploy_fields[APP_KEY].label": "Alkalmazás kulcs", "deploy_fields[APP_KEY].label": "Alkalmazás kulcs",
"deploy_fields[DB_PASSWORD].label": "Adatbázis jelszó", "deploy_fields[DB_PASSWORD].label": "Adatbázis jelszó",
"deploy_fields[DOMAIN].description": "A szerver domain neve", "deploy_fields[DOMAIN].description": "A szerver domain neve",
+25 -4
View File
@@ -47,6 +47,15 @@ deploy_fields:
generate: "password:24" generate: "password:24"
locked_after_deploy: true locked_after_deploy: true
# `09` §3 decision 45: BookStack starts with admin@admin.com / password. The box replaces that password with
# this generated one right after the install (after_install below); the app page shows it as the first password.
- env_var: ADMIN_PASSWORD
label: "Admin jelszó (admin@admin.com)"
type: password
generate: "password:24"
description: "Az első bejelentkezéshez: admin@admin.com és ez a jelszó. Utána a profilodban módosítható."
locked_after_deploy: true
# --- App info (info page content) --- # --- App info (info page content) ---
app_info: app_info:
tagline: "Egyszerű wiki platform - polcok, könyvek, fejezetek és oldalak" tagline: "Egyszerű wiki platform - polcok, könyvek, fejezetek és oldalak"
@@ -62,12 +71,21 @@ app_info:
first_steps: first_steps:
- 'Nyisd meg a wiki.DOMAIN címet a böngészőben' - 'Nyisd meg a wiki.DOMAIN címet a böngészőben'
- 'Jelentkezz be: admin@admin.com / password' - 'Jelentkezz be: admin@admin.com és a Beállítások oldalon látható első jelszó'
- 'Változtasd meg azonnal az admin jelszót és email címet' - 'Változtasd meg az admin email címét a sajátodra'
- 'Hozd létre az első polcot és könyvet' - 'Hozd létre az első polcot és könyvet'
- 'Kezdj el írni!' - 'Kezdj el írni!'
# --- After a fresh install (controller >= 0.279.0, decision 45) ---
# BookStack's OWN artisan command updates the initial admin in place. Measured on 9202 2026-09-28: afterwards
# admin@admin.com / password no longer logs in, the generated password does.
after_install:
service: bookstack
env: [ADMIN_PASSWORD]
command: ["php", "/app/www/artisan", "bookstack:create-admin", "--email=admin@admin.com", "--name=Admin", "--password=${ADMIN_PASSWORD}", "--initial"]
success: "The default admin user has been updated"
# --- Controller-side health probe --- # --- Controller-side health probe ---
healthcheck: healthcheck:
checks: checks:
@@ -91,8 +109,8 @@ i18n:
- 'A visual editor and a Markdown editor' - 'A visual editor and a Markdown editor'
first_steps: first_steps:
- 'Open wiki.DOMAIN in your browser' - 'Open wiki.DOMAIN in your browser'
- 'Sign in: admin@admin.com / password' - 'Sign in: admin@admin.com and the first password shown on the settings page'
- 'Change the admin password and e-mail address straight away' - 'Change the admin e-mail address to your own'
- 'Create your first shelf and book' - 'Create your first shelf and book'
- 'Start writing' - 'Start writing'
deploy_fields: deploy_fields:
@@ -106,6 +124,9 @@ i18n:
label: 'Database password' label: 'Database password'
- env_var: APP_KEY - env_var: APP_KEY
label: 'Application key' label: 'Application key'
- env_var: ADMIN_PASSWORD
label: 'Admin password (admin@admin.com)'
description: 'For the first sign-in: admin@admin.com and this password. Change it in your profile afterwards.'
# update_ladder — the test record: one tested step per line, oldest first (JSON flow mappings, # update_ladder — the test record: one tested step per line, oldest first (JSON flow mappings,
# `09-update-architecture.md` §6.4 part 4). WRITTEN BY scripts/upgrade-test.py, never by hand; # `09-update-architecture.md` §6.4 part 4). WRITTEN BY scripts/upgrade-test.py, never by hand;