Skip to content
Snippets Groups Projects
Jenkinsfile 1.61 KiB
Newer Older
  • Learn to ignore specific revisions
  • OZGCloud's avatar
    OZGCloud committed
    pipeline {
        agent {
            node {
                label 'goofy'
            }
        }
    
        options {
            timeout(time: 1, unit: 'HOURS')
            disableConcurrentBuilds()
        }
    
        stages {
            stage('client build') {
                steps {
    
    OZGCloud's avatar
    OZGCloud committed
                    container("nodejs"){
                        sh 'npm --version'
                        dir('goofy-client') {
                            sh 'npm install'
                            sh 'npm run build'
                            sh 'npm run test'
                        }
    
    OZGCloud's avatar
    OZGCloud committed
                    }
                }
            }
    
            stage('server build') {
                steps {
                    container("maven"){
                        sh 'mvn --version'
    
    
                        sh 'mvn -pl -goofy-client clean install'
    
    OZGCloud's avatar
    OZGCloud committed
                    }
                }
            }
    
            stage('openshift deploy') {
                steps {
                    script {
                        def pom = readMavenPom file: 'pom.xml'
                        def version = pom.version
    
                        openshift.withCluster() {
                            openshift.withProject() {
                                dir('goofy-server') {
    
    OZGCloud's avatar
    OZGCloud committed
                                    openshift.startBuild("goofy-builder", "--from-dir=.", "--follow", "--wait")
    
    OZGCloud's avatar
    OZGCloud committed
                                }
                             
                                openshift.tag("goofy-builder:latest", "goofy-builder:${env.BRANCH_NAME}-${version}")
                                openshift.tag("goofy-builder:${env.BRANCH_NAME}-${version}", "sh-kiel-dev/goofy:${env.BRANCH_NAME}-${version}")
                            }                    
                        }
                    }
                }
            }    
        }
    }