stage('Pushing 2 Tests and 2 Debug jobs') {
when {
expression {
Push2TEs == 'true'
}
}
parallel { stage('TE1') {
stages {
stage('PUSH TE1') {
options {
retry(2)
timeout(time: 3, unit: 'HOURS')
}
steps {
script {
timestamps {
println("${STAGE_BEGIN} PUSH TE1")
def TE1build = build job: "TESTING/${TEST_LABEL1}/PAC_PTE/0010.TESTING-Headline",
parameters: [
[$class: 'StringParameterValue', name: 'MX_VERSION', value: MX_VERSION],
[$class: 'StringParameterValue', name: 'MX_CHANGELIST', value: MX_CHANGELIST],
[$class: 'BooleanParameterValue', name: 'Execute_benchmark', value: true],
[$class: 'BooleanParameterValue', name: 'Generate_traceability_reports', value: true],
[$class: 'StringParameterValue', name: 'SETUPS', value: 'Custom'],
[$class: 'StringParameterValue', name: 'Custom_Script_Before', value: '/nfs_qa_pac/pac-pte/jenkins/getEnvProperties.sh'],
[$class: 'StringParameterValue', name: 'Custom_Script_After', value: '/nfs_qa_pac/pac-pte/jenkins/restoreEnv.sh']
],
propagate: false
LogJobStatus("${TEST_LABEL1}", TE1build.result)
currentBuild.result = TE1build.result
}
}
}
}
stage('Archive Logs') {
steps {
script {
timestamps {
println("${STAGE_BEGIN} Archive ${TEST_LABEL1} Logs")
def archiveLogsTE1 = build job: 'Archiving',
parameters: [
[$class: 'StringParameterValue', name: 'BENCH_MARK_NAME', value: TE1_BENCH_MARK_NAME],
[$class: 'StringParameterValue', name: 'VERSION', value: MX_VERSION],
[$class: 'StringParameterValue', name: 'CHANGELIST', value: MX_CHANGELIST],
[$class: 'StringParameterValue', name: 'APP_DIR', value: TE1_APP_DIR],
[$class: 'StringParameterValue', name: 'RESULTS_DIR', value: TE1_LOG_DIR],
[$class: 'StringParameterValue', name: 'KPI_DIR', value: TE1_WORKSPACE],
[$class: 'StringParameterValue', name: 'TPK', value: TPK],
[$class: 'StringParameterValue', name: 'JOB_ID', value: JOB_ID],
[$class: 'StringParameterValue', name: 'TEST_ID', value: TEST_LABEL1],
[$class: 'StringParameterValue', name: 'NODE', value: TE1_NODE]
],
propagate: false
currentBuild.result = archiveLogsTE1.result
LogJobStatus("Archive ${TEST_LABEL1} Logs", archiveLogsTE1.result) println("${STAGE_END} Archive ${TEST_LABEL1} Logs")
}
}
}
}
}
} stage('TE2') {
stages {
stage('PUSH TE2') {
options {
retry(2)
timeout(time: 3, unit: 'HOURS')
}
steps {
script {
timestamps {
println("${STAGE_BEGIN} PUSH TE2")
def TE2build = build job: "TESTING/${TEST_LABEL2}/PAC_PTE/0010.TESTING-Headline",
parameters: [
[$class: 'StringParameterValue', name: 'MX_VERSION', value: MX_VERSION],
[$class: 'StringParameterValue', name: 'MX_CHANGELIST', value: MX_CHANGELIST],
[$class: 'BooleanParameterValue', name: 'Execute_benchmark', value: true],
[$class: 'BooleanParameterValue', name: 'Generate_traceability_reports', value: true],
[$class: 'StringParameterValue', name: 'SETUPS', value: 'Custom'],
[$class: 'StringParameterValue', name: 'Custom_Script_Before', value: '/nfs_qa_pac/pac-pte/jenkins/getEnvProperties.sh'],
[$class: 'StringParameterValue', name: 'Custom_Script_After', value: '/nfs_qa_pac/pac-pte/jenkins/restoreEnv.sh']
],
propagate: false
LogJobStatus("PUSH TE2", TE2build.result)
currentBuild.result = TE2build.result
}
}
}
}
stage('Archive Logs') {
steps {
script {
timestamps {
println("${STAGE_BEGIN} Archive ${TEST_LABEL2} Logs")
def archiveLogsTE2 = build job: 'Archiving',
parameters: [
[$class: 'StringParameterValue', name: 'BENCH_MARK_NAME', value: TE2_BENCH_MARK_NAME],
[$class: 'StringParameterValue', name: 'VERSION', value: MX_VERSION],
[$class: 'StringParameterValue', name: 'CHANGELIST', value: MX_CHANGELIST],
[$class: 'StringParameterValue', name: 'APP_DIR', value: TE2_APP_DIR],
[$class: 'StringParameterValue', name: 'RESULTS_DIR', value: TE2_LOG_DIR],
[$class: 'StringParameterValue', name: 'TPK', value: TPK],
[$class: 'StringParameterValue', name: 'JOB_ID', value: JOB_ID],
[$class: 'StringParameterValue', name: 'TEST_ID', value: TEST_LABEL2],
[$class: 'StringParameterValue', name: 'NODE', value: TE2_NODE]
],
propagate: false
currentBuild.result = archiveLogsTE2.result
LogJobStatus("Archive ${TEST_LABEL2} Logs", archiveLogsTE2.result) println("${STAGE_END} Archive ${TEST_LABEL2} Logs")
}
}
}
}
}
} stage('HEAD DEBUG') {
stages {
stage('PUSH HEAD DEBUG') {
options {
retry(2)
timeout(time: 2, unit: 'HOURS')
}
steps {
script {
timestamps {
println("${STAGE_BEGIN} PUSH HEAD DEBUG")
try {
def pushHeadDebugJob = build job: "TESTING/${STREAM_ID}/PAC_PTE/0010.TESTING-Headline",
parameters: [
[$class: 'StringParameterValue', name: 'MX_VERSION', value: MX_VERSION],
[$class: 'StringParameterValue', name: 'MX_CHANGELIST', value: MX_CHANGELIST],
[$class: 'BooleanParameterValue', name: 'Execute_benchmark', value: false],
[$class: 'BooleanParameterValue', name: 'Generate_traceability_reports', value: false],
[$class: 'StringParameterValue', name: 'SETUPS', value: 'Custom'],
[$class: 'StringParameterValue', name: 'Custom_Script_Before', value: '/nfs_qa_pac/pac-pte/jenkins/getEnvProperties.sh'],
[$class: 'StringParameterValue', name: 'Custom_Script_After', value: '/nfs_qa_pac/pac-pte/jenkins/restoreEnv.sh']
],
propagate: false
currentBuild.result = pushHeadDebugJob.result } catch (all) {
echo 'Pushing Head Debug job Failed'
return 0
}
println("${STAGE_END} PUSH HEAD DEBUG")
}
}
}
}
stage('DEPLOY CLIENT HEAD') {
steps {
script {
timestamps {
println("${STAGE_BEGIN} Deploying Client HEAD")
try {
def DeployClient = build job: 'DeployClient',
parameters: [
[$class: 'StringParameterValue', name: 'NODE', value: 'pacpte_pte02nt'],
[$class: 'StringParameterValue', name: 'PROPERTIES', value: '/nfs_qa_pac/pac-pte/jenkins/env_properties/0010.TESTING-' + STREAM_ID + '-Headline.properties'],
[$class: 'StringParameterValue', name: 'CHANGELIST', value: MX_CHANGELIST],
[$class: 'StringParameterValue', name: 'OPERATING_SYSTEM', value: OPERATING_SYSTEM],
[$class: 'StringParameterValue', name: 'DEBUG_NODE', value: HEAD_DEBUG_NODE],
[$class: 'StringParameterValue', name: 'DEBUG_APP_DIR', value: HEAD_DEBUG_APP_DIR]
],
propagate: false
currentBuild.result = DeployClient.result
} catch (all) {
echo 'Deploy Head Debug Client Failed'
return 0
}
println("${STAGE_END} Deploying Client HEAD")
}
}
}
}
}
} }
}