-
Notifications
You must be signed in to change notification settings - Fork 7
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
Add nvm use
and auto-branching
#86
Merged
Merged
Conversation
This file contains 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
- Adding default branches for extensions maintainer by Ventures. - Replacing WooRelease `release` command with the local one.
- Adjusting bulk command to call release with additional parameters. - Adjusting release command to create release branch or fallback to the default repo branch and run nvm use if selected.
message-dimke
added
the
type: enhancement
The issue is a request for an enhancement.
label
Oct 22, 2023
JPry
reviewed
Oct 25, 2023
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.
I know this is progress, and I'm not able to dedicate time to a full review right now, but I just wanted to leave a few comments.
- Renaming some method names to be grammatically correct. - Separating create and push branch commands into different methods.
…facto a standard now.
… providing a release branch name which, if does not exist, is prompted to get created or fallbacks to default. This means the parameter to create a release branch is redundant.
…tor from the command class.
…ust commands to use the newly added shell script. Adding custom `simulate` command which inherits from the overwritten `release` command to allow simulation runs. Update `branch` command by adding cleanup option to it.
…t. Create custom product build function to handle cases with and w/o nvm.
…ning the build. Using application's meta storage to pass branches between `branch` and `release` commands. Adjusting release branches cleanup to make sure not to cleanup the default branch from the product's repo.
message-dimke
requested review from
JPry and
a team
and removed request for
JPry
November 7, 2023 14:03
rawdreeg
approved these changes
Apr 10, 2024
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.
- Updating `woorelease` dev-trunk dependency version since the last release was back 2022.
…-and-autobranching # Conflicts: # composer.json # composer.lock # packages/php/woorelease-extension/src/Commands/Bulk.php
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.
Changes proposed in this Pull Request:
This PR extends
release
command with additional parametersPR also adds few commands to be using as complementary commands to the overwritten
release
command:Added set of tools for
Git
,Nvm
andProduct
.It is now possible to run the
release
andsimulate
commands using new parameters and see some changes in the command workflows.For example if you provide a GitHub url using a branch name which does not exist on the repository, you will see a prompt to create it and release from there.
It is also possible to skip release branch creation and release from the default which is set to
develop
by default. All you need is to refuse release branch creation.The invisible part of changes introduced with this PR is
nvm use
command to run for every releasing product being inside the corresponding product directories to switch the release process to a propernode
andnpm
versions. If--nvm_use
flag is provided intorelease
command, the additional logic will get involved intobuild
process, if not - then therelease
will flow as usual.Detailed test instructions:
add-nvm-and-autobranching
branch.release.txt
in the root and add some lines to it.Note: I am using Pinterest and Brands here because both projects have to use their own
node
version and w/onvm use
the build will fail. Pinterest can build withnode 14
when Brands requirenode 16
for release.You can provide any nonsense instead of a release branch names to check how branch prompt is working.
3. Run bulk command
Note: I am using
bulk
command here as a single command to work withrelease.txt
. Also you may notice--wc_tested
and--wp_tested
flags, those are also here to check version bump still functional.4. While releasing wait for a branch creation prompt to appear.
5. Choosing
y
will start a branch creation process. Branch will be created from a default one and pushed to remote. The push is requires for achangelog
command to generate its changelog part.6. Choosing
N
will drop release branch creation process and prompt to release from a default branch which is, if rejected, will terminate the release process.7. When running the simulation every release branch, except the default, must be cleaned up automatically at the end of the process.
8. All the steps are followed with the corresponding console messages/notifications/errors.
Additional details:
Changelog entry