fix: продакшен-фиксы install-flow и шаблонов
- исправлен рендер post-install.env: прокинут HYSTERIA_API_SECRET
- добавлен fail-fast при неразрешенных {{...}} в renderTemplate
- HY2XS_FORCE_PASSWORD_CHANGE приведён к production default=false
- docs синхронизированы: sudo bootstrap на deps-стадии
- builder: VERIFY_TOOLCHAIN_CHECKSUMS=true по умолчанию
- acceptance расширен новыми инвариантами
This commit is contained in:
@@ -87,5 +87,12 @@ export function renderTemplate(template: string, values: Record<string, string |
|
||||
for (const [key, value] of Object.entries(values)) {
|
||||
rendered = rendered.replaceAll(`{{${key}}}`, String(value));
|
||||
}
|
||||
|
||||
const unresolved = rendered.match(/\{\{\s*[A-Z0-9_]+\s*\}\}/g) ?? [];
|
||||
if (unresolved.length > 0) {
|
||||
const unique = [...new Set(unresolved.map((item) => item.replace(/\s+/g, "")))].sort();
|
||||
throw new Error(`template render failed: unresolved placeholders: ${unique.join(", ")}`);
|
||||
}
|
||||
|
||||
return rendered;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user