node {
    def app

    stage('Initialize'){
        def dockerHome = tool 'docker'
        env.PATH = "${dockerHome}/bin:${env.PATH}"
    }

    stage('Clone repository') {
        /* Let's make sure we have the repository cloned to our workspace */

        checkout scm
    }

    stage('Build 6.2.6 image') {
        /* This builds the actual image; synonymous to
         * docker build on the command line */
        def dockerfile = "6.2/Dockerfile"
        app = docker.build("harbor.dragse.it/base/redis", "-f ${dockerfile} ./6.2 ")
    }

    stage('Push image') {
        /* Finally, we'll push the image with two tags:
         * First, the incremental build number from Jenkins
         * Second, the 'latest' tag.
         * Pushing multiple tags is cheap, as all the layers are reused. */
        docker.withRegistry('https://harbor.dragse.it', 'harbor-repo') {
            app.push("${env.BUILD_NUMBER}")
            app.push("6")
            app.push("6.2")
            app.push("6.2.6")
            app.push("latest")
        }
    }
}