



pipeline {
    agent any
    tools {
        maven 'Maven 3.2.1'

    }
    environment{
       GITHUB_CLONE_URL = 'git@git.corp.adobe.com:Activation/opt-in.git'
GITHUB_CLONE_CREDENTIALS = 'SSH mowla@adobe.com'
GITHUB_CLONE_ORG = 'Activation'
GITHUB_CLONE_REPO = 'opt-in'
GITHUB_CLONE_BRANCH = 'master'
CODESCAN_API_URL = 'https://itcapi.paas.corp.adobe.com/codescan-api/scan/v1/qat'
    }

    stages{
        stage("clean workspace") {
            steps {
                deleteDir()
            }
        }

        //Stage: GitHub Integration
    stage('Clone sources') {
        steps{
            script{
                def gitbranch = "${env.GITHUB_CLONE_BRANCH}"
                if (!env.GITHUB_CLONE_BRANCH) {
                    gitbranch = "${env.GIT_BRANCH}"
                }else{
                     //to handle issue with origin/BRANCH_NAME
                     def gitbranchOriginSplit = gitbranch.split('origin/')
                     def gitbranchOriginSplitLength = gitbranchOriginSplit.size()
                     gitbranch = gitbranchOriginSplitLength > 1 ? gitbranchOriginSplit[1] : gitbranch
                 }
                print "git branch is ${gitbranch}"
                git credentialsId: "${env.GITHUB_CLONE_CREDENTIALS}", url: "${env.GITHUB_CLONE_URL}", branch: "${gitbranch}"
            }
        }
    }

        
        
        
    }
    post {
        failure {
            sh '''
                mail -s "Build failed for Jenkins Job JOB_NAME" USER_EMAIL_ID
            '''
        }
        unstable {
            sh '''
                mail -s "Build Unstable for Jenkins Job JOB_NAME" USER_EMAIL_ID
            '''
        }
    }
}