mirror of
				https://github.com/go-gitea/gitea.git
				synced 2025-11-03 00:05:22 -05:00 
			
		
		
		
	Our drone by necessity runs on git repositories not owned by the drone process. Unfortunately this means that git operations and thence CI builds will fail without the `safe.directory` option being set. See: https://drone.gitea.io/go-gitea/gitea/54632/2/8
		
			
				
	
	
		
			1428 lines
		
	
	
		
			29 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			1428 lines
		
	
	
		
			29 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
---
 | 
						|
kind: pipeline
 | 
						|
type: docker
 | 
						|
name: compliance
 | 
						|
 | 
						|
platform:
 | 
						|
  os: linux
 | 
						|
  arch: amd64
 | 
						|
 | 
						|
trigger:
 | 
						|
  event:
 | 
						|
    - push
 | 
						|
    - tag
 | 
						|
    - pull_request
 | 
						|
 | 
						|
volumes:
 | 
						|
  - name: deps
 | 
						|
    temp: {}
 | 
						|
 | 
						|
steps:
 | 
						|
  - name: deps-frontend
 | 
						|
    image: node:16
 | 
						|
    pull: always
 | 
						|
    commands:
 | 
						|
      - make deps-frontend
 | 
						|
 | 
						|
  - name: deps-backend
 | 
						|
    image: golang:1.18
 | 
						|
    pull: always
 | 
						|
    commands:
 | 
						|
      - make deps-backend
 | 
						|
    volumes:
 | 
						|
      - name: deps
 | 
						|
        path: /go
 | 
						|
 | 
						|
  - name: lint-frontend
 | 
						|
    image: node:16
 | 
						|
    commands:
 | 
						|
      - make lint-frontend
 | 
						|
    depends_on: [deps-frontend]
 | 
						|
 | 
						|
  - name: lint-backend
 | 
						|
    image: gitea/test_env:linux-amd64  # https://gitea.com/gitea/test-env
 | 
						|
    pull: always
 | 
						|
    commands:
 | 
						|
      - make lint-backend
 | 
						|
    environment:
 | 
						|
      GOPROXY: https://goproxy.io # proxy.golang.org is blocked in China, this proxy is not
 | 
						|
      GOSUMDB: sum.golang.org
 | 
						|
      TAGS: bindata sqlite sqlite_unlock_notify
 | 
						|
    depends_on: [deps-backend]
 | 
						|
    volumes:
 | 
						|
      - name: deps
 | 
						|
        path: /go
 | 
						|
 | 
						|
  - name: lint-backend-windows
 | 
						|
    image: gitea/test_env:linux-amd64  # https://gitea.com/gitea/test-env
 | 
						|
    commands:
 | 
						|
      - make golangci-lint-windows vet
 | 
						|
    environment:
 | 
						|
      GOPROXY: https://goproxy.io # proxy.golang.org is blocked in China, this proxy is not
 | 
						|
      GOSUMDB: sum.golang.org
 | 
						|
      TAGS: bindata sqlite sqlite_unlock_notify
 | 
						|
      GOOS: windows
 | 
						|
      GOARCH: amd64
 | 
						|
    depends_on: [deps-backend]
 | 
						|
    volumes:
 | 
						|
      - name: deps
 | 
						|
        path: /go
 | 
						|
 | 
						|
  - name: lint-backend-gogit
 | 
						|
    image: gitea/test_env:linux-amd64  # https://gitea.com/gitea/test-env
 | 
						|
    commands:
 | 
						|
      - make lint-backend
 | 
						|
    environment:
 | 
						|
      GOPROXY: https://goproxy.io # proxy.golang.org is blocked in China, this proxy is not
 | 
						|
      GOSUMDB: sum.golang.org
 | 
						|
      TAGS: bindata gogit sqlite sqlite_unlock_notify
 | 
						|
    depends_on: [deps-backend]
 | 
						|
    volumes:
 | 
						|
      - name: deps
 | 
						|
        path: /go
 | 
						|
 | 
						|
  - name: checks-frontend
 | 
						|
    image: node:16
 | 
						|
    commands:
 | 
						|
      - make checks-frontend
 | 
						|
    depends_on: [deps-frontend]
 | 
						|
 | 
						|
  - name: checks-backend
 | 
						|
    image: golang:1.18
 | 
						|
    commands:
 | 
						|
      - make checks-backend
 | 
						|
    depends_on: [deps-backend]
 | 
						|
    volumes:
 | 
						|
      - name: deps
 | 
						|
        path: /go
 | 
						|
 | 
						|
  - name: test-frontend
 | 
						|
    image: node:16
 | 
						|
    commands:
 | 
						|
      - make test-frontend
 | 
						|
    depends_on: [lint-frontend]
 | 
						|
 | 
						|
  - name: build-frontend
 | 
						|
    image: node:16
 | 
						|
    commands:
 | 
						|
      - make frontend
 | 
						|
    depends_on: [test-frontend]
 | 
						|
 | 
						|
  - name: build-backend-no-gcc
 | 
						|
    image: golang:1.17 # this step is kept as the lowest version of golang that we support
 | 
						|
    pull: always
 | 
						|
    environment:
 | 
						|
      GO111MODULE: on
 | 
						|
      GOPROXY: https://goproxy.io
 | 
						|
    commands:
 | 
						|
      - go build -o gitea_no_gcc # test if build succeeds without the sqlite tag
 | 
						|
    depends_on: [deps-backend, checks-backend]
 | 
						|
    volumes:
 | 
						|
      - name: deps
 | 
						|
        path: /go
 | 
						|
 | 
						|
  - name: build-backend-arm64
 | 
						|
    image: golang:1.18
 | 
						|
    environment:
 | 
						|
      GO111MODULE: on
 | 
						|
      GOPROXY: https://goproxy.io
 | 
						|
      GOOS: linux
 | 
						|
      GOARCH: arm64
 | 
						|
      TAGS: bindata gogit
 | 
						|
    commands:
 | 
						|
      - make backend # test cross compile
 | 
						|
      - rm ./gitea # clean
 | 
						|
    depends_on: [deps-backend, checks-backend]
 | 
						|
    volumes:
 | 
						|
      - name: deps
 | 
						|
        path: /go
 | 
						|
 | 
						|
  - name: build-backend-windows
 | 
						|
    image: golang:1.18
 | 
						|
    environment:
 | 
						|
      GO111MODULE: on
 | 
						|
      GOPROXY: https://goproxy.io
 | 
						|
      GOOS: windows
 | 
						|
      GOARCH: amd64
 | 
						|
      TAGS: bindata gogit
 | 
						|
    commands:
 | 
						|
      - go build -o gitea_windows
 | 
						|
    depends_on: [deps-backend, checks-backend]
 | 
						|
    volumes:
 | 
						|
      - name: deps
 | 
						|
        path: /go
 | 
						|
 | 
						|
  - name: build-backend-386
 | 
						|
    image: golang:1.18
 | 
						|
    environment:
 | 
						|
      GO111MODULE: on
 | 
						|
      GOPROXY: https://goproxy.io
 | 
						|
      GOOS: linux
 | 
						|
      GOARCH: 386
 | 
						|
    commands:
 | 
						|
      - go build -o gitea_linux_386 # test if compatible with 32 bit
 | 
						|
    depends_on: [deps-backend, checks-backend]
 | 
						|
    volumes:
 | 
						|
      - name: deps
 | 
						|
        path: /go
 | 
						|
 | 
						|
