Skip to content
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

Use bundler gem tasks instead of gem_release #5413

Merged
merged 1 commit into from
Oct 4, 2023
Merged

Conversation

elia
Copy link
Member

@elia elia commented Oct 4, 2023

Summary

Now that we also have a solidus_admin that follows a different release track we need more control over what gems are released. gem_release has no such control available and simply has a configuration for recursing. Also all the features of gem_relerase regarding version numbers manipulation are no longer relevant as it all happens within GitHub actions using dev_tools.

Bundler gem tasks are now the standard for all our extensions and are a simpler, already available, tool that can be leveraged here as well.

image

Checklist

Check out our PR guidelines for more details.

The following are mandatory for all PRs:

The following are not always needed:

  • 📖 I have updated the README to account for my changes.
  • 📑 I have documented new code with YARD.
  • 🛣️ I have opened a PR to update the guides.
  • ✅ I have added automated tests to cover my changes.
  • 📸 I have attached screenshots to demo visual changes.

@elia elia added backport-v3.2 changelog:skip Changes that we don't want to be listed in the Changelog backport-v3.3 Backport this pull-request to v3.3 backport-v3.4 Backport this pull-request to v3.4 backport-v4.0 Backport this pull-request to v4.0 backport-v4.1 Backport this pull-request to v4.1 backport-v4.2 Backport this pull-request to v4.2 labels Oct 4, 2023
@elia elia requested review from kennyadsl and rainerdema October 4, 2023 08:16
@elia elia requested a review from a team as a code owner October 4, 2023 08:16
@elia elia self-assigned this Oct 4, 2023
@github-actions github-actions bot added changelog:solidus_api Changes to the solidus_api gem changelog:solidus_backend Changes to the solidus_backend gem changelog:solidus_core Changes to the solidus_core gem changelog:solidus_sample Changes to the solidus_sample gem changelog:repository Changes to the repository not within any gem labels Oct 4, 2023
@codecov
Copy link

codecov bot commented Oct 4, 2023

Codecov Report

Merging #5413 (63fc31e) into main (743f888) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main    #5413   +/-   ##
=======================================
  Coverage   88.86%   88.86%           
=======================================
  Files         607      607           
  Lines       14747    14747           
=======================================
  Hits        13105    13105           
  Misses       1642     1642           

📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more

end
end

desc "Release all gems to rubygems"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I was under the impression that all of this code was not used at all by gem-release. Instead, this was the previous system used to release (see #83). I think the subgems release was managed by the recurse option set in the gem-release config.

That said, I'm in favor of removing the dependency and simplifying the process but I have two concerns:

  1. I suspect with the proposed changes we are not releasing the main solidus gem but only the subgems.
  2. Having two different ways of releasing for new/older versions might create complications. Is there a way to uniform the two? Both having the same interface or backporting is ok for me, but if you have other ideas, they are welcome.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, yes the recurse option is what got in the way with solidus_admin.

  1. Good catch! Fixed 👍
  2. Added back ports labels for all supported versions

Now that we also have a solidus_admin that follows a different release
track we need more control over what gems are released. `gem_release`
has no such control available and simply has a configuration for
recursing. Also all the features of `gem_relerase` regarding version
numbers manipulation are no longer relevant as it all happens within
GitHub actions using dev_tools.

Bundler gem tasks are now the standard for all our extensions and are
a simpler, already available, tool that can be leveraged here as well.
@elia elia force-pushed the elia/gem-releasing branch from 63fc31e to ccf0eaa Compare October 4, 2023 08:49
@elia elia requested a review from kennyadsl October 4, 2023 08:54
Copy link
Member

@kennyadsl kennyadsl left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

@elia elia merged commit 81ac89d into main Oct 4, 2023
2 checks passed
@elia elia deleted the elia/gem-releasing branch October 4, 2023 08:54
@github-actions
Copy link

github-actions bot commented Oct 4, 2023

💔 Some backports could not be created

Status Branch Result
v3.2 Backport failed because of merge conflicts
v3.3 Backport failed because of merge conflicts
v3.4 Backport failed because of merge conflicts
v4.0 Backport failed because of merge conflicts
v4.1 Backport failed because of merge conflicts
v4.2

Manual backport

To create the backport manually run:

backport --pr 5413

Questions ?

Please refer to the Backport tool documentation and see the Github Action logs for details

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backport-v3.3 Backport this pull-request to v3.3 backport-v3.4 Backport this pull-request to v3.4 backport-v4.0 Backport this pull-request to v4.0 backport-v4.1 Backport this pull-request to v4.1 backport-v4.2 Backport this pull-request to v4.2 changelog:repository Changes to the repository not within any gem changelog:skip Changes that we don't want to be listed in the Changelog changelog:solidus_api Changes to the solidus_api gem changelog:solidus_backend Changes to the solidus_backend gem changelog:solidus_core Changes to the solidus_core gem changelog:solidus_sample Changes to the solidus_sample gem
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants