Added woodpecker pipelines
This commit is contained in:
69
.woodpecker/workflow.yaml
Normal file
69
.woodpecker/workflow.yaml
Normal file
@@ -0,0 +1,69 @@
|
|||||||
|
variables:
|
||||||
|
- &golang_image 'docker.io/golang:1.24'
|
||||||
|
- &buildx_plugin 'docker.io/woodpeckerci/plugin-docker-buildx:6.0.3'
|
||||||
|
- &platforms_release 'linux/amd64'
|
||||||
|
- &build_args 'CI_COMMIT_SHA=${CI_COMMIT_SHA},CI_COMMIT_BRANCH=${CI_COMMIT_BRANCH},CI_COMMIT_TAG=${CI_COMMIT_TAG}'
|
||||||
|
- publish_logins: &publish_logins
|
||||||
|
- registry: git.ego.freeddns.org
|
||||||
|
username:
|
||||||
|
from_secret: docker_username
|
||||||
|
password:
|
||||||
|
from_secret: docker_password
|
||||||
|
|
||||||
|
when:
|
||||||
|
- event: [pull_request, tag]
|
||||||
|
- event: push
|
||||||
|
branch: develop
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: vendor
|
||||||
|
image: *golang_image
|
||||||
|
pull: true
|
||||||
|
commands:
|
||||||
|
- cd src/ && go mod vendor
|
||||||
|
- name: analyze
|
||||||
|
image: *golang_image
|
||||||
|
depends_on:
|
||||||
|
- vendor
|
||||||
|
commands:
|
||||||
|
- cd src && go vet ./...
|
||||||
|
- name: static-check
|
||||||
|
image: *golang_image
|
||||||
|
depends_on:
|
||||||
|
- vendor
|
||||||
|
commands:
|
||||||
|
- go install honnef.co/go/tools/cmd/staticcheck@latest
|
||||||
|
- cd src && staticcheck ./...
|
||||||
|
- name: lint
|
||||||
|
image: *golang_image
|
||||||
|
depends_on:
|
||||||
|
- vendor
|
||||||
|
commands:
|
||||||
|
- echo "Lint"
|
||||||
|
- go install golang.org/x/lint/golint@latest
|
||||||
|
- golint src/app/... src/cmd/... src/infra/... src/internal/...
|
||||||
|
- name: build-image
|
||||||
|
image: *buildx_plugin
|
||||||
|
depends_on: [vendor, analyze, static-check, lint]
|
||||||
|
settings:
|
||||||
|
repo: git.ego.freeddns.org/egommerce/identity-svc
|
||||||
|
tag: builder
|
||||||
|
dockerfile: deploy/docker/Dockerfile.builder
|
||||||
|
logins: *publish_logins
|
||||||
|
volumes:
|
||||||
|
- /var/run/docker.sock:/var/run/docker.sock
|
||||||
|
- name: push-image
|
||||||
|
image: *buildx_plugin
|
||||||
|
depends_on:
|
||||||
|
- build-image
|
||||||
|
settings:
|
||||||
|
repo: git.ego.freeddns.org/egommerce/identity-svc
|
||||||
|
tag: dev
|
||||||
|
build_args:
|
||||||
|
BUILDER_IMAGE: git.ego.freeddns.org/egommerce/identity-svc:builder
|
||||||
|
SVC_NAME: "identity-svc"
|
||||||
|
SVC_VER: "1.0"
|
||||||
|
dockerfile: deploy/docker/Dockerfile.target
|
||||||
|
logins: *publish_logins
|
||||||
|
volumes:
|
||||||
|
- /var/run/docker.sock:/var/run/docker.sock
|
||||||
Reference in New Issue
Block a user