云端编译

1、Maven 构建

  • 支持版本
    • Maven:2.2.1、3.2.5、3.3.9、3.5.2、3.5.3、3.5.4、3.6.1、3.6.3八个版本
    • JDK:6、7、8、9、10、11、13、17八个版本
  • 基础镜像
    • CentOS Linux release 8.3.2011
    • 内置阿里源Maven仓库
  • 字段说明
    • 可视化配置
      Maven构建
    • yml
      - step: build@maven  name: build_maven  displayName: Maven 构建  # 支持6、7、8、9、10、11六个版本  jdkVersion: 8  # 支持2.2.1、3.2.5、3.3.9、3.5.2、3.5.3、3.5.4、3.6.1、3.6.3八个版本  mavenVersion: 3.3.9  # 构建命令  commands:  - mvn -B clean package -Dmaven.test.skip=true  # 非必填字段,开启后表示将构建产物暂存,但不会上传到制品库中,7天后自动清除  artifacts:  # 构建产物名字,作为产物的唯一标识可向下传递,支持自定义,默认为BUILD_ARTIFACT。在下游可以通过${BUILD_ARTIFACT}方式引用来获取构建物地址  - name: BUILD_ARTIFACT  # 构建产物获取路径,是指代码编译完毕之后构建物的所在路径,如通常jar包在target目录下。当前目录为代码库根目录  path:  - ./target

2、Gradle 构建

  • 支持版本
    • Gradle:支持4.1、4.2、4.3、4.4四个版本
    • JDK:6、7、8、9、10、11、13、17八个版本
  • 基础镜像
    • CentOS Linux release 8.3.2011
    • 内置阿里源Maven仓库
  • 字段说明
    • 可视化配置
      Gradle构建
    • yml
      - step: build@gradle  name: build_gradle  displayName: Gradle 构建  jdkVersion: 8  gradleVersion: 4.4  # 构建命令  commands:  - chmod +x ./gradlew  - ./gradlew build  # 非必填字段,开启后表示将构建产物暂存,但不会上传到制品库中,7天后自动清除  artifacts:  # 构建产物名字,作为产物的唯一标识可向下传递,支持自定义,默认为BUILD_ARTIFACT。在下游可以通过${BUILD_ARTIFACT}方式引用来获取构建物地址  - name: BUILD_ARTIFACT  # 构建产物获取路径,是指代码编译完毕之后构建物的所在路径,如通常jar包在target目录下。当前目录为代码库根目录  path:  - ./build

3、Ant 构建

  • 支持版本
    • Ant:支持1.6.5、1.7.1、1.8.4、1.9.16、1.10.9、1.10.11六个版本
    • JDK:6、7、8、9、10、11六个版本
  • 基础镜像
    • CentOS Linux release 8.3.2011
  • 字段说明
    • 可视化配置
      Ant构建
    • yml
      - step: build@ant  name: build_ant  displayName: Ant 构建  jdkVersion: 8  antVersion: 1.9.16  # 构建命令  commands:  - ant  # 非必填字段,开启后表示将构建产物暂存,但不会上传到制品库中,7天后自动清除  artifacts:  # 构建产物名字,作为产物的唯一标识可向下传递,支持自定义,默认为BUILD_ARTIFACT。在下游可以通过${BUILD_ARTIFACT}方式引用来获取构建物地址  - name: BUILD_ARTIFACT  # 构建产物获取路径,是指代码编译完毕之后构建物的所在路径,如通常jar包在target目录下。当前目录为代码库根目录  path:  - ./build

4、Golang 构建

  • 支持版本
    • Golang:1.8、1.10、1.11、1.12、1.13、1.14、1.15、1.16
  • 基础镜像
    • CentOS Linux release 8.3.2011
  • 字段说明
    • 可视化配置
      Golang构建
    • yml
      - step: build@golang  name: build_golang  displayName: Golang 构建  golangVersion: 1.12  # 构建命令  commands: |  mkdir output  GOOS=linux GOARCH=amd64 go build -o output/main.amd64 main.go  GOOS=linux GOARCH=386 go build -o output/main.linux32 main.go  GOOS=windows GOARCH=amd64 go build -o output/main.win64.exe main.go  GOOS=windows GOARCH=386 go build -o output/main.win32.exe main.go  GOOS=darwin GOARCH=amd64 go build -o output/main.darwin main.go   chmod +X output/main.linux32  ./output/main.linux32  # 非必填字段,开启后表示将构建产物暂存,但不会上传到制品库中,7天后自动清除  artifacts:  # 构建产物名字,作为产物的唯一标识可向下传递,支持自定义,默认为BUILD_ARTIFACT。在下游可以通过${BUILD_ARTIFACT}方式引用来获取构建物地址  - name: BUILD_ARTIFACT  # 构建产物获取路径,是指代码编译完毕之后构建物的所在路径  path:  - ./output

