schnutibox/.drone.yml
Marvin Steadfast 4a21568bcd
Some checks failed
continuous-integration/drone/push Build is failing
ci: try to run integration test in drone
2021-06-01 14:25:37 +02:00

93 lines
1.9 KiB
YAML

---
kind: pipeline
name: default
steps:
- name: tags
image: alpine/git
commands:
- git fetch --tags
- name: lint
image: golangci/golangci-lint:v1.39.0
commands:
- make install-tools
- make lint
depends_on:
- tags
- name: test
image: golang:1.16
privileged: true
volumes:
- name: dockersock
path: /var/run
environment:
RASPBIAN_IMAGE: /tmp/2021-05-07-raspios-buster-armhf-lite.img
commands:
- apt update
- apt install -y multipath-tools unzip
- (cd /tmp; wget https://downloads.raspberrypi.org/raspios_lite_armhf/images/raspios_lite_armhf-2021-05-28/2021-05-07-raspios-buster-armhf-lite.zip)
- (cd /tmp; unzip 2021-05-07-raspios-buster-armhf-lite.zip)
- make build-image
- make test-all
depends_on:
- tags
- lint
- name: build
image: goreleaser/goreleaser:v0.162.0
commands:
- make build
depends_on:
- tags
- lint
- test
when:
event:
exclude:
- tag
- name: release
image: goreleaser/goreleaser:v0.162.0
volumes:
- name: dockersock
path: /var/run
environment:
GITHUB_TOKEN:
from_secret: github_token
DOCKER_USERNAME:
from_secret: docker_username
DOCKER_PASSWORD:
from_secret: github_token
DOCKER_REGISTRY: ghcr.io
commands:
- sleep 5
- >
echo $DOCKER_PASSWORD |
docker login $DOCKER_REGISTRY -u $DOCKER_USERNAME --password-stdin
- goreleaser release --rm-dist
depends_on:
- tags
- lint
- test
- docker
when:
event:
- tag
services:
- name: docker
image: docker:dind
privileged: true
volumes:
- name: dockersock
path: /var/run
when:
event:
- tag
volumes:
- name: dockersock
temp: {}