-
-
Couldn't load subscription status.
- Fork 101
chore: simplify Github actions #361
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
Conversation
Reviewer's GuideThis pull request refactors the GitHub Actions CI configuration by introducing a reusable workflow ( File-Level Changes
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
|
Codecov ReportAll modified and coverable lines are covered by tests ✅
❗ Your organization needs to install the Codecov GitHub app to enable full functionality. Additional details and impacted files@@ Coverage Diff @@
## master #361 +/- ##
==========================================
- Coverage 98.15% 96.96% -1.19%
==========================================
Files 28 31 +3
Lines 597 693 +96
==========================================
+ Hits 586 672 +86
- Misses 11 21 +10 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
|
@sourcery-ai review |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hey @techouse - I've reviewed your changes - here's some feedback:
- The
talker_flutter.yamlworkflow no longer appears to run tests or check coverage; is this intentional?
Here's what I looked at during the review
- 🟢 General issues: all looks good
- 🟢 Security: all looks good
- 🟢 Testing: all looks good
- 🟢 Complexity: all looks good
- 🟢 Documentation: all looks good
Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hey @techouse - I've reviewed your changes - here's some feedback:
- Consider refactoring the
talker_flutter.yamlworkflow to also use the centralizeddart_test.yamlif feasible for better consistency. - Verify that using
dartcommands instead offluttercommands in the reusable workflow is sufficient for all refactored packages.
Here's what I looked at during the review
- 🟢 General issues: all looks good
- 🟢 Security: all looks good
- 🟢 Testing: all looks good
- 🟢 Complexity: all looks good
- 🟢 Documentation: all looks good
Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.
|
@sourcery-ai review |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hey @techouse - I've reviewed your changes - here's some feedback:
- Consider parameterizing the minimum code coverage threshold in the reusable workflow instead of hardcoding it, as different packages might have different requirements.
- Ensure secrets like
CODECOV_TOKENare correctly passed to the reusable workflow, perhaps by addingsecrets: inheritto the calling workflows.
Here's what I looked at during the review
- 🟢 General issues: all looks good
- 🟢 Security: all looks good
- 🟢 Testing: all looks good
- 🟢 Complexity: all looks good
- 🟢 Documentation: all looks good
Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.
|
@sourcery-ai review |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hey @techouse - I've reviewed your changes - here's some feedback:
- Consider if the web build/deploy steps previously commented out in
talker_flutter.yamlneed to be preserved in a separate workflow. - Explicitly pass the desired
min_coverageinput for each package workflow call to avoid relying on the potentially inconsistent default.
Here's what I looked at during the review
- 🟢 General issues: all looks good
- 🟢 Security: all looks good
- 🟢 Testing: all looks good
- 🟢 Complexity: all looks good
- 🟢 Documentation: all looks good
Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.
|
@sourcery-ai review |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hey @techouse - I've reviewed your changes - here's some feedback:
- Consider removing the
defaultsandenvblocks from the individual package workflows as they are also defined in the reusabletest.yamlworkflow. - Review if
permissions: read-allis necessary in the individual package workflows; perhaps more restricted permissions likecontents: readwould suffice.
Here's what I looked at during the review
- 🟢 General issues: all looks good
- 🟢 Security: all looks good
- 🟢 Testing: all looks good
- 🟢 Complexity: all looks good
- 🟢 Documentation: all looks good
Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.
|
@sourcery-ai review |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hey @techouse - I've reviewed your changes - here's some feedback:
- Consider renaming the reusable workflow
test.yamltopackage-ci.yamlor similar, as its scope includes formatting and analysis in addition to testing. - The reusable workflow
test.yamlcombines several distinct stages (setup, format, analyze, test); consider if splitting these into separate jobs within the reusable workflow might improve clarity or modularity.
Here's what I looked at during the review
- 🟢 General issues: all looks good
- 🟢 Security: all looks good
- 🟢 Testing: all looks good
- 🟢 Complexity: all looks good
- 🟢 Documentation: all looks good
Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.
|
The reusable CI workflow is now dev complete! Its goals are to:
Whenever you have a moment, could you please take a look and let me know your thoughts? Thanks! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR consolidates CI workflows into a single reusable workflow to reduce redundancy and improve maintainability. Key changes include creating a new reusable workflow (.github/workflows/test.yaml) and updating multiple package-specific workflow files (e.g., talker, talker_flutter, talker_logger, etc.) to invoke the new workflow.
Reviewed Changes
Copilot reviewed 7 out of 7 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| .github/workflows/test.yaml | New reusable workflow handling CI tasks for both Dart and Flutter |
| .github/workflows/talker_riverpod_logger.yaml | Updated to call the reusable workflow |
| .github/workflows/talker_logger.yaml | Updated to call the reusable workflow with explicit inputs |
| .github/workflows/talker_flutter.yaml | Updated to call the reusable workflow; legacy code remains commented |
| .github/workflows/talker_dio_logger.yaml | Updated to call the reusable workflow with package and sdk input |
| .github/workflows/talker_bloc_logger.yaml | Updated to call the reusable workflow with package and sdk input |
| .github/workflows/talker.yaml | Updated to call the reusable workflow with package and sdk input |
Comments suppressed due to low confidence (2)
.github/workflows/test.yaml:1
- [nitpick] Consider renaming the workflow to use sentence case (for example, 'CI: Analyze and Test') to improve readability.
name: CI PUSH PR ANALYZE AND TEST
.github/workflows/talker_flutter.yaml:12
- [nitpick] Remove the commented-out legacy code to improve clarity and reduce maintenance overhead if it is no longer needed.
# - name: Check Code Coverage
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hello @techouse !
Thanks a lot for this brand new workflow ❤️
Please fix review issues and I will merge it
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Copilot encountered an error and was unable to review this pull request. You can try again by re-requesting a review.
This pull request consolidates and simplifies the workflow configurations for multiple packages by replacing individual workflows with a reusable workflow (
test.yaml). The reusable workflow centralizes common CI tasks such as formatting, analysis, testing, and code coverage, reducing redundancy and improving maintainability.Workflow Consolidation and Simplification:
Reusable Workflow Creation:
.github/workflows/test.yamlto handle common CI tasks like formatting, analysis, testing, and code coverage. It supports both Dart and Flutter SDKs and includes configurable inputs for package name, SDK type, Chrome testing, and minimum coverage threshold.Migration to Reusable Workflow:
test.yaml), removing redundant steps and configurations:.github/workflows/talker.yaml.github/workflows/talker_bloc_logger.yaml.github/workflows/talker_dio_logger.yaml.github/workflows/talker_flutter.yaml.github/workflows/talker_logger.yaml.github/workflows/talker_riverpod_logger.yamlSummary by Sourcery
Consolidate and simplify GitHub Actions workflows by introducing a reusable workflow template for CI tasks across multiple packages
CI:
.github/workflows/test.yamlreusable workflowChores: