# Plugin-System Services Configuration services: _defaults: autowire: true autoconfigure: true bind: $licenseServerUrl: '%env(LICENSE_SERVER_URL)%' $giteaBaseUrl: '%env(GITEA_BASE_URL)%' $giteaOrganization: '%env(GITEA_ORGANIZATION)%' $instanceId: '%env(INSTANCE_ID)%' # Interface-Alias: Verwendet Gitea-Validator # Um auf Standard-Validator zu wechseln: Ändere zu @App\Service\LicenseValidator App\Plugin\LicenseValidatorInterface: alias: 'App\Service\GiteaLicenseValidator' # Module Registry (automatisches TaggedIterator sammelt alle Plugins) App\Plugin\ModuleRegistry: arguments: $modulePlugins: !tagged_iterator app.module_plugin # Event Listener für Module-Boot App\EventListener\ModuleBootListener: tags: - { name: kernel.event_listener, event: kernel.request, priority: 256 } # Auto-Configuration für Module-Plugins _instanceof: App\Plugin\ModulePluginInterface: tags: ['app.module_plugin']