chaps-io / gush

Fast and distributed workflow runner using ActiveJob and Redis
MIT License
1.04k stars 104 forks source link

Update gush dependencies #107

Closed krzyzak closed 7 months ago

krzyzak commented 7 months ago

This PR introduces following changes:

natemontgomery commented 7 months ago

I see that there is a failure in the actions running due to a NoMethodError on 'assert'. I think your adding of require 'active_support' seems logical but if that is not working another thought would be to add an include to the config in spec_helper:

require 'active_support'
require 'active_support/testing/assertions'
require 'active_support/testing/time_helpers'
...

RSpec.configure do |config|
  config.include ActiveSupport::Testing::Assertions
  config.include ActiveSupport::Testing::TimeHelpers
  ...

I haven't been able to reproduce this locally yet though so I am not 100% sure on this as a fix in the GitHub run.

Also, looks like the actions for testing are raising a deprecation about Node 16, I think this means a need for change of the actions/checkout@v2 line to something newer, https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#example-using-versioned-actions.

natemontgomery commented 7 months ago

The fact that I can't seem to easily reproduce the action test failure locally makes me think it could be something to do with the container environment in the action. Might be worth trying out adding a before hook to reset the test adapter, as I have seen some suggestions that container environments with multiple containers can have some edge with ActiveJob assertions (I have never seen it myself before though).

That would mean something like before { ActiveJob::Base.queue_adapter = :test }

I'm going to keep plugging at trying to reproduce locally, but wanted to post some thoughts in case I can help. Thanks for opening this PR btw :)

krzyzak commented 7 months ago

Hi @natemontgomery!

I was able to debug this locally by running RAILS_VERSION='7.1.2' bundle exec rspec. I found the root cause and now the CI is green. We'll release new version that modernises gush a bit very soon, stay tuned! ;)

natemontgomery commented 7 months ago

Yea I was able to reproduce locally once I found the versions issues (and after running through the GitHub action locally). It seems like you have it well in hand, thanks again!

pokonski commented 7 months ago

Looks good but I think we should make it a 3.0.0 version