|
|
@@ -0,0 +1,56 @@
|
|
|
+version: '1.0'
|
|
|
+name: master-pipeline
|
|
|
+displayName: MasterPipeline
|
|
|
+stages:
|
|
|
+ - stage:
|
|
|
+ name: compile
|
|
|
+ displayName: 编译
|
|
|
+ steps:
|
|
|
+ - step: build@golang
|
|
|
+ name: build_golang
|
|
|
+ displayName: Golang 构建
|
|
|
+ # 支持1.8、1.10、1.11、1.12、1.13、1.14、1.15、1.16八个版本
|
|
|
+ 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
|
|
|
+ # 非必填字段,开启后表示将构建产物暂存,但不会上传到制品库中,24小时后自动清除
|
|
|
+ artifacts:
|
|
|
+ # 构建产物名字,作为产物的唯一标识可向下传递,支持自定义,默认为BUILD_ARTIFACT。在下游可以通过${BUILD_ARTIFACT}方式引用来获取构建物地址
|
|
|
+ - name: BUILD_ARTIFACT
|
|
|
+ # 构建产物获取路径,是指代码编译完毕之后构建物的所在路径
|
|
|
+ path:
|
|
|
+ - ./output
|
|
|
+ - step: publish@general_artifacts
|
|
|
+ name: publish_general_artifacts
|
|
|
+ displayName: 上传制品
|
|
|
+ # 上游构建任务定义的产物名,默认BUILD_ARTIFACT
|
|
|
+ dependArtifact: BUILD_ARTIFACT
|
|
|
+ # 上传到制品库时的制品命名,默认output
|
|
|
+ artifactName: output
|
|
|
+ dependsOn: build_golang
|
|
|
+ - stage:
|
|
|
+ name: release
|
|
|
+ displayName: 发布
|
|
|
+ steps:
|
|
|
+ - step: publish@release_artifacts
|
|
|
+ name: publish_release_artifacts
|
|
|
+ displayName: '发布'
|
|
|
+ # 上游上传制品任务的产出
|
|
|
+ dependArtifact: output
|
|
|
+ # 发布制品版本号
|
|
|
+ version: '1.0.0.0'
|
|
|
+ # 是否开启版本号自增,默认开启
|
|
|
+ autoIncrement: true
|
|
|
+triggers:
|
|
|
+ push:
|
|
|
+ branches:
|
|
|
+ include:
|
|
|
+ - master
|