Workflows and Actions for Blueprints & Building Blocks for Open Managed Control Planes.
This project provides reusable GitHub Workflows and Actions that generate Kubernetes manifests from Helm Charts and Kustomize projects to enable detailed code reviews of infrastructure changes. The workflows also include quality gates through linting, validation, and automated version bumping to maintain consistency across deployments using GitOps tools like Flux.
Designed for projects following the structure of blueprints and blueprint-building-blocks, these workflows streamline CI/CD processes by making Kubernetes manifest changes visible and reviewable in pull requests.
Follow this PR to see example of the workflows in action: Example PR Action run
- GitHub Repository Structure: Ensure your repository follows the structure of the referenced blueprints and building blocks.
- GitHub Actions permissions: Ensure that you have access to the reusable workflows from your repository: Access to reusable workflows
- GitHub Tokens: If necessary set up a GitHub tokens with appropriate permissions for repostories and Helm registries.
- Description: Continously install dependencies, build packages, and run tests.
- Usage:
jobs: test-action: uses: openmcp-project/blueprint-workflows/.github/workflows/ci.yml@main
- Description: Performs Helm Chart and Kustomize listing, dependency updates, linting, manifest validation, and version bumping for pull requests.
- Usage:
jobs: pr-status-check: uses: openmcp-project/blueprint-workflows/.github/workflows/git-pr-status-checks.yml@main
- Description: Lints the codebase for JavaScript, TypeScript, and other supported languages.
- Usage:
jobs: lint: uses: openmcp-project/blueprint-workflows/.github/workflows/linter.yml@main
- Description: Ensures the
dist/
directory contains the expected transpiled code. - Usage:
jobs: check-dist: uses: openmcp-project/blueprint-workflows/.github/workflows/check-dist.yml@main
- Description: Performs CodeQL analysis for security and code quality.
- Usage:
jobs: codeql-analysis: uses: openmcp-project/blueprint-workflows/.github/workflows/codeql-analysis.yml@main
- Description: Lists all Helm Charts in the repository.
- Usage:
steps: - id: helm-chart-listing uses: openmcp-project/blueprint-workflows/.github/actions/helm-chart/listing@main
- Description: Updates dependencies for all Helm Charts.
- Usage:
steps: - id: helm-chart-dep-build uses: openmcp-project/blueprint-workflows/.github/actions/helm-chart/dep-build@main
- Description: Lints all Helm Charts for errors and warnings.
- Usage:
steps: - id: helm-chart-linting uses: openmcp-project/blueprint-workflows/.github/actions/helm-chart/linting@main
- Description: Validates Helm Chart manifests.
- Usage:
steps: - id: helm-chart-manifest-validation uses: openmcp-project/blueprint-workflows/.github/actions/helm-chart/manifest-validation@main
- Description: Bumps the version of modified Helm Charts.
- Usage:
steps: - id: helm-chart-version-bump uses: openmcp-project/blueprint-workflows/.github/actions/helm-chart/version-bump@main with: BRANCH_NAME: ${{ github.event.pull_request.head.ref }} BASE_BRANCH_NAME: main
- Description: Generates README.md documentation for Helm Charts.
- Usage:
steps: - id: helm-chart-docs uses: openmcp-project/blueprint-workflows/.github/actions/helm-chart/docs@main
- Description: Lists all Kustomize projects in the repository.
- Usage:
steps: - id: kustomize-listing uses: openmcp-project/blueprint-workflows/.github/actions/kustomize/listing@main
- Description: Validates Kustomize manifests.
- Usage:
steps: - id: kustomize-manifest-validation uses: openmcp-project/blueprint-workflows/.github/actions/kustomize/manifest-validation@main
- Description: Bumps the version of modified Kustomize projects.
- Usage:
steps: - id: kustomize-version-bump uses: openmcp-project/blueprint-workflows/.github/actions/kustomize/version-bump@main with: BRANCH_NAME: ${{ github.event.pull_request.head.ref }} SOURCE_GIT_REPO_URL: ${{ github.server_url }}/${{ github.event.pull_request.head.repo.full_name }} TARGET_GIT_REPO_URL: ${{ github.server_url }}/${{ github.event.pull_request.base.repo.full_name }}
- Description: Templates and validates Kubernetes manifests for Helm Charts and Kustomize projects.
- Usage:
steps: - id: k8s-manifest-templating uses: openmcp-project/blueprint-workflows/.github/actions/k8s-manifest-templating@main
This project is open to feature requests/suggestions, bug reports etc. via GitHub issues. Contribution and feedback are encouraged and always welcome. For more information about how to contribute, the project structure, as well as additional contribution information, see our Contribution Guidelines.
If you find any bug that may be a security problem, please follow our instructions at in our security policy on how to report it. Please do not create GitHub issues for security-related doubts or problems.
We as members, contributors, and leaders pledge to make participation in our community a harassment-free experience for everyone. By participating in this project, you agree to abide by its Code of Conduct at all times.
Copyright 2025 SAP SE or an SAP affiliate company and blueprint-workflows contributors. Please see our LICENSE for copyright and license information. Detailed information including third-party components and their licensing/copyright information is available via the REUSE tool.