栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

Android持续化集成coding自动打包

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Android持续化集成coding自动打包

Android持续化集成coding自动打包

一、在coding创建DevOps项目模板
1.DevOps模板提供持续化集成相关功能(构建计划、制品库)

二、在创建好的DevOps项目模板里创建代码仓库
1.上传项目代码至代码仓库
三、创建构建计划
1.可选择coding提供的Android构建过程或者自定义构建过程

2.自定义构建过程(选择静态配置的Jenkinsfile)

四、使用coding制品库存放打包好的apk文件
1.创建制品库,使用coding创建项目制品库
2.创建构建计划,使用coding持续化集成创建构建计划,构建计划使用静态Jenkinsfile
3.下图为静态Jenkinsfile代码块

pipeline {
  agent any
  stages {
    stage('检出代码') {
      steps {
        checkout([$class: 'GitSCM',
        branches: [[name: GIT_BUILD_REF]],
        userRemoteConfigs: [[
          url: GIT_REPO_URL,
          credentialsId: CREDENTIALS_ID
        ]]])
      }
    }
    stage('编译构建APK') {
      steps {
        sh './gradlew clean && rm -rf ./app/build/'
        sh './gradlew assembleRelease'
      }
    }
    stage('上传apk至制品库') {
      agent any
      steps {
        script {
          sh "curl -T app/build/outputs/apk/release}
        //打印相关信息
        echo ${versionname//,/}
        echo ${versioncode//,/}
        echo apkurl=${COS_URL}$fileName
        '''
      }
    }
  }
  environment {
    //腾讯云cos存储桶域名(拼接apk名称就是完整下载链接)
    COS_URL = 'https://gyapp-android-1257050538.cos.ap-nanjing.myqcloud.com/'
    //项目名
    ENTERPRISE = 'gzmpc'
    //代码仓库名
    PROJECT = 'androidzidonghua'
    //制品库名
    ARTIFACT = 'android'
    //自定义apk名称
    CODE_DEPOT = 'gyapp'
    ARTIFACT_base = "${ENTERPRISE}-generic.pkg.coding.net"
    ARTIFACT_IMAGE = "${ARTIFACT_base}/${PROJECT}/${ARTIFACT}/${CODE_DEPOT}"
  }
}


五、使用腾讯云cos存储桶存放打包好的apk文件
1.创建腾讯云cos存储对象-存储桶,使用腾讯云cos存储桶功能创建存放apk文件地址,配置相关参数



2.创建构建计划,使用coding持续化集成创建构建计划,构建计划使用静态Jenkinsfile
3.使用coding构建计划创建cos环境变量
COS_SECRET_ID - 腾讯云访问密钥 SecretId
COS_SECRET_KEY - 腾讯云访问密钥 SecretKey
COS_BUCKET_NAME - 腾讯云 COS 存储桶名称
COS_BUCKET_REGION - 腾讯云 COS 存储桶地区(在coding上配置环境变量时取值为非中文)

4.下图为静态Jenkinsfile代码块

pipeline {
  agent any
  stages {
    stage('检出代码') {
      steps {
        checkout([$class: 'GitSCM',
        branches: [[name: GIT_BUILD_REF]],
        userRemoteConfigs: [[
          url: GIT_REPO_URL,
          credentialsId: CREDENTIALS_ID
        ]]])
      }
    }
    stage('编译构建APK') {
      steps {
        sh './gradlew clean && rm -rf ./app/build/'
        sh './gradlew assembleRelease'
      }
    }
    stage('apk上传cos') {
      steps {
        sh 'sudo pip install --upgrade pip'
        sh 'sudo pip install -U coscmd'
        sh 'coscmd config -a ${COS_SECRET_ID} -s ${COS_SECRET_KEY} -b ${COS_BUCKET_NAME} -r ${COS_BUCKET_REGION}'
        sh 'coscmd upload -r app/build/outputs/apk/release}
        //打印相关信息
        echo ${versionname//,/}
        echo ${versioncode//,/}
        echo apkurl=${COS_URL}$fileName
        '''
      }
    }
  }
  environment {
    //腾讯云cos存储桶域名(拼接apk名称就是完整下载链接)
    COS_URL = 'https://gyapp-android-1257050538.cos.ap-nanjing.myqcloud.com/'
    //项目名
    ENTERPRISE = 'gzmpc'
    //代码仓库名
    PROJECT = 'androidzidonghua'
    //制品库名
    ARTIFACT = 'android'
    //自定义apk名称
    CODE_DEPOT = 'gyapp'
    ARTIFACT_base = "${ENTERPRISE}-generic.pkg.coding.net"
    ARTIFACT_IMAGE = "${ARTIFACT_base}/${PROJECT}/${ARTIFACT}/${CODE_DEPOT}"
  }
}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/604090.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号