Consolidate CI workflows and enhance Chromium pipeline features#8
Open
Pmaster-dev wants to merge 8 commits into
Open
Consolidate CI workflows and enhance Chromium pipeline features#8Pmaster-dev wants to merge 8 commits into
Pmaster-dev wants to merge 8 commits into
Conversation
Consolidate CI into path-aware component matrix and retire non-executable workflows
… build & artifacts on master (#6) * feat: add Chromium pipeline with deep file scan, Docker build, and artifacts on master * fix: clean up redundant path filters, fix multiline output, safer Docker export * fix: use load:true for PR Docker builds, compute short SHA via shell * fix: add missing labeler configuration file * fix(ci): add npm cache path and install dir for security review workflow * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <[email protected]> * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <[email protected]> * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <[email protected]> * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <[email protected]> * fix: load labeler config from PR head * fix: harden labeler config loading * fix: tidy labeler workflow indentation * fix: guard labeler config fallback * fix: tighten labeler config fetch logic * fix: improve labeler fetch errors * fix: separate labeler fetch validation * fix: restrict labeler head config fetch * fix: clarify labeler decode failures --------- Co-authored-by: copilot-swe-agent[bot] <[email protected]> Co-authored-by: Pmaster-dev <[email protected]> Co-authored-by: Copilot Autofix powered by AI <[email protected]>
There was a problem hiding this comment.
Pull request overview
This PR modernizes the repository’s GitHub Actions automation by introducing a component-aware CI matrix, adding a new Chromium/Docker pipeline, improving label automation via a shared labeler config, and removing multiple legacy workflows.
Changes:
- Added a matrix-based CI workflow to run targeted checks per changed component and publish per-component artifacts/summaries.
- Added a Chromium pipeline workflow that runs a headless smoke test, discovers deeply nested files, builds a Docker image, and publishes a summary.
- Updated PR security and label automation workflows; added new labeler rules; removed several legacy CI/deploy workflows.
Reviewed changes
Copilot reviewed 19 out of 22 changed files in this pull request and generated 7 comments.
Show a summary per file
| File | Description |
|---|---|
webapp/frontend/.eslintrc.cjs |
Adds frontend ESLint configuration. |
marketing-site/package.json |
Switches marketing-site lint script to run ESLint directly. |
marketing-site/eslint.config.mjs |
Adds a flat ESLint config for the marketing site. |
docs/ci/legacy-workflows/workflow-system.yml |
Adds documentation/example config for a legacy workflow system. |
docs/ci/legacy-workflows/PinkFlow-pipeline.yml |
Adds a legacy pipeline “spec” document (currently YAML-formatted). |
CONTRIBUTING.md |
Documents the new CI matrix behavior and artifact/report contract. |
.github/workflows/ci-matrix.yml |
New component-aware CI matrix workflow with per-component reporting and a final aggregated summary. |
.github/workflows/chromium-pipeline.yml |
New Chromium/Docker pipeline workflow with artifacts and job summaries. |
.github/workflows/label.yml |
Enhances label automation by fetching labeler config from PR head (same-repo) or base. |
.github/labeler.yml |
Adds labeler rules for dependencies, JS/TS changes, and documentation. |
.github/workflows/pr-security.yml |
Adjusts Node cache dependency path and installs dependencies from marketing-site. |
.github/workflows/webpack.yml |
Removes legacy workflow. |
.github/workflows/super-linter.yml |
Removes legacy workflow. |
.github/workflows/static.yml |
Removes legacy workflow. |
.github/workflows/Rust-Core-CI-Gateway-Delivery.yml |
Removes legacy workflow. |
.github/workflows/rust-ci.yml |
Removes legacy workflow. |
.github/workflows/pylint.yml |
Removes legacy workflow. |
.github/workflows/nextjs.yml |
Removes legacy workflow. |
.github/workflows/go.yml |
Removes legacy workflow. |
.github/workflows/github-pages.yml |
Removes legacy workflow. |
.github/workflows/deno.yml |
Removes legacy workflow. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Comment on lines
23
to
27
| node-version: '20' | ||
| cache: 'npm' | ||
| cache-dependency-path: marketing-site/package-lock.json | ||
|
|
||
| - name: Check for new dependencies |
Comment on lines
43
to
45
| - name: Install dependencies | ||
| working-directory: marketing-site | ||
| run: npm ci |
Comment on lines
+1
to
+5
| import nextVitals from 'eslint-config-next/core-web-vitals' | ||
|
|
||
| const config = [...nextVitals] | ||
|
|
||
| export default config |
Co-authored-by: Copilot Autofix powered by AI <[email protected]>
Co-authored-by: Copilot Autofix powered by AI <[email protected]>
…updates Bumps the npm_and_yarn group with 3 updates in the /webapp/frontend directory: [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest), [esbuild](https://github.com/evanw/esbuild) and [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite). Bumps the npm_and_yarn group with 1 update in the /marketing-site directory: [js-yaml](https://github.com/nodeca/js-yaml). Updates `vitest` from 0.34.6 to 3.2.6 - [Release notes](https://github.com/vitest-dev/vitest/releases) - [Changelog](https://github.com/vitest-dev/vitest/blob/main/docs/releases.md) - [Commits](https://github.com/vitest-dev/vitest/commits/v3.2.6/packages/vitest) Updates `esbuild` from 0.21.5 to 0.28.1 - [Release notes](https://github.com/evanw/esbuild/releases) - [Changelog](https://github.com/evanw/esbuild/blob/main/CHANGELOG-2024.md) - [Commits](evanw/esbuild@v0.21.5...v0.28.1) Updates `vite` from 5.4.21 to 7.3.6 - [Release notes](https://github.com/vitejs/vite/releases) - [Changelog](https://github.com/vitejs/vite/blob/v7.3.6/packages/vite/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite/commits/v7.3.6/packages/vite) Updates `js-yaml` from 4.1.1 to 4.3.0 - [Changelog](https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md) - [Commits](nodeca/js-yaml@4.1.1...4.3.0) --- updated-dependencies: - dependency-name: vitest dependency-version: 3.2.6 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: esbuild dependency-version: 0.28.1 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: vite dependency-version: 7.3.6 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: js-yaml dependency-version: 4.3.0 dependency-type: indirect dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: Copilot Autofix powered by AI <[email protected]>
Co-authored-by: Copilot Autofix powered by AI <[email protected]>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This pull request makes significant updates to the repository's continuous integration (CI) and automation workflows. It introduces new, more modular CI pipelines for component testing and Docker builds, enhances label automation, and removes several legacy workflows. The changes aim to improve build efficiency, artifact management, and automation reliability.
CI/CD Pipeline Modernization:
.github/workflows/ci-matrix.yml) that detects changes in major components (webapp-frontend,webapp-backend,marketing-site) and runs targeted checks and tests, uploading detailed reports and summaries for each component..github/workflows/chromium-pipeline.yml) that performs headless browser smoke tests, discovers deeply nested source files, builds/pushes Docker images, and summarizes job outcomes.Labeling and Automation Improvements:
.github/workflows/label.yml) to dynamically fetch the latestlabeler.ymlconfiguration from the pull request's head or base branch, ensuring accurate and up-to-date labeling..github/labeler.ymlconfiguration to automate labeling for dependencies, JavaScript, and documentation changes.Cleanup and Removal of Legacy Workflows:
.github/workflows/Rust-Core-CI-Gateway-Delivery.yml), Deno (.github/workflows/deno.yml), Go (.github/workflows/go.yml), and GitHub Pages deployment (.github/workflows/github-pages.yml). [1] [2] [3] [4]## 📋 Description🔗 Related Issues
Closes #
Related to #
🎯 Type of Change
✅ Checklist
🧪 Testing
Test Configuration
Test Cases
Test Case 1:
Test Case 2:
📸 Screenshots/Recordings
Before
After
♿ Accessibility
Notes:
🔒 Security
Security Notes:
📊 Performance
Performance Notes:
🌍 Ecosystem Impact
Integration Notes:
📝 Additional Notes
Breaking Changes
Deployment Notes
Future Work
👥 Reviewers
@mention-reviewers
📚 Review Guidelines for Reviewers