Foreman-nightly-rpm-pipeline 1763 failed

Foreman RPM nightly pipeline failed:

foreman-pipeline-foreman-rpm-nightly (failed) (remote job)

I merged quite some packaging bumps yesterday, so it’s maybe that. Looking.

NameError: uninitialized constant Uglifier

Ding ding ding!

cc @nofaralfasi @Ron_Lavi

I think the problem is that the uglifier gem is not loaded when config.rb is parsed, and in the past using :uglifier would trigger sprockets or something, but now it doesn’t?

Or it is because uglifier is in the assets group, but that is not installed on production installs.

Found this one: ruby on rails - Heroku push error: "NameError: uninitialized constant Uglifier::VERSION" on rake assets:precompile - Stack Overflow

Maybe we need to update Uglifier version:

if we’re using Uglifier, we’re using the latest version: 4.2, but in production installs it’s not there as we do not install the asserts group in RPM installs.

1 Like

oh, missed that >=
so how should we proceed with this? are we able to install those assets in production?
do we want to revert this change for now?

I would prefer not to require any assets related gems in production, no.

Revert is certainly the easiest. I wonder anyways, as ES6 support in Uglifier is not documented as production ready (and not enabled by default), and it’s recommended to use terser-ruby instead?

We could also do something ugly (lol) like

if defined?(Uglifier)
  config.assets.js_compressor = true)
  config.assets.js_compressor = :uglifier

(but I’d prefer not to?)

Well, the easiest solution would be to revert it, especially since this change is not really necessary.

For those who keep notes: this was reverted in Revert "Fixes #35890 - enable harmony mode with Uglifier to use ES6 syntax" by Ron-Lavi · Pull Request #9594 · theforeman/foreman · GitHub

And foreman-nightly-rpm-pipeline [Jenkins] is green!

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.