---
 | 
						|
kind: pipeline
 | 
						|
type: docker
 | 
						|
name: testing-amd64
 | 
						|
 | 
						|
platform:
 | 
						|
  os: linux
 | 
						|
  arch: amd64
 | 
						|
 | 
						|
depends_on:
 | 
						|
  - compliance
 | 
						|
 | 
						|
trigger:
 | 
						|
  event:
 | 
						|
    - push
 | 
						|
    - tag
 | 
						|
    - pull_request
 | 
						|
 | 
						|
volumes:
 | 
						|
  - name: deps
 | 
						|
    temp: {}
 | 
						|
 | 
						|
services:
 | 
						|
  - name: mysql
 | 
						|
    image: mysql:5.7
 | 
						|
    pull: always
 | 
						|
    environment:
 | 
						|
      MYSQL_ALLOW_EMPTY_PASSWORD: yes
 | 
						|
      MYSQL_DATABASE: test
 | 
						|
 | 
						|
  - name: mysql8
 | 
						|
    image: mysql:8
 | 
						|
    pull: always
 | 
						|
    environment:
 | 
						|
      MYSQL_ALLOW_EMPTY_PASSWORD: yes
 | 
						|
      MYSQL_DATABASE: testgitea
 | 
						|
 | 
						|
  - name: mssql
 | 
						|
    image: mcr.microsoft.com/mssql/server:latest
 | 
						|
    pull: always
 | 
						|
    environment:
 | 
						|
      ACCEPT_EULA: Y
 | 
						|
      MSSQL_PID: Standard
 | 
						|
      SA_PASSWORD: MwantsaSecurePassword1
 | 
						|
 | 
						|
  - name: ldap
 | 
						|
    image: gitea/test-openldap:latest
 | 
						|
    pull: always
 | 
						|
 | 
						|
  - name: elasticsearch
 | 
						|
    image: elasticsearch:7.5.0
 | 
						|
    pull: always
 | 
						|
    environment:
 | 
						|
      discovery.type: single-node
 | 
						|
 | 
						|
  - name: minio
 | 
						|
    image: minio/minio:RELEASE.2021-03-12T00-00-47Z
 | 
						|
    pull: always
 | 
						|
    commands:
 | 
						|
    - minio server /data
 | 
						|
    environment:
 | 
						|
      MINIO_ACCESS_KEY: 123456
 | 
						|
      MINIO_SECRET_KEY: 12345678
 | 
						|
 | 
						|
steps:
 | 
						|
  - name: fetch-tags
 | 
						|
    image: docker:git
 | 
						|
    pull: always
 | 
						|
    commands:
 | 
						|
      - git config --global --add safe.directory /drone/src
 | 
						|
      - git fetch --tags --force
 | 
						|
    when:
 | 
						|
      event:
 | 
						|
        exclude:
 | 
						|
          - pull_request
 | 
						|
 | 
						|
  - name: deps-backend
 | 
						|
    image: golang:1.18
 | 
						|
    pull: always
 | 
						|
    commands:
 | 
						|
      - make deps-backend
 | 
						|
    volumes:
 | 
						|
      - name: deps
 | 
						|
        path: /go
 | 
						|
 | 
						|
  - name: tag-pre-condition
 | 
						|
    image: drone/git
 | 
						|
    pull: always
 | 
						|
    commands:
 | 
						|
      - git update-ref refs/heads/tag_test ${DRONE_COMMIT_SHA}
 | 
						|
 | 
						|
  - name: prepare-test-env
 | 
						|
    image: gitea/test_env:linux-amd64  # https://gitea.com/gitea/test-env
 | 
						|
    pull: always
 | 
						|
    commands:
 | 
						|
      - ./build/test-env-prepare.sh
 | 
						|
 | 
						|
  - name: build
 | 
						|
    image: gitea/test_env:linux-amd64  # https://gitea.com/gitea/test-env
 | 
						|
    user: gitea
 | 
						|
    commands:
 | 
						|
      - ./build/test-env-check.sh
 | 
						|
      - make backend
 | 
						|
    environment:
 | 
						|
      GOPROXY: https://goproxy.io # proxy.golang.org is blocked in China, this proxy is not
 | 
						|
      GOSUMDB: sum.golang.org
 | 
						|
      TAGS: bindata sqlite sqlite_unlock_notify
 | 
						|
    depends_on: [deps-backend, prepare-test-env]
 | 
						|
    volumes:
 | 
						|
      - name: deps
 | 
						|
        path: /go
 | 
						|
 | 
						|
  - name: unit-test
 | 
						|
    image: gitea/test_env:linux-amd64  # https://gitea.com/gitea/test-env
 | 
						|
    user: gitea
 | 
						|
    commands:
 | 
						|
      - make unit-test-coverage test-check
 | 
						|
    environment:
 | 
						|
      GOPROXY: https://goproxy.io
 | 
						|
      TAGS: bindata sqlite sqlite_unlock_notify
 | 
						|
      RACE_ENABLED: true
 | 
						|
      GITHUB_READ_TOKEN:
 | 
						|
        from_secret: github_read_token
 | 
						|
    depends_on: [deps-backend, prepare-test-env]
 | 
						|
    volumes:
 | 
						|
      - name: deps
 | 
						|
        path: /go
 | 
						|
 | 
						|
  - name: unit-test-gogit
 | 
						|
    image: gitea/test_env:linux-amd64  # https://gitea.com/gitea/test-env
 | 
						|
    user: gitea
 | 
						|
    commands:
 | 
						|
      - make unit-test-coverage test-check
 | 
						|
    environment:
 | 
						|
      GOPROXY: https://goproxy.io
 | 
						|
      TAGS: bindata gogit sqlite sqlite_unlock_notify
 | 
						|
      RACE_ENABLED: true
 | 
						|
      GITHUB_READ_TOKEN:
 | 
						|
        from_secret: github_read_token
 | 
						|
    depends_on: [deps-backend, prepare-test-env]
 | 
						|
    volumes:
 | 
						|
      - name: deps
 | 
						|
        path: /go
 | 
						|
 | 
						|
  - name: test-mysql
 | 
						|
    image: gitea/test_env:linux-amd64  # https://gitea.com/gitea/test-env
 | 
						|
    user: gitea
 | 
						|
    commands:
 | 
						|
      - make test-mysql-migration integration-test-coverage
 | 
						|
    environment:
 | 
						|
      GOPROXY: https://goproxy.io
 | 
						|
      TAGS: bindata
 | 
						|
      RACE_ENABLED: true
 | 
						|
      TEST_LDAP: 1
 | 
						|
      USE_REPO_TEST_DIR: 1
 | 
						|
      TEST_INDEXER_CODE_ES_URL: "http://elastic:changeme@elasticsearch:9200"
 | 
						|
    depends_on: [build]
 | 
						|
    volumes:
 | 
						|
      - name: deps
 | 
						|
        path: /go
 | 
						|
 | 
						|
  - name: test-mysql8
 | 
						|
    image: gitea/test_env:linux-amd64  # https://gitea.com/gitea/test-env
 | 
						|
    user: gitea
 | 
						|
    commands:
 | 
						|
      - timeout -s ABRT 40m make test-mysql8-migration test-mysql8
 | 
						|
    environment:
 | 
						|
      GOPROXY: https://goproxy.io
 | 
						|
      TAGS: bindata
 | 
						|
      RACE_ENABLED: true
 | 
						|
      TEST_LDAP: 1
 | 
						|
      USE_REPO_TEST_DIR: 1
 | 
						|
    depends_on: [build]
 | 
						|
    volumes:
 | 
						|
      - name: deps
 | 
						|
        path: /go
 | 
						|
 | 
						|
  - name: test-mssql
 | 
						|
    image: gitea/test_env:linux-amd64  # https://gitea.com/gitea/test-env
 | 
						|
    user: gitea
 | 
						|
    commands:
 | 
						|
      - make test-mssql-migration test-mssql
 | 
						|
    environment:
 | 
						|
      GOPROXY: https://goproxy.io
 | 
						|
      TAGS: bindata
 | 
						|
      RACE_ENABLED: true
 | 
						|
      TEST_LDAP: 1
 | 
						|
      USE_REPO_TEST_DIR: 1
 | 
						|
    depends_on: [build]
 | 
						|
    volumes:
 | 
						|
      - name: deps
 | 
						|
        path: /go
 | 
						|
 | 
						|
  - name: generate-coverage
 | 
						|
    image: golang:1.18
 | 
						|
    commands:
 | 
						|
      - make coverage
 | 
						|
    environment:
 | 
						|
      GOPROXY: https://goproxy.io
 | 
						|
      TAGS: bindata
 | 
						|
    depends_on: [unit-test, test-mysql]
 | 
						|
    when:
 | 
						|
      branch:
 | 
						|
        - main
 | 
						|
      event:
 | 
						|
        - push
 | 
						|
        - pull_request
 | 
						|
 | 
						|
  - name: coverage-codecov
 | 
						|
    image: woodpeckerci/plugin-codecov:next-alpine
 | 
						|
    pull: always
 | 
						|
    settings:
 | 
						|
      files:
 | 
						|
        - coverage.all
 | 
						|
      token:
 | 
						|
        from_secret: codecov_token
 | 
						|
    depends_on: [generate-coverage]
 | 
						|
    when:
 | 
						|
      branch:
 | 
						|
        - main
 | 
						|
      event:
 | 
						|
        - push
 | 
						|
        - pull_request
 | 
						|
 | 
						|
---
 | 
						|
kind: pipeline
 | 
						|
name: testing-arm64
 | 
						|
 | 
						|
platform:
 | 
						|
  os: linux
 | 
						|
  arch: arm64
 | 
						|
 | 
						|
depends_on:
 | 
						|
  - compliance
 | 
						|
 | 
						|
trigger:
 | 
						|
  event:
 | 
						|
    - push
 | 
						|
    - tag
 | 
						|
    - pull_request
 | 
						|
 | 
						|
volumes:
 | 
						|
  - name: deps
 | 
						|
    temp: {}
 | 
						|
 | 
						|
services:
 | 
						|
  - name: pgsql
 | 
						|
    pull: default
 | 
						|
    image: postgres:10
 | 
						|
    environment:
 | 
						|
      POSTGRES_DB: test
 | 
						|
      POSTGRES_PASSWORD: postgres
 | 
						|
 | 
						|
  - name: ldap
 | 
						|
    pull: default
 | 
						|
    image: gitea/test-openldap:latest
 | 
						|
 | 
						|
steps:
 | 
						|
  - name: fetch-tags
 | 
						|
    image: docker:git
 | 
						|
    pull: always
 | 
						|
    commands:
 | 
						|
      - git config --global --add safe.directory /drone/src
 | 
						|
      - git fetch --tags --force
 | 
						|
    when:
 | 
						|
      event:
 | 
						|
        exclude:
 | 
						|
          - pull_request
 | 
						|
 | 
						|
  - name: deps-backend
 | 
						|
    image: golang:1.18
 | 
						|
    pull: always
 | 
						|
    commands:
 | 
						|
      - make deps-backend
 | 
						|
    volumes:
 | 
						|
      - name: deps
 | 
						|
        path: /go
 | 
						|
 | 
						|
  - name: prepare-test-env
 | 
						|
    image: gitea/test_env:linux-arm64  # https://gitea.com/gitea/test-env
 | 
						|
    pull: always
 | 
						|
    commands:
 | 
						|
      - ./build/test-env-prepare.sh
 | 
						|
 | 
						|
  - name: build
 | 
						|
    image: gitea/test_env:linux-arm64  # https://gitea.com/gitea/test-env
 | 
						|
    user: gitea
 | 
						|
    commands:
 | 
						|
      - ./build/test-env-check.sh
 | 
						|
      - make backend
 | 
						|
    environment:
 | 
						|
      GOPROXY: https://goproxy.io # proxy.golang.org is blocked in China, this proxy is not
 | 
						|
      GOSUMDB: sum.golang.org
 | 
						|
      TAGS: bindata gogit sqlite sqlite_unlock_notify
 | 
						|
    depends_on: [deps-backend, prepare-test-env]
 | 
						|
    volumes:
 | 
						|
      - name: deps
 | 
						|
        path: /go
 | 
						|
 | 
						|
  - name: test-sqlite
 | 
						|
    image: gitea/test_env:linux-arm64  # https://gitea.com/gitea/test-env
 | 
						|
    user: gitea
 | 
						|
    commands:
 | 
						|
      - timeout -s ABRT 40m make test-sqlite-migration test-sqlite
 | 
						|
    environment:
 | 
						|
      GOPROXY: https://goproxy.io
 | 
						|
      TAGS: bindata gogit sqlite sqlite_unlock_notify
 | 
						|
      RACE_ENABLED: true
 | 
						|
      TEST_TAGS: gogit sqlite sqlite_unlock_notify
 | 
						|
      USE_REPO_TEST_DIR: 1
 | 
						|
    depends_on: [build]
 | 
						|
    volumes:
 | 
						|
      - name: deps
 | 
						|
        path: /go
 | 
						|
 | 
						|
  - name: test-pgsql
 | 
						|
    image: gitea/test_env:linux-arm64  # https://gitea.com/gitea/test-env
 | 
						|
    user: gitea
 | 
						|
    commands:
 | 
						|
      - timeout -s ABRT 40m make test-pgsql-migration test-pgsql
 | 
						|
    environment:
 | 
						|
      GOPROXY: https://goproxy.io
 | 
						|
      TAGS: bindata gogit
 | 
						|
      RACE_ENABLED: true
 | 
						|
      TEST_TAGS: gogit
 | 
						|
      TEST_LDAP: 1
 | 
						|
      USE_REPO_TEST_DIR: 1
 | 
						|
    depends_on: [build]
 | 
						|
    volumes:
 | 
						|
      - name: deps
 | 
						|
        path: /go
 | 
						|
 | 
						|
---
 | 
						|
kind: pipeline
 | 
						|
name: update_translations
 | 
						|
 | 
						|
platform:
 | 
						|
  os: linux
 | 
						|
  arch: arm64
 | 
						|
 | 
						|
trigger:
 | 
						|
  branch:
 | 
						|
    - main
 | 
						|
  event:
 | 
						|
    - cron
 | 
						|
  cron:
 | 
						|
    - update_translations
 | 
						|
 | 
						|
steps:
 | 
						|
  - name: download
 | 
						|
    image: jonasfranz/crowdin
 | 
						|
    pull: always
 | 
						|
    settings:
 | 
						|
      download: true
 | 
						|
      export_dir: options/locale/
 | 
						|
      ignore_branch: true
 | 
						|
      project_identifier: gitea
 | 
						|
    environment:
 | 
						|
      CROWDIN_KEY:
 | 
						|
        from_secret: crowdin_key
 | 
						|
 | 
						|
  - name: update
 | 
						|
    image: alpine:3.13
 | 
						|
    pull: always
 | 
						|
    commands:
 | 
						|
      - ./build/update-locales.sh
 | 
						|
 | 
						|
  - name: push
 | 
						|
    image: appleboy/drone-git-push
 | 
						|
    pull: always
 | 
						|
    settings:
 | 
						|
      author_email: "teabot@gitea.io"
 | 
						|
      author_name: GiteaBot
 | 
						|
      branch: main
 | 
						|
      commit: true
 | 
						|
      commit_message: "[skip ci] Updated translations via Crowdin"
 | 
						|
      remote: "git@github.com:go-gitea/gitea.git"
 | 
						|
    environment:
 | 
						|
      GIT_PUSH_SSH_KEY:
 | 
						|
        from_secret: git_push_ssh_key
 | 
						|
 | 
						|
  - name: upload_translations
 | 
						|
    image: jonasfranz/crowdin
 | 
						|
    pull: always
 | 
						|
    settings:
 | 
						|
      files:
 | 
						|
        locale_en-US.ini: options/locale/locale_en-US.ini
 | 
						|
      ignore_branch: true
 | 
						|
      project_identifier: gitea
 | 
						|
    environment:
 | 
						|
      CROWDIN_KEY:
 | 
						|
        from_secret: crowdin_key
 | 
						|
 | 
						|
---
 | 
						|
kind: pipeline
 | 
						|
type: docker
 | 
						|
name: update_gitignore_and_licenses
 | 
						|
 | 
						|
platform:
 | 
						|
  os: linux
 | 
						|
  arch: arm64
 | 
						|
 | 
						|
trigger:
 | 
						|
  branch:
 | 
						|
    - main
 | 
						|
  event:
 | 
						|
    - cron
 | 
						|
  cron:
 | 
						|
    - update_gitignore_and_licenses
 | 
						|
 | 
						|
steps:
 | 
						|
  - name: download
 | 
						|
    image: golang:1.18
 | 
						|
    pull: always
 | 
						|
    commands:
 | 
						|
      - timeout -s ABRT 40m make generate-license generate-gitignore
 | 
						|
 | 
						|
  - name: push
 | 
						|
    image: appleboy/drone-git-push
 | 
						|
    pull: always
 | 
						|
    settings:
 | 
						|
      author_email: "teabot@gitea.io"
 | 
						|
      author_name: GiteaBot
 | 
						|
      branch: main
 | 
						|
      commit: true
 | 
						|
      commit_message: "[skip ci] Updated licenses and gitignores "
 | 
						|
      remote: "git@github.com:go-gitea/gitea.git"
 | 
						|
    environment:
 | 
						|
      GIT_PUSH_SSH_KEY:
 | 
						|
        from_secret: git_push_ssh_key
 | 
						|
 | 
						|
---
 | 
						|
kind: pipeline
 | 
						|
type: docker
 | 
						|
name: release-latest
 | 
						|
 | 
						|
platform:
 | 
						|
  os: linux
 | 
						|
  arch: amd64
 | 
						|
 | 
						|
workspace:
 | 
						|
  base: /source
 | 
						|
  path: /
 | 
						|
 | 
						|
trigger:
 | 
						|
  branch:
 | 
						|
    - main
 | 
						|
    - "release/*"
 | 
						|
  event:
 | 
						|
    - push
 | 
						|
 | 
						|
depends_on:
 | 
						|
  - testing-amd64
 | 
						|
  - testing-arm64
 | 
						|
 | 
						|
volumes:
 | 
						|
  - name: deps
 | 
						|
    temp: {}
 | 
						|
 | 
						|
steps:
 | 
						|
  - name: fetch-tags
 | 
						|
    image: docker:git
 | 
						|
    pull: always
 | 
						|
    commands:
 | 
						|
      - git config --global --add safe.directory /drone/src
 | 
						|
      - git fetch --tags --force
 | 
						|
 | 
						|
  - name: deps-frontend
 | 
						|
    image: node:16
 | 
						|
    pull: always
 | 
						|
    commands:
 | 
						|
      - make deps-frontend
 | 
						|
 | 
						|
  - name: deps-backend
 | 
						|
    image: golang:1.18
 | 
						|
    pull: always
 | 
						|
    commands:
 | 
						|
      - make deps-backend
 | 
						|
    volumes:
 | 
						|
      - name: deps
 | 
						|
        path: /go
 | 
						|
 | 
						|
  - name: static
 | 
						|
    image: techknowlogick/xgo:go-1.18.x
 | 
						|
    pull: always
 | 
						|
    commands:
 | 
						|
      - curl -sL https://deb.nodesource.com/setup_16.x | bash - && apt-get install -y nodejs
 | 
						|
      - export PATH=$PATH:$GOPATH/bin
 | 
						|
      - make release
 | 
						|
    environment:
 | 
						|
      GOPROXY: https://goproxy.io # proxy.golang.org is blocked in China, this proxy is not
 | 
						|
      TAGS: bindata sqlite sqlite_unlock_notify
 | 
						|
    volumes:
 | 
						|
      - name: deps
 | 
						|
        path: /go
 | 
						|
 | 
						|
  - name: gpg-sign
 | 
						|
    image: plugins/gpgsign:1
 | 
						|
    pull: always
 | 
						|
    settings:
 | 
						|
      detach_sign: true
 | 
						|
      excludes:
 | 
						|
        - "dist/release/*.sha256"
 | 
						|
      files:
 | 
						|
        - "dist/release/*"
 | 
						|
    environment:
 | 
						|
      GPGSIGN_KEY:
 | 
						|
        from_secret: gpgsign_key
 | 
						|
      GPGSIGN_PASSPHRASE:
 | 
						|
        from_secret: gpgsign_passphrase
 | 
						|
 | 
						|
  - name: release-branch
 | 
						|
    image: woodpeckerci/plugin-s3:latest
 | 
						|
    pull: always
 | 
						|
    settings:
 | 
						|
      acl: public-read
 | 
						|
      bucket: gitea-artifacts
 | 
						|
      endpoint: https://ams3.digitaloceanspaces.com
 | 
						|
      path_style: true
 | 
						|
      source: "dist/release/*"
 | 
						|
      strip_prefix: dist/release/
 | 
						|
      target: "/gitea/${DRONE_BRANCH##release/v}"
 | 
						|
    environment:
 | 
						|
      AWS_ACCESS_KEY_ID:
 | 
						|
        from_secret: aws_access_key_id
 | 
						|
      AWS_SECRET_ACCESS_KEY:
 | 
						|
        from_secret: aws_secret_access_key
 | 
						|
    when:
 | 
						|
      branch:
 | 
						|
        - "release/*"
 | 
						|
      event:
 | 
						|
        - push
 | 
						|
 | 
						|
  - name: release-main
 | 
						|
    image: woodpeckerci/plugin-s3:latest
 | 
						|
    settings:
 | 
						|
      acl: public-read
 | 
						|
      bucket: gitea-artifacts
 | 
						|
      endpoint: https://ams3.digitaloceanspaces.com
 | 
						|
      path_style: true
 | 
						|
      source: "dist/release/*"
 | 
						|
      strip_prefix: dist/release/
 | 
						|
      target: /gitea/main
 | 
						|
    environment:
 | 
						|
      AWS_ACCESS_KEY_ID:
 | 
						|
        from_secret: aws_access_key_id
 | 
						|
      AWS_SECRET_ACCESS_KEY:
 | 
						|
        from_secret: aws_secret_access_key
 | 
						|
    when:
 | 
						|
      branch:
 | 
						|
        - main
 | 
						|
      event:
 | 
						|
        - push
 | 
						|
 | 
						|
---
 | 
						|
kind: pipeline
 | 
						|
name: release-version
 | 
						|
 | 
						|
platform:
 | 
						|
  os: linux
 | 
						|
  arch: amd64
 | 
						|
 | 
						|
workspace:
 | 
						|
  base: /source
 | 
						|
  path: /
 | 
						|
 | 
						|
trigger:
 | 
						|
  event:
 | 
						|
    - tag
 | 
						|
 | 
						|
depends_on:
 | 
						|
  - testing-arm64
 | 
						|
  - testing-amd64
 | 
						|
 | 
						|
volumes:
 | 
						|
  - name: deps
 | 
						|
    temp: {}
 | 
						|
 | 
						|
steps:
 | 
						|
  - name: fetch-tags
 | 
						|
    image: docker:git
 | 
						|
    pull: always
 | 
						|
    commands:
 | 
						|
      - git config --global --add safe.directory /drone/src
 | 
						|
      - git fetch --tags --force
 | 
						|
 | 
						|
  - name: deps-frontend
 | 
						|
    image: node:16
 | 
						|
    pull: always
 | 
						|
    commands:
 | 
						|
      - make deps-frontend
 | 
						|
 | 
						|
  - name: deps-backend
 | 
						|
    image: golang:1.18
 | 
						|
    pull: always
 | 
						|
    commands:
 | 
						|
      - make deps-backend
 | 
						|
    volumes:
 | 
						|
      - name: deps
 | 
						|
        path: /go
 | 
						|
 | 
						|
  - name: static
 | 
						|
    image: techknowlogick/xgo:go-1.18.x
 | 
						|
    pull: always
 | 
						|
    commands:
 | 
						|
      - curl -sL https://deb.nodesource.com/setup_16.x | bash - && apt-get install -y nodejs
 | 
						|
      - export PATH=$PATH:$GOPATH/bin
 | 
						|
      - make release
 | 
						|
    environment:
 | 
						|
      GOPROXY: https://goproxy.io # proxy.golang.org is blocked in China, this proxy is not
 | 
						|
      TAGS: bindata sqlite sqlite_unlock_notify
 | 
						|
    depends_on: [fetch-tags]
 | 
						|
    volumes:
 | 
						|
      - name: deps
 | 
						|
        path: /go
 | 
						|
 | 
						|
  - name: gpg-sign
 | 
						|
    image: plugins/gpgsign:1
 | 
						|
    pull: always
 | 
						|
    settings:
 | 
						|
      detach_sign: true
 | 
						|
      excludes:
 | 
						|
        - "dist/release/*.sha256"
 | 
						|
      files:
 | 
						|
        - "dist/release/*"
 | 
						|
    environment:
 | 
						|
      GPGSIGN_KEY:
 | 
						|
        from_secret: gpgsign_key
 | 
						|
      GPGSIGN_PASSPHRASE:
 | 
						|
        from_secret: gpgsign_passphrase
 | 
						|
    depends_on: [static]
 | 
						|
 | 
						|
  - name: release-tag
 | 
						|
    image: woodpeckerci/plugin-s3:latest
 | 
						|
    pull: always
 | 
						|
    settings:
 | 
						|
      acl: public-read
 | 
						|
      bucket: gitea-artifacts
 | 
						|
      endpoint: https://ams3.digitaloceanspaces.com
 | 
						|
      path_style: true
 | 
						|
      source: "dist/release/*"
 | 
						|
      strip_prefix: dist/release/
 | 
						|
      target: "/gitea/${DRONE_TAG##v}"
 | 
						|
    environment:
 | 
						|
      AWS_ACCESS_KEY_ID:
 | 
						|
        from_secret: aws_access_key_id
 | 
						|
      AWS_SECRET_ACCESS_KEY:
 | 
						|
        from_secret: aws_secret_access_key
 | 
						|
    depends_on: [gpg-sign]
 | 
						|
 | 
						|
  - name: github
 | 
						|
    image: plugins/github-release:latest
 | 
						|
    pull: always
 | 
						|
    settings:
 | 
						|
      files:
 | 
						|
        - "dist/release/*"
 | 
						|
      file_exists: overwrite
 | 
						|
    environment:
 | 
						|
      GITHUB_TOKEN:
 | 
						|
        from_secret: github_token
 | 
						|
    depends_on: [gpg-sign]
 | 
						|
 | 
						|
---
 | 
						|
kind: pipeline
 | 
						|
type: docker
 | 
						|
name: docs
 | 
						|
 | 
						|
platform:
 | 
						|
  os: linux
 | 
						|
  arch: arm64
 | 
						|
 | 
						|
depends_on:
 | 
						|
  - compliance
 | 
						|
 | 
						|
trigger:
 | 
						|
  event:
 | 
						|
    - push
 | 
						|
    - tag
 | 
						|
    - pull_request
 | 
						|
 | 
						|
steps:
 | 
						|
  - name: build-docs
 | 
						|
    image: plugins/hugo:latest
 | 
						|
    pull: always
 | 
						|
    commands:
 | 
						|
      - apk add --no-cache make bash curl
 | 
						|
      - cd docs
 | 
						|
      - make trans-copy clean build
 | 
						|
 | 
						|
  - name: publish-docs
 | 
						|
    image: techknowlogick/drone-netlify:latest
 | 
						|
    pull: always
 | 
						|
    settings:
 | 
						|
      path: docs/public/
 | 
						|
      site_id: d2260bae-7861-4c02-8646-8f6440b12672
 | 
						|
    environment:
 | 
						|
      NETLIFY_TOKEN:
 | 
						|
        from_secret: netlify_token
 | 
						|
    when:
 | 
						|
      branch:
 | 
						|
        - main
 | 
						|
      event:
 | 
						|
        - push
 | 
						|
 | 
						|
---
 | 
						|
kind: pipeline
 | 
						|
type: docker
 | 
						|
name: docker-linux-amd64-release-version
 | 
						|
 | 
						|
platform:
 | 
						|
  os: linux
 | 
						|
  arch: amd64
 | 
						|
 | 
						|
depends_on:
 | 
						|
  - testing-amd64
 | 
						|
  - testing-arm64
 | 
						|
 | 
						|
trigger:
 | 
						|
  ref:
 | 
						|
  - "refs/tags/**"
 | 
						|
  event:
 | 
						|
    exclude:
 | 
						|
    - cron
 | 
						|
 | 
						|
steps:
 | 
						|
  - name: fetch-tags
 | 
						|
    image: docker:git
 | 
						|
    pull: always
 | 
						|
    commands:
 | 
						|
      - git config --global --add safe.directory /drone/src
 | 
						|
      - git fetch --tags --force
 | 
						|
 | 
						|
  - name: publish
 | 
						|
    image: techknowlogick/drone-docker:latest
 | 
						|
    pull: always
 | 
						|
    settings:
 | 
						|
      auto_tag: true
 | 
						|
      auto_tag_suffix: linux-amd64
 | 
						|
      repo: gitea/gitea
 | 
						|
      build_args:
 | 
						|
        - GOPROXY=https://goproxy.io
 | 
						|
      password:
 | 
						|
        from_secret: docker_password
 | 
						|
      username:
 | 
						|
        from_secret: docker_username
 | 
						|
    when:
 | 
						|
      event:
 | 
						|
        exclude:
 | 
						|
        - pull_request
 | 
						|
 | 
						|
  - name: publish-rootless
 | 
						|
    image: techknowlogick/drone-docker:latest
 | 
						|
    settings:
 | 
						|
      dockerfile: Dockerfile.rootless
 | 
						|
      auto_tag: true
 | 
						|
      auto_tag_suffix: linux-amd64-rootless
 | 
						|
      repo: gitea/gitea
 | 
						|
      build_args:
 | 
						|
        - GOPROXY=https://goproxy.io
 | 
						|
      password:
 | 
						|
        from_secret: docker_password
 | 
						|
      username:
 | 
						|
        from_secret: docker_username
 | 
						|
    when:
 | 
						|
      event:
 | 
						|
        exclude:
 | 
						|
        - pull_request
 | 
						|
 | 
						|
---
 | 
						|
kind: pipeline
 | 
						|
type: docker
 | 
						|
name: docker-linux-amd64-release
 | 
						|
 | 
						|
platform:
 | 
						|
  os: linux
 | 
						|
  arch: amd64
 | 
						|
 | 
						|
depends_on:
 | 
						|
  - testing-amd64
 | 
						|
  - testing-arm64
 | 
						|
 | 
						|
trigger:
 | 
						|
  ref:
 | 
						|
  - refs/heads/main
 | 
						|
  event:
 | 
						|
    exclude:
 | 
						|
    - cron
 | 
						|
 | 
						|
steps:
 | 
						|
  - name: fetch-tags
 | 
						|
    image: docker:git
 | 
						|
    pull: always
 | 
						|
    commands:
 | 
						|
      - git config --global --add safe.directory /drone/src
 | 
						|
      - git fetch --tags --force
 | 
						|
 | 
						|
  - name: publish
 | 
						|
    image: techknowlogick/drone-docker:latest
 | 
						|
    pull: always
 | 
						|
    settings:
 | 
						|
      auto_tag: false
 | 
						|
      tags: dev-linux-amd64
 | 
						|
      repo: gitea/gitea
 | 
						|
      build_args:
 | 
						|
        - GOPROXY=https://goproxy.io
 | 
						|
      password:
 | 
						|
        from_secret: docker_password
 | 
						|
      username:
 | 
						|
        from_secret: docker_username
 | 
						|
    when:
 | 
						|
      event:
 | 
						|
        exclude:
 | 
						|
        - pull_request
 | 
						|
 | 
						|
  - name: publish-rootless
 | 
						|
    image: techknowlogick/drone-docker:latest
 | 
						|
    settings:
 | 
						|
      dockerfile: Dockerfile.rootless
 | 
						|
      auto_tag: false
 | 
						|
      tags: dev-linux-amd64-rootless
 | 
						|
      repo: gitea/gitea
 | 
						|
      build_args:
 | 
						|
        - GOPROXY=https://goproxy.io
 | 
						|
      password:
 | 
						|
        from_secret: docker_password
 | 
						|
      username:
 | 
						|
        from_secret: docker_username
 | 
						|
    when:
 | 
						|
      event:
 | 
						|
        exclude:
 | 
						|
        - pull_request
 | 
						|
 | 
						|
---
 | 
						|
kind: pipeline
 | 
						|
name: docker-linux-amd64-release-branch
 | 
						|
 | 
						|
platform:
 | 
						|
  os: linux
 | 
						|
  arch: amd64
 | 
						|
 | 
						|
depends_on:
 | 
						|
  - testing-amd64
 | 
						|
  - testing-arm64
 | 
						|
 | 
						|
trigger:
 | 
						|
  ref:
 | 
						|
  - "refs/heads/release/v*"
 | 
						|
  event:
 | 
						|
    exclude:
 | 
						|
    - cron
 | 
						|
 | 
						|
