// Intégration de la librairie Cadoles (voir https://forge.cadoles.com/Cadoles/Jenkins)
@Library("cadoles") _

// Utilisation du pipeline partagé pour les applications Symfony de Cadoles
// Le nom de l'image Docker passée en paramètre vous permet de préciser l'environnement de test
// de votre application Symfony
symfonyAppPipeline('ubuntu:22.04', [
    'hooks': [
        // Run docker image build, verification and publication stages
        'postSymfonyAppPipeline': {
            boolean isRelease = ["develop", "staging", "master"].contains(env.BRANCH_NAME)
            stage('Build and publish hydra-sql standalone image') {
                container.buildAndPublishImage([
                    'imageName': 'reg.cadoles.com/cadoles/hydra-sql-standalone',
                    'dockerfile': './misc/images/hydra-sql-standalone/Dockerfile',
                    'dryRun': !isRelease
                ])
            }
            stage('Build and publish hydra-sql base image') {
                container.buildAndPublishImage([
                    'imageName': 'reg.cadoles.com/cadoles/hydra-sql-base',
                    'dockerfile': './misc/images/hydra-sql-base/Dockerfile',
                    'dryRun': !isRelease
                ])
            }
        }
    ]
])