- Designed trunk-based development workflow with branch protection - Added workflow validation job to prevent main branch breaks - Integrated act (GitHub Actions runner) for local Gitea workflow testing - Created unified CI/CD script interface (scripts/cicd.sh) - Added YAML lint configuration with practical limits (400 chars) - Organized all CI/CD scripts under scripts/cicd/ directory - Confirmed Gitea/GitHub Actions compatibility via local testing - Updated ADR 0017 with implementation details and test results - Enhanced documentation with local development workflow See ADR-0017 for complete trunk-based development workflow documentation. See ADR-0016 for CI/CD pipeline design.
29 lines
926 B
YAML
29 lines
926 B
YAML
version: '3.8'
|
|
|
|
services:
|
|
act-runner:
|
|
image: gitea/act_runner:latest
|
|
volumes:
|
|
- .:/workspace
|
|
- ./config/runner:/data/.runner
|
|
working_dir: /workspace
|
|
environment:
|
|
- GITEA_INSTANCE_URL=${GITEA_INSTANCE_URL:-https://gitea.arcodange.lab/}
|
|
- GITEA_RUNNER_REGISTRATION_TOKEN=${GITEA_RUNNER_REGISTRATION_TOKEN}
|
|
- GITEA_RUNNER_NAME=${GITEA_RUNNER_NAME:-local-test-runner}
|
|
- GITEA_RUNNER_LABELS=${GITEA_RUNNER_LABELS:-ubuntu-latest:docker://node:16-bullseye,ubuntu-22.04:docker://gitea/act_runner:latest}
|
|
command: act -W .gitea/workflows/ci-cd.yaml --rm
|
|
|
|
yamllint:
|
|
image: pipelinecomponents/yamllint:latest
|
|
volumes:
|
|
- .:/workspace
|
|
working_dir: /workspace
|
|
command: yamllint .gitea/workflows/
|
|
|
|
yq-validator:
|
|
image: mikefarah/yq:latest
|
|
volumes:
|
|
- .:/workspace
|
|
working_dir: /workspace
|
|
command: yq eval '.' .gitea/workflows/ci-cd.yaml |