5、Node.js 构建

  • 支持版本
    • Node.js:8.16.2, 10.17.0, 12.16.1, 14.16.0, 15.12.0
  • 基础镜像
    • 基于CentOS 7.6,包含git、wget、Python3等常规工具
  • 字段说明
    • 可视化配置
      Node.js
    • yml
      - step: build@nodejs  name: build_nodejs  displayName: NodeJs构建  nodeVersion: 14.16.0  # 构建命令:安装依赖 -> 清除上次打包产物残留 -> 执行构建 【请根据项目实际产出进行填写】  commands:  - npm install && rm -rf ./dist && npm run build  # 非必填字段,开启后表示将构建产物暂存,但不会上传到制品库中,7天后自动清除  artifacts:  # 构建产物名字,作为产物的唯一标识可向下传递,支持自定义,默认为BUILD_ARTIFACT。在下游可以通过${BUILD_ARTIFACT}方式引用来获取构建物地址  - name: BUILD_ARTIFACT  # 构建产物获取路径,是指代码编译完毕之后构建物的所在路径  path:  - ./dist
  • 注意
    • 构建命令和打包目录请根据被打包的项目自行替换
    • 如果项目中使用的yarn、pnpm等其他构建工具请在安装依赖之前进行全局安装,使用yarn则在npm install增加npm i -g yarn如下图:
      Node.js注意

6、PHP 构建

  • 支持版本
    • PHP:支持5.6、7.0、7.1、7.2、7.3、7.4、8.0、8.1八个版本
  • 基础镜像
    • CentOS Linux release 8.3.2011
  • 字段说明
    • 可视化配置
      PHP构建
    • yml
      - step: build@php  name: build_php  displayName: PHP 构建  phpVersion: 8.0  # 构建命令  commands:  - php --version  # 非必填字段,开启后表示将构建产物暂存,但不会上传到制品库中,7天后自动清除  artifacts:  # 构建产物名字,作为产物的唯一标识可向下传递,支持自定义,默认为BUILD_ARTIFACT。在下游可以通过${BUILD_ARTIFACT}方式引用来获取构建物地址  - name: BUILD_ARTIFACT  # 构建产物获取路径,是指代码编译完毕之后构建物的所在路径  path:  - ./

7、Python 构建

  • 支持版本
    • Python:支持2.7、3.6、3.7、3.8、3.9五个版本
  • 基础镜像
    • CentOS Linux release 8.3.2011
  • 字段说明
    • 可视化配置
      Python构建
    • yml
      - step: build@python  name: build_python  displayName: Python 构建  pythonVersion: 3.9  # 构建命令  commands:   - python3 -m pip install --upgrade pip  - pip3 config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple  - pip3 install -r requirements.txt  - python3 ./main.py  # 非必填字段,开启后表示将构建产物暂存,但不会上传到制品库中,7天后自动清除  artifacts:  # 构建产物名字,作为产物的唯一标识可向下传递,支持自定义,默认为BUILD_ARTIFACT。在下游可以通过${BUILD_ARTIFACT}方式引用来获取构建物地址  - name: BUILD_ARTIFACT  # 构建产物获取路径,是指代码编译完毕之后构建物的所在路径  path:  - ./

8、Ruby 构建

  • 支持版本
    • Ruby:支持2.5.9、2.6.8、2.7.4、3.0.2四个版本
  • 基础镜像
    • 基于Ubuntu 20.04,包含git、wget等常规工具
  • 字段说明
    • 可视化配置
      输入图片说明
  • yml
step: build@ruby  name: build_ruby  displayName: Ruby 构建  rubyVersion: 3.0.2  # 构建命令  commands:  - set -ex  - bundle install  - chmod +x -R bin  - bin/rails webpacker:install  - bin/rails db:migrate RAILS_ENV=test  - bin/rails test  - RAILS_ENV=production bin/rails assets:precompile  # 非必填字段,开启后表示将构建产物暂存,但不会上传到制品库中,7天后自动清除  artifacts:  # 构建产物名字,作为产物的唯一标识可向下传递,支持自定义,默认为BUILD_ARTIFACT。在下游可以通过${BUILD_ARTIFACT}方式引用来获取构建物地址  - name: BUILD_ARTIFACT  # 构建产物获取路径,是指代码编译完毕之后构建物的所在路径  path:  - ./  

9、GCC 构建

  • 支持版本
    • GCC:支持4.8、5.5、6.5、8.4、9.4、10.3六个版本
  • 基础镜像
    • 基于Ubuntu 20.04,包含git、wget、zip、unzip、p7zip、jq等常规工具
  • 字段说明
    • 可视化配置
      输入图片说明
    • yml
    steps:  - step: build@gcc  name: build_gcc  displayName: GCC 构建  gccVersion: 4.8.5  commands:  - gcc -V  artifacts:  - name: BUILD_ARTIFACT  path:  - ./target