支付宝小程序和微信小程序Jenkins构建并发码

def e_qr_code = "0"
def e_version = "0"
pipeline{
    agent {
        kubernetes{
            cloud 'kubernetes'
            yaml '''apiVersion: "v1"
kind: "Pod"
metadata:
  namespace: "default"
spec:
  containers:
  - command:
    - "cat"
    image: "fanyinghao/ossutil:1.6.6"
    imagePullPolicy: "IfNotPresent"
    name: "ossutil"
    tty: true
    volumeMounts:
    - mountPath: "/var/run/docker.sock"
      name: "volume-0"
      readOnly: false
    - mountPath: "/home/jenkins/agent"
      name: "workspace-volume"
      readOnly: false
  - command:
    - "cat"
    image: "node:16.17.1"
    imagePullPolicy: "IfNotPresent"
    name: "node"
    tty: true
    volumeMounts:
    - mountPath: "/var/run/docker.sock"
      name: "volume-0"
      readOnly: false
    - mountPath: "/home/jenkins/agent"
      name: "workspace-volume"
      readOnly: false
  - command:
    - "cat"
    image: "docker:latest"
    imagePullPolicy: "IfNotPresent"
    name: "dnd"
    tty: true
    volumeMounts:
    - mountPath: "/var/run/docker.sock"
      name: "volume-0"
      readOnly: false
    - mountPath: "/home/jenkins/agent"
      name: "workspace-volume"
      readOnly: false
  restartPolicy: "Never"
  volumes:
  - hostPath:
      path: "/var/run/docker.sock"
    name: "volume-0"
  - emptyDir:
      medium: ""
    name: "workspace-volume"
'''
        }
    }
    stages {
        stage('gitee checkout') {
            steps{
                git branch: "${env.giteeBranch}", credentialsId: 'gitee-kk', url: "${env.giteeSourceRepoHttpUrl}"
                echo "giteeBranch ${env.giteeBranch}"
                echo "giteeSourceBranch ${env.giteeSourceBranch}"
                echo "giteeActionType ${env.giteeActionType}"
                echo "giteeUserName ${env.giteeUserName}"
                echo "giteeUserEmail ${env.giteeUserEmail}"
                echo "giteeSourceRepoName ${env.giteeSourceRepoName}"
                echo "giteeSourceRepoURL ${env.giteeSourceRepoURL}"
                echo "giteeSourceRepoHttpUrl ${env.giteeSourceRepoHttpUrl}"
            }
        }
        // stage('npm build') {
        //     steps {
        //         container('node') {
        //             sh 'npm install'
        //         }
        //     }
        // }
        stage('minidev upload') {
            steps {
                container('node') {
                    script {
                        sh 'npm i -g minidev --registry=https://registry.npmmirror.com'
                        def min_no = sh(  returnStdout: true, script: 'minidev app get-uploaded-version-list -a 20210xxx633620 | tail -n 2 | head -n 1 | awk \'{print $2}\'')
                        echo "min_no: ${min_no}"
                        if (min_no.toInteger() > 14) {
                            def min_version = sh(  returnStdout: true, script: 'minidev app get-uploaded-version-list -a 20xxx3128633620 | tail -n 2 | head -n 1 | awk \'{print $6}\'')
                            echo "min_version: ${min_version}"
                            def del_result = sh(  returnStdout: true, script: "minidev app delete-version -a 20210xxx33620 --version ${min_version}")
                            echo "del_result: ${del_result}"
                        }
                        def npm_install_res = sh(  returnStdout: true, script: 'npm install')
                        def minidev_build_res = sh(  returnStdout: true, script: 'minidev build --minify')
                        e_qr_code = sh(  returnStdout: true, script: 'minidev upload -a 2021003128633620 -e | tail -n 1 | awk \'{print $2}\'')
                        e_version = sh(  returnStdout: true, script: 'minidev app get-uploaded-version -a 2021003128633620 | awk \'{print $4}\'')
                    }                    
                    }
                    container('ossutil') {
                    script {
                        sh 'apt update'
                        sh 'apt -y install curl'
                        sh "curl -Lo ${env.giteeSourceRepoName}.jpg ${e_qr_code}"
                        sh "ossutil config -e ${ExperienceQRCodeEndpoint} -i ${ExperienceQRCodeAccessKeyID} -k ${ExperienceQRCodeAccessKeySecret}"
                        sh "ossutil cp -f ${env.giteeSourceRepoName}.jpg ${ExperienceQRCodeBucket}/zhifubao/"
                    }
                }
                    echo "e_qr_code = ${e_qr_code}"
                }
                post {
                    failure {
                        dingtalk (robot:'80711b3b-29da-4xx8-a35d-22edde55d491',
                        type:'MARKDOWN',
                        title: "支付宝版本构建失败",
                        text: [
                            "# 支付宝版本-构建失败",
                            "",
                            "---",
                            "> 仓库信息",
                            "- 仓库: ${env.giteeSourceRepoName}",
                            "- 仓库地址: ${env.giteeSourceRepoURL}",
                            "- 触发事件: ${env.giteeActionType}",
                            "- 目标分支: ${env.giteeBranch}",
                            "- 发起人: ${env.giteeUserName}"
                        ]
                        )
                    }
                    success {
                        dingtalk (robot:'80711b3b-29da-4xx8-a35d-22edde55d491',
                        type:'MARKDOWN',
                        title: "支付宝版本构建成功",
                        text: [
                            "# 支付宝版本-构建成功",
                            "> 版本号: ${e_version}",
                            "![](${e_qr_code})",
                            "",
                            "---",
                            "> 仓库信息",
                            "- 仓库: ${env.giteeSourceRepoName}",
                            "- 仓库地址: ${env.giteeSourceRepoURL}",
                            "- 触发事件: ${env.giteeActionType}",
                            "- 目标分支: ${env.giteeBranch}",
                            "- 发起人: ${env.giteeUserName}"
                        ]
                        )
                    }
            }
            }
        
        }
}

