parameters:
    minecraft.server_name: '%env(MINECRAFT_SERVER_NAME)%'
    minecraft.screen_session: '%env(MINECRAFT_SCREEN_SESSION)%'
    minecraft.path.log: '%env(MINECRAFT_PATH_LOG)%'
    minecraft.path.ops: '%env(MINECRAFT_PATH_OPS)%'
    minecraft.path.cache: '%env(MINECRAFT_PATH_CACHE)%'
    minecraft.path.props: '%env(MINECRAFT_PATH_PROPS)%'
    minecraft.path.whitelist: '%env(MINECRAFT_PATH_WHITELIST)%'
    minecraft.path.notes: '%env(MINECRAFT_PATH_NOTES)%'
    minecraft.path.tps_lock: '%env(MINECRAFT_PATH_TPS_LOCK)%'
    minecraft.path.backups: '%env(MINECRAFT_PATH_BACKUPS)%'
    minecraft.path.script: '%env(MINECRAFT_PATH_SCRIPT)%'
    minecraft.ssh_key: '/var/www/html/dashboard_cockpit/config/ssh/id_rsa_dashboard'

    # System Management Configuration
    ssh.user: '%env(SSH_USER)%'
    ssh.host: '%env(SSH_HOST)%'
    ssh.key: '%env(SSH_KEY_PATH)%'

    # Discord Integration
    discord.bot_token: '%env(default::DISCORD_BOT_TOKEN)%'
    discord.guild_id: '%env(default::DISCORD_GUILD_ID)%'
    discord.text_channel_id: '%env(default::DISCORD_TEXT_CHANNEL_ID)%'

services:
    _defaults:
        autowire: true
        autoconfigure: true
        bind:
            $serverName: '%minecraft.server_name%'
            $screenSession: '%minecraft.screen_session%'
            $logPath: '%minecraft.path.log%'
            $opsPath: '%minecraft.path.ops%'
            $cachePath: '%minecraft.path.cache%'
            $propsPath: '%minecraft.path.props%'
            $whitelistPath: '%minecraft.path.whitelist%'
            $notesPath: '%minecraft.path.notes%'
            $tpsLockPath: '%minecraft.path.tps_lock%'
            $backupsPath: '%minecraft.path.backups%'
            $scriptPath: '%minecraft.path.script%'
            $sshKey: '%minecraft.ssh_key%'
            $minecraftPath: '/home/pepe/minecraft'
            $serverIp: '%env(MINECRAFT_LOCAL_IP)%'
            $externalAddress: '%env(MINECRAFT_MYFRITZ)%'

    App\:
        resource: '../src/'
        exclude:
            - '../src/DependencyInjection/'
            - '../src/Entity/'
            - '../src/Kernel.php'

    # System Management Service Configuration (must come after App\:)
    App\Service\SystemManagementService:
        arguments:
            $systemSshUser: '%ssh.user%'
            $systemSshHost: '%ssh.host%'
            $systemSshKey: '%ssh.key%'

    # Discord Service Configuration
    App\Service\DiscordService:
        arguments:
            $botToken: '%discord.bot_token%'
            $guildId: '%discord.guild_id%'
            $textChannelId: '%discord.text_channel_id%'

    App\Controller\:
        resource: '../src/Controller/'
        tags: ['controller.service_arguments']
