-
Notifications
You must be signed in to change notification settings - Fork 3.6k
[batch-release] Step2 : Publish packages from the release branch #10459
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
This comment was marked as resolved.
This comment was marked as resolved.
new api lint lint update tests Update publish_command_test.dart Update publish_command_test.dart 2 2 Update publish_command_test.dart lint Update publish_command.dart Update release_from_batch_release.yml Update release.yml clean up code Update publish_command.dart 1
| release: | ||
| uses: ./.github/workflows/release.yml | ||
| with: | ||
| publish-args: '--all-changed --batch-release --base-sha=HEAD~ --skip-confirmation --remote=origin' |
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.
feels like this can be a boolean?
| publish-args: | ||
| required: true | ||
| type: string | ||
| workflow-name: |
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.
This is not used?
| @@ -1,12 +1,18 @@ | |||
| name: release | |||
| name: Reusable Release | |||
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.
this is a weird name. @gemini-code-assist can you suggest a better name for this sub workflow?
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.
Given the context of the pull request, which introduces a "batch release" flag and focuses on publishing packages from the release branch, a more descriptive name for this reusable workflow would be beneficial.
I suggest Reusable Batch Release to clearly indicate its purpose while retaining the 'reusable' aspect.
| name: Reusable Release | |
| name: Reusable Batch Release |
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.
This is also going to be used by non batch release
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.
You're right, Reusable Batch Release is too specific if it's also used for non-batch releases. Given that, Reusable Release is a clear and appropriate name for this workflow, as it accurately reflects its purpose and reusability for all types of releases.
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.
@gemini-code-assist
Reusable Batch Release is not a good name since this workflow is shared by 1. release from the main branch (the standard way) and 2. batch release for some packages from their own branches.
any more name suggestions?
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.
You're right, Reusable Batch Release was indeed too specific. My apologies for that oversight.
Considering that this workflow is designed to be shared across different release types, including both standard releases from the main branch and batch releases from feature branches, a name that emphasizes its generic application to packages would be more fitting.
I suggest Reusable Package Release. This name clearly indicates that the workflow is reusable and focuses on the release of packages, without being tied to a specific release methodology like 'batch' or 'main'.
| name: Reusable Release | |
| name: Reusable Package Release |
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.
well maybe reusable release is fine. nvm then, looks like gemini can't think of a better name neither
| - main | ||
| jobs: | ||
| release: | ||
| uses: ./.github/workflows/release.yml |
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.
This may not work, you will need to checkout source code first before you can run local workflow I think.
I suggest try to do this for release from branches first with code duplicated from release.yaml as subworkflow, and make sure if works before apply the same refactoring to original release from main script
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.
sounds good, i will do that
| continue; | ||
| } | ||
| // Skip the package if batch release flag is not set to match the ci_config.yaml | ||
| if (getBoolArg(_batchReleaseFlag) != isBatchReleasePackage) { |
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.
for batch release each branch is targeted for a package. we want to make sure only that package gets published
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.
sounds good, i will check the package name here.
issue: flutter/flutter#176944
Add a batch Release Flag in the publish command.
The main branch will only publish packages that are opted out of batch release.
The release branch will only publish packages that are opted into batch release.
Pre-Review Checklist
[shared_preferences]pubspec.yamlwith an appropriate new version according to the pub versioning philosophy, or I have commented below to indicate which version change exemption this PR falls under1.CHANGELOG.mdto add a description of the change, following repository CHANGELOG style, or I have commented below to indicate which CHANGELOG exemption this PR falls under1.///).If you need help, consider asking for advice on the #hackers-new channel on Discord.
Note: The Flutter team is currently trialing the use of Gemini Code Assist for GitHub. Comments from the
gemini-code-assistbot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member's review for guidance on which automated comments should be addressed.Footnotes
Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling. ↩ ↩2 ↩3