aboutsummaryrefslogtreecommitdiffstats
path: root/.drone.yml
diff options
context:
space:
mode:
authorAntoine GIRARD <sapk@users.noreply.github.com>2020-01-13 11:40:10 +0100
committerGitHub <noreply@github.com>2020-01-13 11:40:10 +0100
commitb787aafc17fb0c16bdd0d9bd84a50f804bd443a6 (patch)
treebce2983818d2895787e82f1875734f9fdcc57a31 /.drone.yml
parent80bfd5145c7b159ebdad3746efe11378b282fa86 (diff)
downloadgitea-b787aafc17fb0c16bdd0d9bd84a50f804bd443a6.tar.gz
gitea-b787aafc17fb0c16bdd0d9bd84a50f804bd443a6.zip
ci: re-ordering Drone CI for optimizing time (#9719)
* ci: try re-ordering for optimizing time * ci: try re-ordering for optimizing time * ci: try re-ordering for optimizing time * ci: try re-ordering for optimizing time * ci: try re-ordering for optimizing time * ci: try re-ordering for optimizing time * ci: try offloading mysql8 to arm64 * Revert "ci: try offloading mysql8 to arm64" This reverts commit c60de5db1cf8b5984c3014a57da6490f06c8d980. * ci: try offloading pgsql to arm64 * ci: activate ldap on arm64 * ci: test mysql8 in place pgsql arm64 * chore: clean un-needed move * typo * ci: revert runnning mysql on arm64 * ci: run compliance on arm * chore: limit change * chore: readd maybe need for release fetch-tags * ci: remove docker-linux-amd64-dry-run * ci: remove docker-linux-amd64-dry-run * Revert "ci: remove docker-linux-amd64-dry-run" This reverts commit 0715f65b11c37869359aaaa5d22901da512e8184. Co-authored-by: zeripath <art27@cantab.net> Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
Diffstat (limited to '.drone.yml')
-rw-r--r--.drone.yml169
1 files changed, 88 insertions, 81 deletions
diff --git a/.drone.yml b/.drone.yml
index c3a33b3950..04c75891a2 100644
--- a/.drone.yml
+++ b/.drone.yml
@@ -1,5 +1,60 @@
---
kind: pipeline
+name: compliance
+
+platform:
+ os: linux
+ arch: arm64
+
+workspace:
+ base: /go
+ path: src/code.gitea.io/gitea
+
+steps:
+ - name: pre-build
+ pull: always
+ image: node:10 # this step is kept at the lowest version of node that we support
+ commands:
+ - make css
+ - make js
+
+ - name: build-without-gcc
+ pull: always
+ image: golang:1.11 # this step is kept as the lowest version of golang that we support
+ environment:
+ GO111MODULE: on
+ GOPROXY: off
+ commands:
+ - go build -mod=vendor -o gitea_no_gcc # test if build succeeds without the sqlite tag
+
+ - name: build-linux-386
+ pull: always
+ image: golang:1.13
+ environment:
+ GO111MODULE: on
+ GOPROXY: off
+ GOOS: linux
+ GOARCH: 386
+ commands:
+ - go build -mod=vendor -o gitea_linux_386 # test if compatible with 32 bit
+
+ - name: check
+ pull: always
+ image: golang:1.13
+ commands:
+ - make clean
+ - make golangci-lint
+ - make revive
+ - make swagger-check
+ - make swagger-validate
+ - make test-vendor
+ environment:
+ GOPROXY: https://goproxy.cn # proxy.golang.org is blocked in China, this proxy is not
+ GOSUMDB: sum.golang.org
+ TAGS: bindata sqlite sqlite_unlock_notify
+
+---
+kind: pipeline
name: testing
platform:
@@ -54,51 +109,11 @@ steps:
exclude:
- pull_request
- - name: pre-build
- pull: always
- image: node:10 # this step is kept at the lowest version of node that we support
- commands:
- - make css
- - make js
-
- - name: build-without-gcc
- pull: always
- image: golang:1.11 # this step is kept as the lowest version of golang that we support
- environment:
- GO111MODULE: on
- GOPROXY: off
- commands:
- - curl -sL https://deb.nodesource.com/setup_12.x | bash - && apt -y install nodejs
- - go build -mod=vendor -o gitea_no_gcc # test if build succeeds without the sqlite tag
-
- - name: build-linux-386
- pull: always
- image: golang:1.13
- environment:
- GO111MODULE: on
- GOPROXY: off
- GOOS: linux
- GOARCH: 386
- commands:
- - curl -sL https://deb.nodesource.com/setup_12.x | bash - && apt -y install nodejs
- - go build -mod=vendor -o gitea_linux_386 # test if compatible with 32 bit
-
- - name: golangci-lint
- pull: always
- image: golangci/golangci-lint:v1.22.2
- commands:
- - golangci-lint run -v --timeout 5m
-
- name: build
pull: always
image: golang:1.13
commands:
- curl -sL https://deb.nodesource.com/setup_12.x | bash - && apt -y install nodejs
- - make clean
- - make revive
- - make swagger-check
- - make swagger-validate
- - make test-vendor
- make build
environment:
GOPROXY: https://goproxy.cn # proxy.golang.org is blocked in China, this proxy is not
@@ -113,8 +128,6 @@ steps:
environment:
GOPROXY: off
TAGS: bindata sqlite sqlite_unlock_notify
- depends_on:
- - build
when:
branch:
- master
@@ -130,8 +143,6 @@ steps:
environment:
GOPROXY: off
TAGS: bindata sqlite sqlite_unlock_notify
- depends_on:
- - build
when:
branch:
- "release/*"
@@ -583,7 +594,7 @@ steps:
---
kind: pipeline
-name: docker-linux-amd64
+name: docker-linux-amd64-release
platform:
os: linux
@@ -600,7 +611,6 @@ trigger:
ref:
- refs/heads/master
- "refs/tags/**"
- - "refs/pull/**"
steps:
- name: fetch-tags
@@ -608,23 +618,6 @@ steps:
image: docker:git
commands:
- git fetch --tags --force
- when:
- event:
- exclude:
- - pull_request
-
- - name: dryrun
- pull: always
- image: plugins/docker:linux-amd64
- settings:
- dry_run: true
- repo: gitea/gitea
- tags: linux-amd64
- build_args:
- - GOPROXY=off
- when:
- event:
- - pull_request
- name: publish
pull: always
@@ -646,7 +639,7 @@ steps:
---
kind: pipeline
-name: docker-linux-arm64
+name: docker-linux-arm64-dry-run
platform:
os: linux
@@ -657,25 +650,13 @@ workspace:
path: src/code.gitea.io/gitea
depends_on:
- - testing
+ - compliance
trigger:
ref:
- - refs/heads/master
- - "refs/tags/**"
- "refs/pull/**"
steps:
- - name: fetch-tags
- pull: default
- image: docker:git
- commands:
- - git fetch --tags --force
- when:
- event:
- exclude:
- - pull_request
-
- name: dryrun
pull: always
image: plugins/docker:linux-arm64
@@ -689,6 +670,32 @@ steps:
event:
- pull_request
+---
+kind: pipeline
+name: docker-linux-arm64-release
+
+platform:
+ os: linux
+ arch: arm64
+
+workspace:
+ base: /go
+ path: src/code.gitea.io/gitea
+
+depends_on:
+ - testing
+
+trigger:
+ ref:
+ - refs/heads/master
+ - "refs/tags/**"
+steps:
+ - name: fetch-tags
+ pull: default
+ image: docker:git
+ commands:
+ - git fetch --tags --force
+
- name: publish
pull: always
image: plugins/docker:linux-arm64
@@ -734,8 +741,8 @@ trigger:
- "refs/tags/**"
depends_on:
- - docker-linux-amd64
- - docker-linux-arm64
+ - docker-linux-amd64-release
+ - docker-linux-arm64-release
---
kind: pipeline
@@ -762,8 +769,8 @@ depends_on:
- translations
- release-version
- release-master
- - docker-linux-amd64
- - docker-linux-arm64
+ - docker-linux-amd64-release
+ - docker-linux-arm64-release
- docker-manifest
- docs