pipeline {
agent {
label 'translation'
}
environment {
param1 = 'value1'
}
triggers {
GenericTrigger(
genericVariables: [
[defaultValue: '', key: 'src_full_name', regexpFilter: '', value: '$.pull_request.head.repo.full_name'],
[defaultValue: '', key: 'user', regexpFilter: '', value: '$.pull_request.user.login'],
[defaultValue: '', key: 'src_branch', regexpFilter: '', value: '$.pull_request.head.ref'],
[defaultValue: '', key: 'src_repo_name', regexpFilter: '', value: '$.pull_request.head.repo.name'],
[defaultValue: '', key: 'label', regexpFilter: '', value: '$.pull_request.head.label'],
[defaultValue: '', key: 'webhook', regexpFilter: '', value: '$'],
[defaultValue: '', key: 'src', regexpFilter: '[^0-9]', value: '$.pull_request.head.repo.full_name']
],
overrideQuietPeriod: true, printContributedVariables: true, printPostContent: true, causeString: '$user $src_full_name $src_branch',
regexpFilterExpression: '^SFSF-LX-LAB/.*$', regexpFilterText: '$src_full_name', token: '', tokenCredentialId: 'translation-pr-token'
)
}
options {
retry 1
timestamps()
quietPeriod 2
skipDefaultCheckout true
disableConcurrentBuilds()
timeout(time: 5, unit: 'MINUTES')
buildDiscarder logRotator(artifactDaysToKeepStr: '', artifactNumToKeepStr: '', daysToKeepStr: '100', numToKeepStr: '10')
}
stages {
stage('Clean Workspace') {
steps {
script {
cleanWs notFailBuild: true
def webhook = readJSON(text: "${webhook}")
}
}
}
stage('Checkout') {
steps {
script {
checkout([$class: 'GitSCM', branches: [[name: ':^(?!(origin/prefix)).*']], extensions: [], userRemoteConfigs: [[credentialsId: 'jambot-key', url: 'git@github.wdf.sap.corp:sap-jam/translation-integration.git']]])
}
}
}
stage('Operate') {
steps {
script {
sh 'printenv'
sh 'ruby -rlogger -rfileutils -e "puts 555555555555555555555"'
sh 'pwd;ls -al'
withCredentials([usernamePassword(credentialsId: 'translation_token', passwordVariable: 'translation_git_token', usernameVariable: 'translation_git_username')]) {
sh '''
git clone --quiet --progress --jobs 5 https://$translation_git_username:$translation_git_token@github.corp/vail/ct
git switch --quiet --progress $src_branch
ls -al
ruby PostProcess.rb
ls -al ct
cd ct
git commit -am 'post processing with jenkins pipeline'
git push --quiet --all --progress --atomic
'''
}
}
}
}
}
}