clone: git: image: plugins/git:next pipeline: test: image: golang:1.16 group: test commands: - make deps - make test test-frontend: image: node:10.17.0-stretch group: test commands: - (cd web/; yarn install) - (cd web/; yarn run lesshint) - (cd web/; yarn run lint --quiet) - make test-frontend test-postgres: image: golang:1.16 group: db-test environment: - DATABASE_DRIVER=postgres - DATABASE_CONFIG=host=postgres user=postgres dbname=postgres sslmode=disable commands: - go test -timeout 30s github.com/woodpecker-ci/woodpecker/store/datastore test-mysql: image: golang:1.16 group: db-test environment: - DATABASE_DRIVER=mysql - DATABASE_CONFIG=root@tcp(mysql:3306)/test?parseTime=true commands: - go test -timeout 30s github.com/woodpecker-ci/woodpecker/store/datastore build-frontend: image: node:10.17.0-stretch commands: - make build-frontend build: image: golang:1.16 commands: - go get github.com/woodpecker-ci/togo - (cd web/; go generate ./...) - ./.drone.sh when: event: [ push, tag ] # publish-server-alpine: # image: plugins/docker # repo: woodpeckerci/woodpecker-server # dockerfile: Dockerfile.alpine # secrets: [ docker_username, docker_password ] # tag: [ alpine ] # when: # branch: master # event: push build-cli: image: golang:1.16 commands: sh .cli.sh publish-server: image: plugins/docker repo: woodpeckerci/woodpecker-server secrets: [ docker_username, docker_password ] tag: [ latest ] when: branch: master event: push publish-agent: image: plugins/docker repo: woodpeckerci/woodpecker-agent dockerfile: Dockerfile.agent secrets: [ docker_username, docker_password ] tag: [ latest ] when: branch: master event: push # publish-agent-alpine: # image: plugins/docker # repo: woodpeckerci/woodpecker-agent # dockerfile: Dockerfile.agent.alpine # secrets: [ docker_username, docker_password ] # tag: [ alpine ] # when: # branch: master # event: push # release-server-alpine: # image: plugins/docker # repo: woodpeckerci/woodpecker-server # dockerfile: Dockerfile.alpine # secrets: [ docker_username, docker_password ] # tag: "${DRONE_TAG}-alpine" # when: # event: tag # # release-agent-alpine: # image: plugins/docker # repo: woodpeckerci/woodpecker-agent # dockerfile: Dockerfile.agent.alpine # secrets: [ docker_username, docker_password ] # tag: "${DRONE_TAG}-alpine" # when: # event: tag release-server: image: plugins/docker repo: woodpeckerci/woodpecker-server secrets: [ docker_username, docker_password ] tag: ${DRONE_TAG} when: event: tag release-agent: image: plugins/docker repo: woodpeckerci/woodpecker-agent dockerfile: Dockerfile.agent secrets: [ docker_username, docker_password ] tag: ${DRONE_TAG} when: event: tag release-cli: image: plugins/github-release files: - cli/release/woodpecker_*.tar.gz - cli/release/woodpecker_checksums.txt secrets: - source: github_token target: github_release_api_key when: event: tag services: postgres: image: postgres:9.6 ports: ["5432"] environment: - POSTGRES_USER=postgres - POSTGRES_HOST_AUTH_METHOD=trust mysql: image: mysql:5.6.27 ports: ["3306"] environment: - MYSQL_DATABASE=test - MYSQL_ALLOW_EMPTY_PASSWORD=yes