Skip to content

Conversation

@bk2204
Copy link
Member

@bk2204 bk2204 commented May 5, 2022

Recently, we changed to use the windows-2019 target because ronn fails to build on newer versions. Unfortunately, it also fails to build on that version due to updates in GitHub Actions.

Since ronn itself is dead upstream, let's switch to ronn-ng, just like Debian has done. This provides an identically named binary but is a supported codebase that is more likely to work now and in the future.

Recently, we changed to use the windows-2019 target because ronn fails
to build on newer versions.  Unfortunately, it also fails to build on
that version due to updates in GitHub Actions.

Since ronn itself is dead upstream, let's switch to ronn-ng, just like
Debian has done.  This provides an identically named binary but is a
supported codebase that is more likely to work now and in the future.
@chrisd8088
Copy link
Member

Sweet! 🚀 I'm delighted this exists and very happy you spotted it, as it should save us a lot of effort!!

@bk2204 bk2204 marked this pull request as ready for review May 5, 2022 15:53
@bk2204 bk2204 requested a review from a team as a code owner May 5, 2022 15:53
Copy link
Member

@chrisd8088 chrisd8088 left a comment

Choose a reason for hiding this comment

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

LGTM. I wonder if it will require ruby/setup-ruby@v1 on the Windows 2022 runners or if it will work with the older, deprecated actions/setup-ruby@v1 we're using now. The latter would mean we could probably switch to the windows-latest runners again, per #4883. If we need ruby/setup-ruby@v1, though, we may still run into problems, IIRC.

Regardless, though, this is definitely a strict improvement over the status quo.

@bk2204
Copy link
Member Author

bk2204 commented May 5, 2022

I'll open an issue to track that and investigate the best way forward there. Since things aren't working now, I'd like to go with the smallest fix that will unbreak things, and then we can iteratively improve on things in the future.

@bk2204 bk2204 merged commit 2e63ade into git-lfs:main May 5, 2022
@bk2204 bk2204 deleted the windows-ronn-ng branch May 5, 2022 18:37
chrisd8088 added a commit to chrisd8088/git-lfs that referenced this pull request May 7, 2022
In commit f4ab4e7 of PR git-lfs#4883 we
noted that the "gem install ronn" step in our Windows CI workflows
currently fails on newer Windows Server 2022 GitHub Actions runners,
due to possibly some missing C headers or libraries.

While this could be resolved by upgrading to the "ruby/setup-ruby"
action from the deprecated "actions/setup-ruby" one, that introduced a
series of issues with PATH lookups as documented in ruby/setup-ruby#293.

We therefore chose to continue using Windows 2019 runners until a
resolution or workaround was found.

Fortunately, as of commit 912b607
in PR git-lfs#4992 we are now using the ronn-ng Ruby gem instead of the
unmaintained ronn gem, and the "gem install ronn-ng" workflow step
succeeds on Windows 2022 while still using the "actions/setup-ruby"
action to install a Ruby build environment.  This allows us to
upgrade to the latest Windows runners in GitHub Actions, although
we can't yet upgrade to the "ruby/setup-ruby" workflow action.

h/t to @bk2204 for finding ronn-ng!
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants