feat(ci/cd): add cache #7

Merged
Kichiyaki merged 3 commits from feat/ci-cd-cache into master 2022-10-09 06:43:35 +00:00

View File

@ -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
...