-
Notifications
You must be signed in to change notification settings - Fork 178
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
ci: fix ignored errors within appraisal loop #1103
ci: fix ignored errors within appraisal loop #1103
Conversation
This has unearthed filesystem permissions set in the pre-built runners that bundler does not approve of. There is an issue open about world-writtable Ruby install location. I'll add a workaround in the meantime. |
Remove write access to the world on GEM_HOME. Hopefully a temporary workaround until the runner image is fixed. See actions/runner-images#10215
a0899fa
to
4ac28e3
Compare
gruf releases with lower/upper limits for spec.required_ruby_version. So we won't test under Ruby versions that a gruf version won't successfully resolve for.
It might make sense to fix the pg tests in a separate PR depending on how we'd like to communicate the drop support. This PR so far is a non-breaking change. |
@@ -100,7 +107,7 @@ runs: | |||
echo "::group::🔎 Appraising ${i}" | |||
BUNDLE_GEMFILE=gemfiles/${i}.gemfile bundle install --quiet --jobs=3 --retry=4 && \ | |||
BUNDLE_GEMFILE=gemfiles/${i}.gemfile bundle show && \ | |||
BUNDLE_GEMFILE=gemfiles/${i}.gemfile bundle exec rake test | |||
BUNDLE_GEMFILE=gemfiles/${i}.gemfile bundle exec rake test || exit |
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.
would using bundle install --path
using a relative vendor directory address the permissions issue?
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.
Probably! I cannot confirm a fix locally, so I'll throw another commit on here changing the workaround from the separate chmod
step to including a --path
switch here. Then I'll push that up and see how CI reacts.
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.
bundle install --path
is deprecated, so I went with bundle config path
in d7ba5f4. Now watching CI. ⌛
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.
Nope. bundle config path
didn't work for bundler's filesystem permission check. I'm going to revert that commit and go back to chmod
.
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.
@simi any tips here?
Alternative workaround to /opt/hostedtoolcache/Ruby being world writable in the ubuntu 20240708.1.0 GA runner image. See actions/runner-images#10215
@kaylareopelle, to get CI on |
This reverts commit d7ba5f4. 'bundle config path' was not enough to workaround bundler's filesystem permission check.
The existing loop over appraisals for a gem is swallowing any error exits returned by commands within the loop.
Resolves #1097. The specific error mentioned in that issue for failure to bundle install pg 1.2 was fixed in #1108. This change fixes the appraisal loop.
Fix appraisal loop swallowing errors:
Fix other errors that were being swallowed: