- workspace:
- base: /srv/app
- path: src/code.gitea.io/gitea
-
- clone:
- git:
- image: plugins/git:1
- depth: 50
- tags: true
-
- pipeline:
- download_translations:
- image: jonasfranz/crowdin
- pull: true
- secrets: [ crowdin_key ]
- project_identifier: gitea
- ignore_branch: true
- download: true
- export_dir: options/locale/
- when:
- event: [ push ]
- branch: [ master ]
-
- update-translations:
- image: alpine:3.6
- commands:
- - mv ./options/locale/locale_en-US.ini ./options/
- - sed -i -e 's/="/=/g' -e 's/"$$//g' ./options/locale/*.ini
- - sed -i -e 's/\\\\"/"/g' ./options/locale/*.ini
- - mv ./options/locale_en-US.ini ./options/locale/
- when:
- event: [ push ]
- branch: [ master ]
-
- git_push:
- image: appleboy/drone-git-push
- pull: true
- secrets: [ git_push_ssh_key ]
- remote: git@github.com:go-gitea/gitea.git
- force: false
- commit: true
- commit_message: "[skip ci] Updated translations via Crowdin"
- author_name: GiteaBot
- author_email: teabot@gitea.io
- when:
- event: [ push ]
- branch: [ master ]
-
- pre-build:
- image: webhippie/nodejs:latest
- pull: true
- commands:
- - npm install
- - make stylesheets-check
- when:
- event: [ push, tag, pull_request ]
-
- build-without-gcc:
- image: webhippie/golang:1.8
- pull: true
- environment:
- GOPATH: /srv/app
- commands:
- - go build -o gitea_no_gcc # test if build succeeds without the sqlite tag
- when:
- event: [ push, tag, pull_request ]
-
- build:
- image: webhippie/golang:edge
- pull: true
- environment:
- TAGS: bindata sqlite
- GOPATH: /srv/app
- commands:
- - make clean
- - make generate
- - make vet
- - make lint
- - make fmt-check
- - make misspell-check
- - make test-vendor
- - make build
- when:
- event: [ push, tag, pull_request ]
-
- test:
- image: webhippie/golang:edge
- pull: true
- group: test
- environment:
- TAGS: bindata sqlite
- GOPATH: /srv/app
- commands:
- - make unit-test-coverage
- when:
- event: [ push, pull_request ]
- branch: [ master ]
-
- test:
- image: webhippie/golang:edge
- pull: true
- group: test
- environment:
- TAGS: bindata sqlite
- GOPATH: /srv/app
- commands:
- - make test
- when:
- event: [ push, pull_request ]
- branch: [ release/* ]
-
- test:
- image: webhippie/golang:edge
- pull: true
- group: test
- environment:
- TAGS: bindata
- GOPATH: /srv/app
- commands:
- - make test
- when:
- event: [ tag ]
-
- # Commented until db locking have been resolved!
- # test-sqlite:
- # image: webhippie/golang:edge
- # pull: true
- # group: test
- # environment:
- # TAGS: bindata
- # GOPATH: /srv/app
- # commands:
- # - make test-sqlite
- # when:
- # event: [ push, tag, pull_request ]
-
- test-mysql:
- image: webhippie/golang:edge
- pull: true
- group: test
- environment:
- TAGS: bindata
- GOPATH: /srv/app
- commands:
- - make integration-test-coverage
- when:
- event: [ push, pull_request ]
- branch: [ master ]
-
- test-mysql:
- image: webhippie/golang:edge
- pull: true
- group: test
- environment:
- TAGS: bindata
- GOPATH: /srv/app
- commands:
- - make test-mysql
- when:
- event: [ tag ]
-
- test-pgsql:
- image: webhippie/golang:edge
- pull: true
- group: test
- environment:
- TAGS: bindata
- GOPATH: /srv/app
- commands:
- - make test-pgsql
- when:
- event: [ push, tag, pull_request ]
-
- generate-coverage:
- image: webhippie/golang:edge
- pull: true
- environment:
- TAGS: bindata
- GOPATH: /srv/app
- commands:
- - make coverage
- when:
- event: [ push, pull_request ]
- branch: [ master ]
-
- coverage:
- image: robertstettner/drone-codecov
- secrets: [ codecov_token ]
- files:
- - coverage.all
- when:
- event: [ push, pull_request ]
- branch: [ master ]
-
- static:
- image: karalabe/xgo-latest:latest
- pull: true
- environment:
- TAGS: bindata sqlite
- GOPATH: /srv/app
- commands:
- - make release
- when:
- event: [ push, tag ]
-
- build_docs:
- image: webhippie/hugo:latest
- pull: true
- commands:
- - cd docs
- - make trans-copy
- - make clean
- - make build
-
- docker_docs:
- image: plugins/docker:17.05
- pull: true
- secrets: [ docker_username, docker_password ]
- repo: gitea/docs
- context: docs
- dockerfile: docs/Dockerfile
- tags: [ '${DRONE_BRANCH##release/v}' ]
- when:
- event: [ push ]
- branch: [ release/* ]
-
- docker_docs:
- image: plugins/docker:17.05
- pull: true
- secrets: [ docker_username, docker_password ]
- repo: gitea/docs
- context: docs
- dockerfile: docs/Dockerfile
- tags: [ 'latest' ]
- when:
- event: [ push ]
- branch: [ master ]
-
- docker:
- image: plugins/docker:17.05
- pull: true
- secrets: [ docker_username, docker_password ]
- repo: gitea/gitea
- tags: [ '${DRONE_TAG##v}' ]
- when:
- event: [ tag ]
-
- docker:
- image: plugins/docker:17.05
- pull: true
- secrets: [ docker_username, docker_password ]
- repo: gitea/gitea
- tags: [ '${DRONE_BRANCH##release/v}' ]
- when:
- event: [ push ]
- branch: [ release/* ]
-
- docker:
- image: plugins/docker:17.05
- pull: true
- secrets: [ docker_username, docker_password ]
- repo: gitea/gitea
- tags: [ 'latest' ]
- when:
- event: [ push ]
- branch: [ master ]
-
- release:
- image: plugins/s3:1
- pull: true
- secrets: [ aws_access_key_id, aws_secret_access_key ]
- bucket: releases
- endpoint: https://storage.gitea.io
- path_style: true
- strip_prefix: dist/release/
- source: dist/release/*
- target: /gitea/${DRONE_TAG##v}
- when:
- event: [ tag ]
-
- release:
- image: plugins/s3:1
- pull: true
- secrets: [ aws_access_key_id, aws_secret_access_key ]
- bucket: releases
- endpoint: https://storage.gitea.io
- path_style: true
- strip_prefix: dist/release/
- source: dist/release/*
- target: /gitea/${DRONE_BRANCH##release/v}
- when:
- event: [ push ]
- branch: [ release/* ]
-
- release:
- image: plugins/s3:1
- pull: true
- secrets: [ aws_access_key_id, aws_secret_access_key ]
- bucket: releases
- endpoint: https://storage.gitea.io
- path_style: true
- strip_prefix: dist/release/
- source: dist/release/*
- target: /gitea/master
- when:
- event: [ push ]
- branch: [ master ]
-
- github:
- image: plugins/github-release:1
- pull: true
- secrets: [ github_token ]
- files:
- - dist/release/*
- when:
- event: [ tag ]
-
- upload_translations:
- image: jonasfranz/crowdin
- pull: true
- secrets: [ crowdin_key ]
- project_identifier: gitea
- ignore_branch: true
- download: false
- files:
- locale_en-US.ini: options/locale/locale_en-US.ini
- when:
- event: [ push ]
- branch: [ master ]
-
- discord:
- image: appleboy/drone-discord:1.0.0
- pull: true
- secrets: [ discord_webhook_id, discord_webhook_token ]
- when:
- event: [ push, tag, pull_request ]
- status: [ changed, failure ]
-
- services:
- mysql:
- image: mysql:5.7
- environment:
- - MYSQL_DATABASE=test
- - MYSQL_ALLOW_EMPTY_PASSWORD=yes
- when:
- event: [ push, tag, pull_request ]
-
- pgsql:
- image: postgres:9.5
- environment:
- - POSTGRES_DB=test
- when:
- event: [ push, tag, pull_request ]
|