steps:
 | 
						|
  - name: fetch-tags
 | 
						|
    image: docker:git
 | 
						|
    pull: always
 | 
						|
    commands:
 | 
						|
      - git config --global --add safe.directory /drone/src
 | 
						|
      - git fetch --tags --force
 | 
						|
 | 
						|
  - name: publish
 | 
						|
    image: techknowlogick/drone-docker:latest
 | 
						|
    pull: always
 | 
						|
    settings:
 | 
						|
      auto_tag: false
 | 
						|
      tags: ${DRONE_BRANCH##release/v}-dev-linux-amd64
 | 
						|
      repo: gitea/gitea
 | 
						|
      build_args:
 | 
						|
        - GOPROXY=https://goproxy.io
 | 
						|
      password:
 | 
						|
        from_secret: docker_password
 | 
						|
      username:
 | 
						|
        from_secret: docker_username
 | 
						|
    when:
 | 
						|
      event:
 | 
						|
        exclude:
 | 
						|
        - pull_request
 | 
						|
 | 
						|
  - name: publish-rootless
 | 
						|
    image: techknowlogick/drone-docker:latest
 | 
						|
    settings:
 | 
						|
      dockerfile: Dockerfile.rootless
 | 
						|
      auto_tag: false
 | 
						|
      tags: ${DRONE_BRANCH##release/v}-dev-linux-amd64-rootless
 | 
						|
      repo: gitea/gitea
 | 
						|
      build_args:
 | 
						|
        - GOPROXY=https://goproxy.io
 | 
						|
      password:
 | 
						|
        from_secret: docker_password
 | 
						|
      username:
 | 
						|
        from_secret: docker_username
 | 
						|
    when:
 | 
						|
      event:
 | 
						|
        exclude:
 | 
						|
        - pull_request
 | 
						|
 | 
						|
---
 | 
						|
kind: pipeline
 | 
						|
type: docker
 | 
						|
name: docker-linux-arm64-dry-run
 | 
						|
 | 
						|
platform:
 | 
						|
  os: linux
 | 
						|
  arch: arm64
 | 
						|
 | 
						|
depends_on:
 | 
						|
  - compliance
 | 
						|
 | 
						|
trigger:
 | 
						|
  ref:
 | 
						|
  - "refs/pull/**"
 | 
						|
 | 
						|
steps:
 | 
						|
  - name: dryrun
 | 
						|
    image: techknowlogick/drone-docker:latest
 | 
						|
    pull: always
 | 
						|
    settings:
 | 
						|
      dry_run: true
 | 
						|
      repo: gitea/gitea
 | 
						|
      tags: linux-arm64
 | 
						|
      build_args:
 | 
						|
        - GOPROXY=https://goproxy.io
 | 
						|
    environment:
 | 
						|
      PLUGIN_MIRROR:
 | 
						|
        from_secret: plugin_mirror
 | 
						|
    when:
 | 
						|
      event:
 | 
						|
        - pull_request
 | 
						|
 | 
						|
---
 | 
						|
kind: pipeline
 | 
						|
type: docker
 | 
						|
name: docker-linux-arm64-release-version
 | 
						|
 | 
						|
platform:
 | 
						|
  os: linux
 | 
						|
  arch: arm64
 | 
						|
 | 
						|
depends_on:
 | 
						|
  - testing-amd64
 | 
						|
  - testing-arm64
 | 
						|
 | 
						|
trigger:
 | 
						|
  ref:
 | 
						|
  - "refs/tags/**"
 | 
						|
  event:
 | 
						|
    exclude:
 | 
						|
    - cron
 | 
						|
 | 
						|
steps:
 | 
						|
  - name: fetch-tags
 | 
						|
    image: docker:git
 | 
						|
    pull: always
 | 
						|
    commands:
 | 
						|
      - git config --global --add safe.directory /drone/src
 | 
						|
      - git fetch --tags --force
 | 
						|
 | 
						|
  - name: publish
 | 
						|
    image: techknowlogick/drone-docker:latest
 | 
						|
    pull: always
 | 
						|
    settings:
 | 
						|
      auto_tag: true
 | 
						|
      auto_tag_suffix: linux-arm64
 | 
						|
      repo: gitea/gitea
 | 
						|
      build_args:
 | 
						|
        - GOPROXY=https://goproxy.io
 | 
						|
      password:
 | 
						|
        from_secret: docker_password
 | 
						|
      username:
 | 
						|
        from_secret: docker_username
 | 
						|
    when:
 | 
						|
      event:
 | 
						|
        exclude:
 | 
						|
        - pull_request
 | 
						|
 | 
						|
  - name: publish-rootless
 | 
						|
    image: techknowlogick/drone-docker:latest
 | 
						|
    settings:
 | 
						|
      dockerfile: Dockerfile.rootless
 | 
						|
      auto_tag: true
 | 
						|
      auto_tag_suffix: linux-arm64-rootless
 | 
						|
      repo: gitea/gitea
 | 
						|
      build_args:
 | 
						|
        - GOPROXY=https://goproxy.io
 | 
						|
      password:
 | 
						|
        from_secret: docker_password
 | 
						|
      username:
 | 
						|
        from_secret: docker_username
 | 
						|
    when:
 | 
						|
      event:
 | 
						|
        exclude:
 | 
						|
        - pull_request
 | 
						|
 | 
						|
---
 | 
						|
kind: pipeline
 | 
						|
type: docker
 | 
						|
name: docker-linux-arm64-release
 | 
						|
 | 
						|
platform:
 | 
						|
  os: linux
 | 
						|
  arch: arm64
 | 
						|
 | 
						|
depends_on:
 | 
						|
  - testing-amd64
 | 
						|
  - testing-arm64
 | 
						|
 | 
						|
trigger:
 | 
						|
  ref:
 | 
						|
  - refs/heads/main
 | 
						|
  event:
 | 
						|
    exclude:
 | 
						|
    - cron
 | 
						|
 | 
						|
steps:
 | 
						|
  - name: fetch-tags
 | 
						|
    image: docker:git
 | 
						|
    pull: always
 | 
						|
    commands:
 | 
						|
      - git config --global --add safe.directory /drone/src
 | 
						|
      - git fetch --tags --force
 | 
						|
 | 
						|
  - name: publish
 | 
						|
    image: techknowlogick/drone-docker:latest
 | 
						|
    pull: always
 | 
						|
    settings:
 | 
						|
      auto_tag: false
 | 
						|
      tags: dev-linux-arm64
 | 
						|
      repo: gitea/gitea
 | 
						|
      build_args:
 | 
						|
        - GOPROXY=https://goproxy.io
 | 
						|
      password:
 | 
						|
        from_secret: docker_password
 | 
						|
      username:
 | 
						|
        from_secret: docker_username
 | 
						|
    when:
 | 
						|
      event:
 | 
						|
        exclude:
 | 
						|
        - pull_request
 | 
						|
 | 
						|
  - name: publish-rootless
 | 
						|
    image: techknowlogick/drone-docker:latest
 | 
						|
    settings:
 | 
						|
      dockerfile: Dockerfile.rootless
 | 
						|
      auto_tag: false
 | 
						|
      tags: dev-linux-arm64-rootless
 | 
						|
      repo: gitea/gitea
 | 
						|
      build_args:
 | 
						|
        - GOPROXY=https://goproxy.io
 | 
						|
      password:
 | 
						|
        from_secret: docker_password
 | 
						|
      username:
 | 
						|
        from_secret: docker_username
 | 
						|
    when:
 | 
						|
      event:
 | 
						|
        exclude:
 | 
						|
        - pull_request
 | 
						|
 | 
						|
---
 | 
						|
kind: pipeline
 | 
						|
name: docker-linux-arm64-release-branch
 | 
						|
 | 
						|
platform:
 | 
						|
  os: linux
 | 
						|
  arch: arm64
 | 
						|
 | 
						|
depends_on:
 | 
						|
  - testing-amd64
 | 
						|
  - testing-arm64
 | 
						|
 | 
						|
trigger:
 | 
						|
  ref:
 | 
						|
  - "refs/heads/release/v*"
 | 
						|
  event:
 | 
						|
    exclude:
 | 
						|
    - cron
 | 
						|
 | 
						|
steps:
 | 
						|
  - name: fetch-tags
 | 
						|
    image: docker:git
 | 
						|
    pull: always
 | 
						|
    commands:
 | 
						|
      - git config --global --add safe.directory /drone/src
 | 
						|
      - git fetch --tags --force
 | 
						|
 | 
						|
  - name: publish
 | 
						|
    image: techknowlogick/drone-docker:latest
 | 
						|
    pull: always
 | 
						|
    settings:
 | 
						|
      auto_tag: false
 | 
						|
      tags: ${DRONE_BRANCH##release/v}-dev-linux-arm64
 | 
						|
      repo: gitea/gitea
 | 
						|
      build_args:
 | 
						|
        - GOPROXY=https://goproxy.io
 | 
						|
      password:
 | 
						|
        from_secret: docker_password
 | 
						|
      username:
 | 
						|
        from_secret: docker_username
 | 
						|
    when:
 | 
						|
      event:
 | 
						|
        exclude:
 | 
						|
        - pull_request
 | 
						|
 | 
						|
  - name: publish-rootless
 | 
						|
    image: techknowlogick/drone-docker:latest
 | 
						|
    settings:
 | 
						|
      dockerfile: Dockerfile.rootless
 | 
						|
      auto_tag: false
 | 
						|
      tags: ${DRONE_BRANCH##release/v}-dev-linux-arm64-rootless
 | 
						|
      repo: gitea/gitea
 | 
						|
      build_args:
 | 
						|
        - GOPROXY=https://goproxy.io
 | 
						|
      password:
 | 
						|
        from_secret: docker_password
 | 
						|
      username:
 | 
						|
        from_secret: docker_username
 | 
						|
    when:
 | 
						|
      event:
 | 
						|
        exclude:
 | 
						|
        - pull_request
 | 
						|
 | 
						|
---
 | 
						|
kind: pipeline
 | 
						|
type: docker
 | 
						|
name: docker-manifest-version
 | 
						|
 | 
						|
platform:
 | 
						|
  os: linux
 | 
						|
  arch: amd64
 | 
						|
 | 
						|
steps:
 | 
						|
  - name: manifest-rootless
 | 
						|
    image: plugins/manifest
 | 
						|
    pull: always
 | 
						|
    settings:
 | 
						|
      auto_tag: true
 | 
						|
      ignore_missing: true
 | 
						|
      spec: docker/manifest.rootless.tmpl
 | 
						|
      password:
 | 
						|
        from_secret: docker_password
 | 
						|
      username:
 | 
						|
        from_secret: docker_username
 | 
						|
 | 
						|
  - name: manifest
 | 
						|
    image: plugins/manifest
 | 
						|
    settings:
 | 
						|
      auto_tag: true
 | 
						|
      ignore_missing: true
 | 
						|
      spec: docker/manifest.tmpl
 | 
						|
      password:
 | 
						|
        from_secret: docker_password
 | 
						|
      username:
 | 
						|
        from_secret: docker_username
 | 
						|
 | 
						|
trigger:
 | 
						|
  ref:
 | 
						|
  - "refs/tags/**"
 | 
						|
  event:
 | 
						|
    exclude:
 | 
						|
    - cron
 | 
						|
 | 
						|
depends_on:
 | 
						|
  - docker-linux-amd64-release-version
 | 
						|
  - docker-linux-arm64-release-version
 | 
						|
 | 
						|
---
 | 
						|
kind: pipeline
 | 
						|
type: docker
 | 
						|
name: docker-manifest
 | 
						|
 | 
						|
platform:
 | 
						|
  os: linux
 | 
						|
  arch: amd64
 | 
						|
 | 
						|
steps:
 | 
						|
  - name: manifest-rootless
 | 
						|
    pull: always
 | 
						|
    image: plugins/manifest
 | 
						|
    pull: always
 | 
						|
    settings:
 | 
						|
      auto_tag: false
 | 
						|
      ignore_missing: true
 | 
						|
      spec: docker/manifest.rootless.tmpl
 | 
						|
      password:
 | 
						|
        from_secret: docker_password
 | 
						|
      username:
 | 
						|
        from_secret: docker_username
 | 
						|
 | 
						|
  - name: manifest
 | 
						|
    image: plugins/manifest
 | 
						|
    settings:
 | 
						|
      auto_tag: false
 | 
						|
      ignore_missing: true
 | 
						|
      spec: docker/manifest.tmpl
 | 
						|
      password:
 | 
						|
        from_secret: docker_password
 | 
						|
      username:
 | 
						|
        from_secret: docker_username
 | 
						|
 | 
						|
trigger:
 | 
						|
  ref:
 | 
						|
  - refs/heads/main
 | 
						|
  - "refs/heads/release/v*"
 | 
						|
  event:
 | 
						|
    exclude:
 | 
						|
    - cron
 | 
						|
 | 
						|
depends_on:
 | 
						|
  - docker-linux-amd64-release
 | 
						|
  - docker-linux-arm64-release
 | 
						|
  - docker-linux-amd64-release-branch
 | 
						|
  - docker-linux-arm64-release-branch
 | 
						|
 | 
						|
---
 | 
						|
kind: pipeline
 | 
						|
type: docker
 | 
						|
name: notifications
 | 
						|
 | 
						|
platform:
 | 
						|
  os: linux
 | 
						|
  arch: arm64
 | 
						|
 | 
						|
clone:
 | 
						|
  disable: true
 | 
						|
 | 
						|
trigger:
 | 
						|
  branch:
 | 
						|
    - main
 | 
						|
    - "release/*"
 | 
						|
  event:
 | 
						|
    - push
 | 
						|
    - tag
 | 
						|
  status:
 | 
						|
    - success
 | 
						|
    - failure
 | 
						|
 | 
						|
depends_on:
 | 
						|
  - testing-amd64
 | 
						|
  - testing-arm64
 | 
						|
  - release-version
 | 
						|
  - release-latest
 | 
						|
  - docker-linux-amd64-release
 | 
						|
  - docker-linux-arm64-release
 | 
						|
  - docker-linux-amd64-release-version
 | 
						|
  - docker-linux-arm64-release-version
 | 
						|
  - docker-linux-amd64-release-branch
 | 
						|
  - docker-linux-arm64-release-branch
 | 
						|
  - docker-manifest
 | 
						|
  - docker-manifest-version
 | 
						|
  - docs
 | 
						|
 | 
						|
steps:
 | 
						|
  - name: discord
 | 
						|
    image: appleboy/drone-discord:1.2.4
 | 
						|
    pull: always
 | 
						|
    settings:
 | 
						|
      message: "{{#success build.status}} ✅  Build #{{build.number}} of `{{repo.name}}` succeeded.\n\n📝 Commit by {{commit.author}} on `{{commit.branch}}`:\n``` {{commit.message}} ```\n\n🌐 {{ build.link }} {{else}} ❌  Build #{{build.number}} of `{{repo.name}}` failed.\n\n📝 Commit by {{commit.author}} on `{{commit.branch}}`:\n``` {{commit.message}} ```\n\n🌐 {{ build.link }} {{/success}}\n"
 | 
						|
      webhook_id:
 | 
						|
        from_secret: discord_webhook_id
 | 
						|
      webhook_token:
 | 
						|
        from_secret: discord_webhook_token
 |