ci-demo-2/.woodpecker/.backend.yml

55 lines
1.1 KiB
YAML

---
variables:
- &java_image "gradle:8.5.0-jdk17"
when:
path: "app/**"
event: [push, tag]
clone:
git:
image: woodpeckerci/plugin-git
settings:
skip_verify: true
partial: false
tags: true
steps:
"prepare:version":
image: bitnami/git:2.43.0
commands:
- . ./version.sh
"lint:style":
image: *java_image
commands:
- gradle --no-daemon spotlessCheck
depends_on: ["prepare:version"]
"lint:dockerfile":
image: ghcr.io/hadolint/hadolint:latest-debian
commands:
- hadolint --version
depends_on: ["prepare:version"]
"build:java":
depends_on:
- lint:style
- lint:dockerfile
image: *java_image
commands:
- . ./version-lock.sh
- ./gradlew -Pversion=$CD_CURRENT_VERSION build
"analyze:sbom":
depends_on: ["build:java"]
image: *java_image
commands:
- ./gradlew cyclonedxBom
"deploy:backend":
depends_on: ["analyze:sbom"]
image: alpine:latest
commands:
- echo "deploy backend"
- env
directory: backend
when:
- event: [deployment]
depends_on:
- "lint_general"