aboutsummaryrefslogtreecommitdiff
path: root/Jenkinsfile
blob: a16496b684f3f39fee2ff2fdd6ec70426e6e1c00 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
String cron_string = BRANCH_NAME == "master" ? "@weekly" : ""

pipeline {
    agent any
    triggers { cron(cron_string) }
    options { ansiColor('xterm') }
    stages {
        stage('Check') {
            agent {
                docker {
                    image 'ghcr.io/super-linter/super-linter:latest'
                    args '--entrypoint ""'
                }
            }
            steps { sh 'bash .scripts.d/10-check.sh' }
        }
        stage('Build') { steps { sh 'bash .scripts.d/20-build.sh' } }
        stage('Test') { steps { sh 'bash .scripts.d/30-test.sh' } }
        stage('Publish') {
            environment { DOCKERHUB_TOKEN = credentials('DOCKERHUB_TOKEN') }
            steps { sh 'bash .scripts.d/40-publish.sh' }
        }
    }
    post {
        always {
            junit 'build/reports/*.xml'
            step([$class: 'Mailer',
                notifyEveryUnstableBuild: true,
                recipients: "christian+jenkins@segundo.io",
                sendToIndividuals: true])
        }
    }
}