feat(ci/cd): add cache #7
120
.drone.yml
120
.drone.yml
|
@ -4,13 +4,49 @@ type: docker
|
||||||
name: test
|
name: test
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
|
- name: restore-cache
|
||||||
|
image: meltwater/drone-cache:v1.3.0
|
||||||
|
environment:
|
||||||
|
AWS_ACCESS_KEY_ID:
|
||||||
|
from_secret: s3_access_key
|
||||||
|
AWS_SECRET_ACCESS_KEY:
|
||||||
|
from_secret: s3_secret_key
|
||||||
|
settings:
|
||||||
|
restore: true
|
||||||
|
cache_key: "{{ .Repo.Owner }}_{{ .Repo.Name }}_{{ checksum \"go.mod\" }}_{{ checksum \"go.sum\" }}_{{ arch }}_{{ os }}"
|
||||||
|
bucket: drone-cache
|
||||||
|
region: eu-central-1
|
||||||
|
path_style: true
|
||||||
|
endpoint: https://minio.dwysokinski.me
|
||||||
|
mount:
|
||||||
|
- .cache/test/go-mod
|
||||||
|
- .cache/test/go-build
|
||||||
- name: test
|
- name: test
|
||||||
image: golang:1.19
|
image: golang:1.19
|
||||||
environment:
|
environment:
|
||||||
TESTS_DB_DSN: postgres://postgres:dcbot@database:5432/dcbot?sslmode=disable
|
TESTS_DB_DSN: postgres://postgres:dcbot@database:5432/dcbot?sslmode=disable
|
||||||
|
GOMODCACHE: /drone/src/.cache/test/go-mod
|
||||||
|
GOCACHE: /drone/src/.cache/test/go-build
|
||||||
commands:
|
commands:
|
||||||
- make generate
|
- make generate
|
||||||
- go test -race -coverprofile=coverage.txt -covermode=atomic ./...
|
- go test -race -coverprofile=coverage.txt -covermode=atomic ./...
|
||||||
|
- name: rebuild-cache
|
||||||
|
image: meltwater/drone-cache:v1.3.0
|
||||||
|
environment:
|
||||||
|
AWS_ACCESS_KEY_ID:
|
||||||
|
from_secret: s3_access_key
|
||||||
|
AWS_SECRET_ACCESS_KEY:
|
||||||
|
from_secret: s3_secret_key
|
||||||
|
settings:
|
||||||
|
rebuild: true
|
||||||
|
cache_key: "{{ .Repo.Owner }}_{{ .Repo.Name }}_{{ checksum \"go.mod\" }}_{{ checksum \"go.sum\" }}_{{ arch }}_{{ os }}"
|
||||||
|
bucket: drone-cache
|
||||||
|
region: eu-central-1
|
||||||
|
path_style: true
|
||||||
|
endpoint: https://minio.dwysokinski.me
|
||||||
|
mount:
|
||||||
|
- .cache/test/go-mod
|
||||||
|
- .cache/test/go-build
|
||||||
|
|
||||||
services:
|
services:
|
||||||
- name: database
|
- name: database
|
||||||
|
@ -32,12 +68,49 @@ type: docker
|
||||||
name: check-go-mod
|
name: check-go-mod
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
|
- name: restore-cache
|
||||||
|
image: meltwater/drone-cache:v1.3.0
|
||||||
|
environment:
|
||||||
|
AWS_ACCESS_KEY_ID:
|
||||||
|
from_secret: s3_access_key
|
||||||
|
AWS_SECRET_ACCESS_KEY:
|
||||||
|
from_secret: s3_secret_key
|
||||||
|
settings:
|
||||||
|
restore: true
|
||||||
|
cache_key: "{{ .Repo.Owner }}_{{ .Repo.Name }}_{{ checksum \"go.mod\" }}_{{ checksum \"go.sum\" }}_{{ arch }}_{{ os }}"
|
||||||
|
bucket: drone-cache
|
||||||
|
region: eu-central-1
|
||||||
|
path_style: true
|
||||||
|
endpoint: https://minio.dwysokinski.me
|
||||||
|
mount:
|
||||||
|
- .cache/gomod/go-mod
|
||||||
|
- .cache/gomod/go-build
|
||||||
- name: check go.mod
|
- name: check go.mod
|
||||||
image: golang:1.19
|
image: golang:1.19
|
||||||
|
environment:
|
||||||
|
GOMODCACHE: /drone/src/.cache/gomod/go-mod
|
||||||
|
GOCACHE: /drone/src/.cache/gomod/go-build
|
||||||
commands:
|
commands:
|
||||||
- make generate
|
- make generate
|
||||||
- go mod tidy
|
- go mod tidy
|
||||||
- git diff --exit-code go.mod
|
- git diff --exit-code go.mod
|
||||||
|
- name: rebuild-cache
|
||||||
|
image: meltwater/drone-cache:v1.3.0
|
||||||
|
environment:
|
||||||
|
AWS_ACCESS_KEY_ID:
|
||||||
|
from_secret: s3_access_key
|
||||||
|
AWS_SECRET_ACCESS_KEY:
|
||||||
|
from_secret: s3_secret_key
|
||||||
|
settings:
|
||||||
|
rebuild: true
|
||||||
|
cache_key: "{{ .Repo.Owner }}_{{ .Repo.Name }}_{{ checksum \"go.mod\" }}_{{ checksum \"go.sum\" }}_{{ arch }}_{{ os }}"
|
||||||
|
bucket: drone-cache
|
||||||
|
region: eu-central-1
|
||||||
|
path_style: true
|
||||||
|
endpoint: https://minio.dwysokinski.me
|
||||||
|
mount:
|
||||||
|
- .cache/gomod/go-mod
|
||||||
|
- .cache/gomod/go-build
|
||||||
|
|
||||||
trigger:
|
trigger:
|
||||||
event:
|
event:
|
||||||
|
@ -52,15 +125,60 @@ type: docker
|
||||||
name: golangci-lint
|
name: golangci-lint
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
|
- name: restore-cache
|
||||||
|
image: meltwater/drone-cache:v1.3.0
|
||||||
|
environment:
|
||||||
|
AWS_ACCESS_KEY_ID:
|
||||||
|
from_secret: s3_access_key
|
||||||
|
AWS_SECRET_ACCESS_KEY:
|
||||||
|
from_secret: s3_secret_key
|
||||||
|
settings:
|
||||||
|
restore: true
|
||||||
|
cache_key: "{{ .Repo.Owner }}_{{ .Repo.Name }}_{{ checksum \"go.mod\" }}_{{ checksum \"go.sum\" }}_{{ arch }}_{{ os }}"
|
||||||
|
bucket: drone-cache
|
||||||
|
region: eu-central-1
|
||||||
|
path_style: true
|
||||||
|
endpoint: https://minio.dwysokinski.me
|
||||||
|
mount:
|
||||||
|
- .cache/lint/go-mod
|
||||||
|
- .cache/lint/go-build
|
||||||
|
- .cache/lint/golangci-lint
|
||||||
- name: run golangci-lint
|
- name: run golangci-lint
|
||||||
image: golangci/golangci-lint:v1.50
|
image: golangci/golangci-lint:v1.50
|
||||||
|
environment:
|
||||||
|
GOMODCACHE: /drone/src/.cache/lint/go-mod
|
||||||
|
GOCACHE: /drone/src/.cache/lint/go-build
|
||||||
|
GOLANGCI_LINT_CACHE: /drone/src/.cache/lint/golangci-lint
|
||||||
commands:
|
commands:
|
||||||
- make generate
|
- make generate
|
||||||
- golangci-lint run
|
- golangci-lint run
|
||||||
|
- name: rebuild-cache
|
||||||
|
image: meltwater/drone-cache:v1.3.0
|
||||||
|
environment:
|
||||||
|
AWS_ACCESS_KEY_ID:
|
||||||
|
from_secret: s3_access_key
|
||||||
|
AWS_SECRET_ACCESS_KEY:
|
||||||
|
from_secret: s3_secret_key
|
||||||
|
settings:
|
||||||
|
rebuild: true
|
||||||
|
cache_key: "{{ .Repo.Owner }}_{{ .Repo.Name }}_{{ checksum \"go.mod\" }}_{{ checksum \"go.sum\" }}_{{ arch }}_{{ os }}"
|
||||||
|
bucket: drone-cache
|
||||||
|
region: eu-central-1
|
||||||
|
path_style: true
|
||||||
|
endpoint: https://minio.dwysokinski.me
|
||||||
|
mount:
|
||||||
|
- .cache/lint/go-mod
|
||||||
|
- .cache/lint/go-build
|
||||||
|
- .cache/lint/golangci-lint
|
||||||
|
|
||||||
trigger:
|
trigger:
|
||||||
event:
|
event:
|
||||||
- push
|
- push
|
||||||
- pull_request
|
- pull_request
|
||||||
branch:
|
branch:
|
||||||
- master
|
- master
|
||||||
|
---
|
||||||
|
kind: signature
|
||||||
|
hmac: c5bccb8f6ef7e978d2218f0330feb1e01875c06cfc3e0d9dc60b9d1365a1741f
|
||||||
|
|
||||||
|
...
|
||||||
|
|
Loading…
Reference in New Issue
Block a user