-
Notifications
You must be signed in to change notification settings - Fork 0
feat: implement modular gitflow workflows with component-based architecture and application examples #2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
Co-authored-by: Ryangr0 <[email protected]>
…ation docs Co-authored-by: Ryangr0 <[email protected]>
|
@copilot Please make an example on_source_change.yml and on_release.yml, that will live in the application repo. Those will call the workflows inside webgrip/workflows (this repo) |
…tions Co-authored-by: Ryangr0 <[email protected]>
I've created the example workflow files you requested! You can find them in the
Both files call the Applications can copy these files directly to their Commit: b946e33 |
|
@copilot webgrip/workflows/.github/workflows/gitflow-release.yml@main should not be used in on_source_change.yml. Split up the tests and the static analysis, and use the semantic release and deploy from helm directly in the on_release.yml. Make things make sense. Look over everything and give good direction. |
…onent calls Co-authored-by: Ryangr0 <[email protected]>
I've completely restructured the example workflows to address your feedback: Changes Made:
Key Benefits:
Both workflows are now self-contained and call the appropriate underlying workflows directly, making the architecture much more modular and understandable. Commit: 2e7c2c3 |
This PR implements a comprehensive gitflow-style development workflow that provides both monolithic and modular approaches for better branch management and automated release processes.
Key Features
Modular Component Architecture: The implementation now offers two distinct approaches:
gitflow-release.ymlprovides a single comprehensive workflow for teams preferring unified executionstatic-analysis.yml,tests.yml,semantic-release.yml, etc.) can be called directly for maximum flexibilityApplication-Ready Examples: The
examples/directory contains production-ready workflow templates:on_source_change.yml: Focused development workflow that calls static analysis and testing components directly, with automatic release PR creationon_release.yml: Dedicated release workflow that orchestrates semantic versioning, Docker builds, and Helm deployments using individual componentsClean Separation of Concerns:
on_source_change.yml) handle validation, testing, and release PR automationon_release.yml) handle versioning, building, and deploymentDirect Component Integration: Applications can now choose their preferred approach:
Architecture Benefits
Migration Path
Applications can choose between:
examples/on_source_change.ymlandexamples/on_release.ymlfor maximum controlgitflow-application.ymlfor simplicityThe implementation maintains backward compatibility while providing a clear path toward more modular, maintainable CI/CD architecture.
Fixes #1.
✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.