Library/.drone.yml

96 lines
2.2 KiB
YAML

workspace:
base: /srv/app
path: src/git.mowie.cc/konrad/Library
clone:
git:
image: plugins/git
depth: 50
tags: true
pipeline:
build-backend:
image: webhippie/golang:edge
pull: true
group: build
environment:
TAGS: bindata sqlite
GOPATH: /srv/app
commands:
- make clean
- make lint
- make fmt-check
- make build
when:
event: [ push, tag, pull_request ]
build-frontend:
image: webhippie/nodejs:current
pull: true
group: build
commands:
- cd frontend/
- npm install
- npm run build
when:
event: [ push, tag, pull_request ]
# Build a release when tagging
static:
image: karalabe/xgo-latest:latest
pull: true
environment:
TAGS: bindata sqlite
GOPATH: /srv/app
commands:
- make release
when:
event: [push, tag, deployment]
# release:
# image: plugins/s3:1
# pull: true
# secrets: [ aws_access_key_id, aws_secret_access_key ]
# bucket: library-release
# endpoint: https://storage.kolaente.de
# path_style: true
# strip_prefix: dist/release/
# source: dist/release/**/*
# target: /${DRONE_TAG##v}
# when:
# event: [ tag ]
# release:
# image: plugins/s3:1
# pull: true
# secrets: [ aws_access_key_id, aws_secret_access_key ]
# bucket: library-release
# endpoint: https://storage.kolaente.de
# path_style: true
# strip_prefix: dist/release/
# source: dist/release/**/*
# target: /master
# when:
# event: [ push ]
# branch: [ master ]
release-minio:
image: minio/mc
pull: true
secrets: [ aws_access_key_id, aws_secret_access_key ]
commands:
- config host add minio https://storage.kolaente.de $AWS_ACCESS_KEY_ID $AWS_SECRET_ACCESS_KEY S3v4 --insecure
- cp dist/release/* library-release/master/ -r --insecure
when:
event: [ push ]
branch: [ master ]
release-minio:
image: minio/mc
pull: true
secrets: [ aws_access_key_id, aws_secret_access_key ]
commands:
- mc config host add minio https://storage.kolaente.de $AWS_ACCESS_KEY_ID $AWS_SECRET_ACCESS_KEY S3v4 --insecure
- mc cp dist/release/* library-release/${DRONE_TAG##v}/ -r --insecure
when:
event: [ tag ]