From b1f6b8d1bcc38dd17015508b2fd7da28f7390b82 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcus=20M=C3=BCller?= <25648755+M-arcus@users.noreply.github.com> Date: Tue, 3 Dec 2024 11:20:56 +0100 Subject: [PATCH] Add "Disable Symfony Secrets" checker (#298) * Add "Disable Symfony Secrets" checker * Add check if symfony secrets are in use --- .../DisableSymfonySecretsChecker.php | 43 +++++++++++++++++++ .../SymfonyConfigCompilerPass.php | 4 ++ 2 files changed, 47 insertions(+) create mode 100644 src/Components/Health/Checker/PerformanceChecker/DisableSymfonySecretsChecker.php diff --git a/src/Components/Health/Checker/PerformanceChecker/DisableSymfonySecretsChecker.php b/src/Components/Health/Checker/PerformanceChecker/DisableSymfonySecretsChecker.php new file mode 100644 index 0000000..6801497 --- /dev/null +++ b/src/Components/Health/Checker/PerformanceChecker/DisableSymfonySecretsChecker.php @@ -0,0 +1,43 @@ +secretsEnabled && !$this->areSecretsInUse()) { + $collection->add( + SettingsResult::info( + 'symfony-secrets', + 'Disable Symfony Secrets', + 'enabled', + 'disabled', + 'https://developer.shopware.com/docs/guides/hosting/performance/performance-tweaks.html#disable-symfony-secrets', + ), + ); + } + } + + private function areSecretsInUse(): bool + { + return count($this->vault->list()) > 0 || ($this->localVault instanceof AbstractVault && count($this->localVault->list()) > 0); + } +} diff --git a/src/DependencyInjection/SymfonyConfigCompilerPass.php b/src/DependencyInjection/SymfonyConfigCompilerPass.php index 483feed..b2e16a7 100644 --- a/src/DependencyInjection/SymfonyConfigCompilerPass.php +++ b/src/DependencyInjection/SymfonyConfigCompilerPass.php @@ -43,5 +43,9 @@ public function process(ContainerBuilder $container): void if (!$container->hasParameter('shopware.cache.tagging.each_theme_config')) { $container->setParameter('shopware.cache.tagging.each_theme_config', true); } + + if (!$container->hasParameter('framework.secrets.enabled')) { + $container->setParameter('framework.secrets.enabled', true); + } } }