fix: hybrid deploy without OPcache tool, tolerant of missing secrets

- No cachetool: its web adapter needs PHP below www.ep-reisen.de/typo3temp,
  which is the static docroot in the hybrid setup (blocked, and not the
  release's typo3temp). Not needed: the exporter's front controller stubs
  resolve the "current" symlink with readlink() on every request.
- additional.php only merges secrets.php when it returns an array:
  Deployer creates an empty shared file on the first deploy.
- public/.htaccess sets TYPO3_CONTEXT=Production/Staging for
  staging.ep-reisen.de, the smoke-test vhost.
- dep host:check: read-only checks of the host before the first deploy.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
frommeandClaude Opus 5.5 committed 2026-10-21 18:08:17 +02:00
1 parent 67c32802dc
commit f6307d7552
3 files changed
+41 -11

No files matched your search

+5 -2
View File
@@ -61,7 +61,9 @@ if (getenv('IS_DDEV_PROJECT') == 'true') {
);
}
if (is_file(__DIR__ . '/secrets.php')) {
// Deployer creates an empty secrets.php if none exists yet: only an array counts
$secrets = is_file(__DIR__ . '/secrets.php') ? require __DIR__ . '/secrets.php' : null;
if (is_array($secrets)) {
$withoutEmptyValues = static function (array $values) use (&$withoutEmptyValues): array {
foreach ($values as $key => $value) {
if (is_array($value)) {
@@ -74,7 +76,8 @@ if (is_file(__DIR__ . '/secrets.php')) {
};
$GLOBALS['TYPO3_CONF_VARS'] = array_replace_recursive(
$GLOBALS['TYPO3_CONF_VARS'],
$withoutEmptyValues(require __DIR__ . '/secrets.php')
$withoutEmptyValues($secrets)
);
unset($withoutEmptyValues);
}
unset($secrets);