2022-07-24 12:06:31 +00:00
|
|
|
---
|
|
|
|
kind: pipeline
|
|
|
|
type: docker
|
|
|
|
name: test
|
|
|
|
|
|
|
|
steps:
|
|
|
|
- name: test
|
2023-02-02 05:52:00 +00:00
|
|
|
image: golang:1.20
|
2022-10-14 05:41:26 +00:00
|
|
|
environment:
|
2023-02-16 06:37:48 +00:00
|
|
|
TESTS_DB_DSN: postgres://postgres:twhelp@database:5432/twhelp?sslmode=disable
|
|
|
|
TESTS_AMQP_URI: amqp://twhelp:twhelp@rmq:5672/
|
2022-07-24 12:06:31 +00:00
|
|
|
commands:
|
2022-08-05 05:08:04 +00:00
|
|
|
- make generate
|
2022-07-24 12:06:31 +00:00
|
|
|
- go test -race -coverprofile=coverage.txt -covermode=atomic ./...
|
|
|
|
|
2022-09-03 14:31:29 +00:00
|
|
|
services:
|
|
|
|
- name: database
|
2023-02-16 06:37:48 +00:00
|
|
|
image: postgres:14.7
|
2022-09-03 14:31:29 +00:00
|
|
|
environment:
|
2023-02-16 06:37:48 +00:00
|
|
|
POSTGRES_DB: twhelp
|
|
|
|
POSTGRES_PASSWORD: twhelp
|
|
|
|
- name: rmq
|
|
|
|
image: rabbitmq:3.11.9-alpine
|
|
|
|
environment:
|
|
|
|
RABBITMQ_DEFAULT_USER: twhelp
|
|
|
|
RABBITMQ_DEFAULT_PASS: twhelp
|
2022-07-27 04:39:05 +00:00
|
|
|
|
2022-07-24 12:06:31 +00:00
|
|
|
trigger:
|
|
|
|
event:
|
|
|
|
- push
|
|
|
|
- pull_request
|
|
|
|
branch:
|
|
|
|
- master
|
|
|
|
|
|
|
|
---
|
|
|
|
kind: pipeline
|
|
|
|
type: docker
|
|
|
|
name: check-go-mod
|
|
|
|
|
|
|
|
steps:
|
2022-10-14 05:41:26 +00:00
|
|
|
- name: go.mod
|
2023-02-02 05:52:00 +00:00
|
|
|
image: golang:1.20
|
2022-07-24 12:06:31 +00:00
|
|
|
commands:
|
2022-08-05 05:08:04 +00:00
|
|
|
- make generate
|
2022-07-24 12:06:31 +00:00
|
|
|
- go mod tidy
|
|
|
|
- git diff --exit-code go.mod
|
|
|
|
|
|
|
|
trigger:
|
|
|
|
event:
|
|
|
|
- push
|
|
|
|
- pull_request
|
|
|
|
branch:
|
|
|
|
- master
|
|
|
|
|
|
|
|
---
|
|
|
|
kind: pipeline
|
|
|
|
type: docker
|
|
|
|
name: golangci-lint
|
|
|
|
|
|
|
|
steps:
|
2022-10-05 06:45:22 +00:00
|
|
|
- name: golangci-lint
|
2023-02-03 06:33:57 +00:00
|
|
|
image: golangci/golangci-lint:v1.51
|
2022-07-24 12:06:31 +00:00
|
|
|
commands:
|
2022-08-05 05:08:04 +00:00
|
|
|
- make generate
|
2022-07-24 12:06:31 +00:00
|
|
|
- golangci-lint run
|
|
|
|
|
|
|
|
trigger:
|
|
|
|
event:
|
|
|
|
- push
|
|
|
|
- pull_request
|
|
|
|
branch:
|
|
|
|
- master
|
2022-09-30 05:34:48 +00:00
|
|
|
|
2022-12-04 07:57:16 +00:00
|
|
|
---
|
|
|
|
kind: pipeline
|
|
|
|
type: docker
|
|
|
|
name: govulncheck
|
|
|
|
|
|
|
|
platform:
|
|
|
|
os: linux
|
|
|
|
arch: amd64
|
|
|
|
|
|
|
|
steps:
|
|
|
|
- name: govulncheck
|
2023-02-02 05:52:00 +00:00
|
|
|
image: golang:1.20
|
2022-12-04 07:57:16 +00:00
|
|
|
commands:
|
|
|
|
- make generate
|
|
|
|
- go install golang.org/x/vuln/cmd/govulncheck@latest
|
|
|
|
- govulncheck ./...
|
|
|
|
|
|
|
|
trigger:
|
|
|
|
event:
|
|
|
|
- cron
|
|
|
|
cron:
|
|
|
|
- govulncheck
|
|
|
|
|
2022-09-30 05:34:48 +00:00
|
|
|
---
|
|
|
|
kind: pipeline
|
|
|
|
type: docker
|
|
|
|
name: linux-amd64
|
|
|
|
|
|
|
|
platform:
|
|
|
|
os: linux
|
|
|
|
arch: amd64
|
|
|
|
|
|
|
|
steps:
|
|
|
|
- name: publish
|
|
|
|
image: plugins/docker
|
|
|
|
settings:
|
|
|
|
username:
|
|
|
|
from_secret: docker_username
|
|
|
|
password:
|
|
|
|
from_secret: docker_password
|
|
|
|
registry: gitea.dwysokinski.me
|
|
|
|
repo: gitea.dwysokinski.me/twhelp-packages/core
|
|
|
|
auto_tag: true
|
|
|
|
auto_tag_suffix: linux-amd64
|
|
|
|
dockerfile: ./build/docker/twhelp/prod/Dockerfile
|
2022-09-30 12:53:37 +00:00
|
|
|
build_args_from_env: [DRONE_TAG]
|
2022-09-30 05:34:48 +00:00
|
|
|
|
|
|
|
trigger:
|
|
|
|
event:
|
|
|
|
- tag
|
|
|
|
|
|
|
|
---
|
|
|
|
kind: pipeline
|
|
|
|
type: docker
|
|
|
|
name: manifest
|
|
|
|
|
|
|
|
steps:
|
|
|
|
- name: manifest
|
|
|
|
image: plugins/manifest
|
|
|
|
settings:
|
|
|
|
auto_tag: "true"
|
|
|
|
ignore_missing: "true"
|
|
|
|
spec: ./build/docker/twhelp/prod/manifest.tmpl
|
|
|
|
username:
|
|
|
|
from_secret: docker_username
|
|
|
|
password:
|
|
|
|
from_secret: docker_password
|
|
|
|
- name: manifest-latest
|
|
|
|
image: plugins/manifest
|
|
|
|
settings:
|
|
|
|
tags: latest
|
|
|
|
ignore_missing: "true"
|
|
|
|
spec: ./build/docker/twhelp/prod/manifest.tmpl
|
|
|
|
username:
|
|
|
|
from_secret: docker_username
|
|
|
|
password:
|
|
|
|
from_secret: docker_password
|
|
|
|
|
|
|
|
trigger:
|
|
|
|
event:
|
|
|
|
- tag
|
|
|
|
|
|
|
|
depends_on:
|
|
|
|
- linux-amd64
|
|
|
|
|
|
|
|
---
|
|
|
|
kind: pipeline
|
|
|
|
type: docker
|
|
|
|
name: deploy
|
|
|
|
|
|
|
|
steps:
|
2022-10-05 06:45:22 +00:00
|
|
|
- name: deploy-k8s
|
2023-01-28 06:25:16 +00:00
|
|
|
image: alpine/k8s:1.25.6
|
2022-09-30 05:34:48 +00:00
|
|
|
environment:
|
|
|
|
KUBECONFIG:
|
|
|
|
from_secret: kubeconfig
|
|
|
|
commands:
|
2022-09-30 06:22:44 +00:00
|
|
|
- "mkdir ~/.kube && echo \"$KUBECONFIG\" > ~/.kube/twhelp"
|
2022-09-30 05:34:48 +00:00
|
|
|
- "cd ./k8s/overlays/prod && kustomize edit set image twhelp=gitea.dwysokinski.me/twhelp-packages/core:${DRONE_TAG##v} && cd ../../.."
|
2022-09-30 07:22:20 +00:00
|
|
|
- "kubectl --kubeconfig ~/.kube/twhelp -n twhelp delete jobs.batch twhelp-migrations-job || true"
|
2022-09-30 06:17:55 +00:00
|
|
|
- kustomize build ./k8s/overlays/prod | kubectl --kubeconfig ~/.kube/twhelp apply -n twhelp -f -
|
2022-09-30 05:34:48 +00:00
|
|
|
|
|
|
|
trigger:
|
|
|
|
event:
|
|
|
|
- tag
|
|
|
|
|
|
|
|
depends_on:
|
|
|
|
- manifest
|
2022-10-06 12:41:21 +00:00
|
|
|
---
|
|
|
|
kind: signature
|
2023-02-16 06:37:48 +00:00
|
|
|
hmac: 42659e7dd7bea462fb9d7618dc10bc267bb668afeb6b7831fc417557af82ed96
|
2022-10-06 12:58:03 +00:00
|
|
|
|
|
|
|
...
|