def e_qr_code = "https://XXXXXXX.oss-cn-hangzhou.aliyuncs.com/weixin/${env.giteeSourceRepoName}.jpg"
// def e_version = "0"
pipeline{
    agent {
        kubernetes{
            cloud 'kubernetes'
            yaml '''apiVersion: "v1"
kind: "Pod"
metadata:
  namespace: "default"
spec:
  containers:
  - command:
    - "cat"
    image: "node:16.17.1"
    imagePullPolicy: "IfNotPresent"
    name: "node"
    tty: true
    volumeMounts:
    - mountPath: "/var/run/docker.sock"
      name: "volume-0"
      readOnly: false
    - mountPath: "/home/jenkins/agent"
      name: "workspace-volume"
      readOnly: false
  - command:
    - "cat"
    image: "docker:latest"
    imagePullPolicy: "IfNotPresent"
    name: "dnd"
    tty: true
    volumeMounts:
    - mountPath: "/var/run/docker.sock"
      name: "volume-0"
      readOnly: false
    - mountPath: "/home/jenkins/agent"
      name: "workspace-volume"
      readOnly: false
  restartPolicy: "Never"
  volumes:
  - hostPath:
      path: "/var/run/docker.sock"
    name: "volume-0"
  - emptyDir:
      medium: ""
    name: "workspace-volume"
'''
        }
    }
    stages {
        stage('gitee checkout') {
            steps{
                git branch: "${env.giteeBranch}", credentialsId: 'gitee-kk', url: "${env.giteeSourceRepoHttpUrl}"
                echo "giteeBranch ${env.giteeBranch}"
                echo "giteeSourceBranch ${env.giteeSourceBranch}"
                echo "giteeActionType ${env.giteeActionType}"
                echo "giteeUserName ${env.giteeUserName}"
                echo "giteeUserEmail ${env.giteeUserEmail}"
                echo "giteeSourceRepoName ${env.giteeSourceRepoName}"
                echo "giteeSourceRepoURL ${env.giteeSourceRepoURL}"
                echo "giteeSourceRepoHttpUrl ${env.giteeSourceRepoHttpUrl}"
            }
        }
        // stage('npm build') {
        //     steps {
        //         container('node') {
        //             sh 'npm install'
        //         }
        //     }
        // }
        stage('minidev upload') {
            steps {
                container('node') {
                    script {
                        sh 'npm install -g miniprogram-ci'
                        sh 'npm install'
                        sh 'miniprogram-ci pack-npm --pp ./ --pkp ./private.wx354ced954190c2cb.key --appid wx354ced954190c2cb'
                        sh 'miniprogram-ci upload  --pp ./ --pkp ./private.wx354ced954190c2cb.key  --appid wx354ced954190c2cb --enable-minify true --enable-es6 true --enable-es7 true --uv 3.0.0  -r 1'
                    }                    
                    }
                }
                post {
                    failure {
                        dingtalk (robot:'80711b3b-29da-4368-a35d-22edde55d491',
                        type:'MARKDOWN',
                        title: "微信版本构建失败",
                        text: [
                            "# 微信版本-构建失败",
                            "",
                            "---",
                            "> 仓库信息",
                            "- 仓库: ${env.giteeSourceRepoName}",
                            "- 仓库地址: ${env.giteeSourceRepoURL}",
                            "- 触发事件: ${env.giteeActionType}",
                            "- 目标分支: ${env.giteeBranch}",
                            "- 发起人: ${env.giteeUserName}"
                        ]
                        )
                    }
                    success {
                        dingtalk (robot:'80711b3b-29da-4368-a35d-22edde55d491',
                        type:'MARKDOWN',
                        title: "微信版本构建成功",
                        text: [
                            "# 微信版本-构建成功",
                            // "> 版本号: ${e_version}",
                            "![](${e_qr_code})",
                            "",
                            "---",
                            "> 仓库信息",
                            "- 仓库: ${env.giteeSourceRepoName}",
                            "- 仓库地址: ${env.giteeSourceRepoURL}",
                            "- 触发事件: ${env.giteeActionType}",
                            "- 目标分支: ${env.giteeBranch}",
                            "- 发起人: ${env.giteeUserName}"
                        ]
                        )
                    }
            }
            }
        
        }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值