用pipeline实现功能

#!groovy

def upload_symbols(artifact_url, platform, build_number, branch_name) {
bat """
pushd CER
C:\\Python33\\python uploadSymbols.py "parameters"
popd
"""
}

def check_report_result(user_name, passwd, build_number, platform) {
bat """
pushd CER
C:\\Python33\\python Check_Report_Result.py "parameters"
        popd
"""
}


timestamps{
properties([
[$class: 'BuildDiscarderProperty', strategy: [$class: 'LogRotator', artifactDaysToKeepStr: '90', artifactNumToKeepStr: '', daysToKeepStr: '90', numToKeepStr: '']],
[$class: 'GithubProjectProperty',
displayName: '',
projectUrlStr: '',
],
disableConcurrentBuilds(),
parameters([
string(name: 'BuildNumber', value: ''),
string(name: 'platform', value: 'WIN64'),
string(name: 'BranchName', value: 'develop'),
]),
])
currentBuild.displayName = params.BuildNumber + '_' + params.platform + '_' + params.BranchName

def BUILD_NUMBER = params.BuildNumber
def platform = params.platform
def branch_name = params.BranchName
def artifact_url = "url" + "${BUILD_NUMBER}" + "/WIN"
node('ClientDelivery-Windows-CER') {
stage('Check_Out') {
checkout changelog: false, poll: false, scm: [$class: 'GitSCM', branches: [[name: 'master']], doGenerateSubmoduleConfigurations: false, extensions: [[$class: 'CloneOption', noTags: true, reference: '', shallow: true]], submoduleCfg: [], userRemoteConfigs: [[credentialsId: '', url: 'git url']]]
}
stage('Upload_Symbols') {
upload_symbols(artifact_url, platform, BUILD_NUMBER, branch_name)
}
stage('Check_Report_Result') {
//根据节点机器的credentials配置账号密码
withCredentials([usernamePassword(credentialsId: 'svc_p_bi', passwordVariable: 'CER_PASSWD', usernameVariable: 'CER_USER')]) {
def user_name = "ADS\\${CER_USER}"
def passwd = "${CER_PASSWD}"
check_report_result(user_name, passwd, BUILD_NUMBER, platform)
}
}
}
}
posted on 2018-08-06 15:58  机器大浪猫  阅读(210)  评论(0编辑  收藏  举报