{"id":43989766,"url":"https://github.com/openmcp-project/blueprint-workflows","last_synced_at":"2026-02-07T10:33:02.320Z","repository":{"id":289683259,"uuid":"946654478","full_name":"openmcp-project/blueprint-workflows","owner":"openmcp-project","description":"Workflows and Actions for Blueprints \u0026 Building Blocks for openMCP.","archived":false,"fork":false,"pushed_at":"2026-02-03T10:01:46.000Z","size":13666,"stargazers_count":1,"open_issues_count":18,"forks_count":1,"subscribers_count":6,"default_branch":"main","last_synced_at":"2026-02-03T22:29:10.278Z","etag":null,"topics":["apeirora","cloud-computing","cloud-management","cloud-native","control-plane","infrastructure","infrastructure-as-code","kubernetes","multicloud","openmcp"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/openmcp-project.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-03-11T13:26:58.000Z","updated_at":"2026-02-03T09:55:48.000Z","dependencies_parsed_at":"2025-05-28T19:48:28.397Z","dependency_job_id":"72e76559-823b-4c48-be81-ec6a51d843ec","html_url":"https://github.com/openmcp-project/blueprint-workflows","commit_stats":null,"previous_names":["openmcp-project/blueprint-workflows"],"tags_count":0,"template":false,"template_full_name":"openmcp-project/repository-template","purl":"pkg:github/openmcp-project/blueprint-workflows","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openmcp-project%2Fblueprint-workflows","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openmcp-project%2Fblueprint-workflows/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openmcp-project%2Fblueprint-workflows/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openmcp-project%2Fblueprint-workflows/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/openmcp-project","download_url":"https://codeload.github.com/openmcp-project/blueprint-workflows/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openmcp-project%2Fblueprint-workflows/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29192672,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-07T07:37:03.739Z","status":"ssl_error","status_checked_at":"2026-02-07T07:37:03.029Z","response_time":63,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["apeirora","cloud-computing","cloud-management","cloud-native","control-plane","infrastructure","infrastructure-as-code","kubernetes","multicloud","openmcp"],"created_at":"2026-02-07T10:33:01.519Z","updated_at":"2026-02-07T10:33:02.300Z","avatar_url":"https://github.com/openmcp-project.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![REUSE status](https://api.reuse.software/badge/github.com/openmcp-project/blueprint-workflows)](https://api.reuse.software/info/github.com/openmcp-project/blueprint-workflows)\n\n# blueprint-workflows\n\n## About this project\n\nWorkflows and Actions for Blueprints \u0026 Building Blocks for Open Managed Control Planes.\n\nThis 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](https://github.com/fluxcd/flux2).\n\nDesigned for projects following the structure of [blueprints](https://github.com/openmcp-project/blueprints) and [blueprint-building-blocks](https://github.com/openmcp-project/blueprint-building-blocks), these workflows streamline CI/CD processes by making Kubernetes manifest changes visible and reviewable in pull requests.\n\nFollow this PR to see example of the workflows in action:\n[Example PR](https://github.com/openmcp-project/blueprints/pull/47)\n[Action run](https://github.com/openmcp-project/blueprints/actions/runs/17266898629)\n\n## Requirements and Setup\n\n### Prerequisites\n\n1. **GitHub Repository Structure**: Ensure your repository follows the structure of the referenced blueprints and building blocks.\n2. **GitHub Actions permissions**: Ensure that you have access to the reusable workflows from your repository: [Access to reusable workflows](https://docs.github.com/en/actions/sharing-automations/reusing-workflows#access-to-reusable-workflows)\n4. **GitHub Tokens**: If necessary set up a GitHub tokens with appropriate permissions for repostories and Helm registries.\n\n### Workflows\n\n#### 1. **Continuous Integration (ci.yml)**\n   - **Description**: Continously install dependencies, build packages, and run tests.\n   - **Usage**:\n     ```yaml\n     jobs:\n       test-action:\n         uses: openmcp-project/blueprint-workflows/.github/workflows/ci.yml@main\n     ```\n\n#### 2. **PR Status Checks (git-pr-status-checks.yml)**\n   - **Description**: Performs Helm Chart and Kustomize listing, dependency updates, linting, manifest validation, and version bumping for pull requests.\n   - **Usage**:\n     ```yaml\n     jobs:\n       pr-status-check:\n         uses: openmcp-project/blueprint-workflows/.github/workflows/git-pr-status-checks.yml@main\n     ```\n\n#### 3. **Lint Codebase (linter.yml)**\n   - **Description**: Lints the codebase for JavaScript, TypeScript, and other supported languages.\n   - **Usage**:\n     ```yaml\n     jobs:\n       lint:\n         uses: openmcp-project/blueprint-workflows/.github/workflows/linter.yml@main\n     ```\n\n#### 4. **Check Transpiled JavaScript (check-dist.yml)**\n   - **Description**: Ensures the `dist/` directory contains the expected transpiled code.\n   - **Usage**:\n     ```yaml\n     jobs:\n       check-dist:\n         uses: openmcp-project/blueprint-workflows/.github/workflows/check-dist.yml@main\n     ```\n\n#### 5. **CodeQL Analysis (codeql-analysis.yml)**\n   - **Description**: Performs CodeQL analysis for security and code quality.\n   - **Usage**:\n     ```yaml\n     jobs:\n       codeql-analysis:\n         uses: openmcp-project/blueprint-workflows/.github/workflows/codeql-analysis.yml@main\n     ```\n\n### Actions\n\n#### Helm Chart Actions\n\n#### 1. **Helm Chart Listing**\n   - **Description**: Lists all Helm Charts in the repository.\n   - **Usage**:\n     ```yaml\n     steps:\n       - id: helm-chart-listing\n         uses: openmcp-project/blueprint-workflows/.github/actions/helm-chart/listing@main\n     ```\n\n#### 2. **Helm Chart Dependency Build/Update**\n   - **Description**: Updates dependencies for all Helm Charts.\n   - **Usage**:\n     ```yaml\n     steps:\n       - id: helm-chart-dep-build\n         uses: openmcp-project/blueprint-workflows/.github/actions/helm-chart/dep-build@main\n     ```\n\n#### 3. **Helm Chart Linting**\n   - **Description**: Lints all Helm Charts for errors and warnings.\n   - **Usage**:\n     ```yaml\n     steps:\n       - id: helm-chart-linting\n         uses: openmcp-project/blueprint-workflows/.github/actions/helm-chart/linting@main\n     ```\n\n#### 4. **Helm Chart Manifest Validation**\n   - **Description**: Validates Helm Chart manifests.\n   - **Usage**:\n     ```yaml\n     steps:\n       - id: helm-chart-manifest-validation\n         uses: openmcp-project/blueprint-workflows/.github/actions/helm-chart/manifest-validation@main\n     ```\n\n#### 5. **Helm Chart Version Bump**\n   - **Description**: Bumps the version of modified Helm Charts.\n   - **Usage**:\n     ```yaml\n     steps:\n       - id: helm-chart-version-bump\n         uses: openmcp-project/blueprint-workflows/.github/actions/helm-chart/version-bump@main\n         with:\n           BRANCH_NAME: ${{ github.event.pull_request.head.ref }}\n           BASE_BRANCH_NAME: main\n     ```\n\n#### 6. **Helm Chart Documentation**\n   - **Description**: Generates README.md documentation for Helm Charts.\n   - **Usage**:\n     ```yaml\n     steps:\n       - id: helm-chart-docs\n         uses: openmcp-project/blueprint-workflows/.github/actions/helm-chart/docs@main\n     ```\n\n#### Kustomize Actions\n\n#### 7. **Kustomize Listing**\n   - **Description**: Lists all Kustomize projects in the repository.\n   - **Usage**:\n     ```yaml\n     steps:\n       - id: kustomize-listing\n         uses: openmcp-project/blueprint-workflows/.github/actions/kustomize/listing@main\n     ```\n\n#### 8. **Kustomize Manifest Validation**\n   - **Description**: Validates Kustomize manifests.\n   - **Usage**:\n     ```yaml\n     steps:\n       - id: kustomize-manifest-validation\n         uses: openmcp-project/blueprint-workflows/.github/actions/kustomize/manifest-validation@main\n     ```\n\n#### 9. **Kustomize Version Bump**\n   - **Description**: Bumps the version of modified Kustomize projects.\n   - **Usage**:\n     ```yaml\n     steps:\n       - id: kustomize-version-bump\n         uses: openmcp-project/blueprint-workflows/.github/actions/kustomize/version-bump@main\n         with:\n           BRANCH_NAME: ${{ github.event.pull_request.head.ref }}\n           SOURCE_GIT_REPO_URL: ${{ github.server_url }}/${{ github.event.pull_request.head.repo.full_name }}\n           TARGET_GIT_REPO_URL: ${{ github.server_url }}/${{ github.event.pull_request.base.repo.full_name }}\n     ```\n\n#### Other Actions\n\n#### 10. **K8s Manifest Templating**\n   - **Description**: Templates and validates Kubernetes manifests for Helm Charts and Kustomize projects.\n   - **Usage**:\n     ```yaml\n     steps:\n       - id: k8s-manifest-templating\n         uses: openmcp-project/blueprint-workflows/.github/actions/k8s-manifest-templating@main\n     ```\n\n## Support, Feedback, Contributing\n\nThis project is open to feature requests/suggestions, bug reports etc. via [GitHub issues](https://github.com/openmcp-project/blueprint-workflows/issues) and maintained on a best effort basis. 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](CONTRIBUTING.md).\n\n## Security / Disclosure\nIf you find any bug that may be a security problem, please follow our instructions at [in our security policy](https://github.com/openmcp-project/blueprint-workflows/security/policy) on how to report it. Please do not create GitHub issues for security-related doubts or problems.\n\n## Code of Conduct\n\nWe 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](https://github.com/SAP/.github/blob/main/CODE_OF_CONDUCT.md) at all times.\n\n## Licensing\n\nCopyright 2025 SAP SE or an SAP affiliate company and blueprint-workflows contributors. Please see our [LICENSE](LICENSE) for copyright and license information. Detailed information including third-party components and their licensing/copyright information is available [via the REUSE tool](https://api.reuse.software/info/github.com/openmcp-project/blueprint-workflows).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenmcp-project%2Fblueprint-workflows","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fopenmcp-project%2Fblueprint-workflows","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenmcp-project%2Fblueprint-workflows/lists"}