Added woodpecker pipelines

This commit is contained in:
PB
2025-11-06 18:34:54 +01:00
parent 3d8cd00256
commit 085f8c4711

69
.woodpecker/workflow.yaml Normal file
View 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