Hawk backend fails to start

Hello All;

Installed openSUSE Leap 15.2, then KVM tools, Hawk and cluster modules.
I can ha-cluster-init, and indeed it does config the cluster
It also states that I can use HAWK2 (HA Web Konsole). But when I to to https://192.168.12.242:7630/ I’m greeted with a blank white screen

the hawk deamon is running
systemctl status hawk
● hawk.service - HA Web Konsole
Loaded: loaded (/usr/lib/systemd/system/hawk.service; enabled; vendor preset>
Active: active (running) since Mon 2020-07-06 21:43:25 MDT; 17min ago
Main PID: 1903 (hawk-apiserver)

But not the hawk-backend
systemctl status hawk-backend
● hawk-backend.service - HA Web Konsole Backend
Loaded: loaded (/usr/lib/systemd/system/hawk-backend.service; static; vendor>
Active: failed (Result: exit-code) since Mon 2020-07-06 22:01:52 MDT; 5s ago
Process: 14663 ExecStart=/usr/bin/puma.ruby2.5 -C /usr/share/hawk/config/puma>
Main PID: 14663 (code=exited, status=1/FAILURE)

So, looking at the /var/log/messages file, this is what I get

2020-07-06T21:52:07.277099-06:00 nss-leap152 systemd[1]: Started HA Web Konsole Backend.
2020-07-06T21:52:07.393681-06:00 nss-leap152 puma.ruby2.5[10033]: [10033] Puma starting in cluster mode…
2020-07-06T21:52:07.393886-06:00 nss-leap152 puma.ruby2.5[10033]: [10033] * Version 3.11.0 (ruby 2.5.8-p224), codename: Love Song
2020-07-06T21:52:07.393999-06:00 nss-leap152 puma.ruby2.5[10033]: [10033] * Min threads: 0, max threads: 1
2020-07-06T21:52:07.394113-06:00 nss-leap152 puma.ruby2.5[10033]: [10033] * Environment: production
2020-07-06T21:52:07.394231-06:00 nss-leap152 puma.ruby2.5[10033]: [10033] * Process workers: 1
2020-07-06T21:52:07.394350-06:00 nss-leap152 puma.ruby2.5[10033]: [10033] * Preloading application
2020-07-06T21:52:07.710011-06:00 nss-leap152 puma.ruby2.5[10033]: [10033] ! Unable to load application: Gem::ConflictError: Unable to activate sass-rails-5.1.0, because railties-5.1.4 conflicts with railties (>= 5.2.0)
2020-07-06T21:52:07.710267-06:00 nss-leap152 puma.ruby2.5[10033]: /usr/lib64/ruby/2.5.0/rubygems/specification.rb:2327:in raise_if_conflicts': Unable to activate sass-rails-5.1.0, because railties-5.1.4 conflicts with railties (>= 5.2.0) (Gem::ConflictError) 2020-07-06T21:52:07.710480-06:00 nss-leap152 puma.ruby2.5[10033]: #011from /usr/lib64/ruby/2.5.0/rubygems/specification.rb:1438:in activate’
2020-07-06T21:52:07.710599-06:00 nss-leap152 puma.ruby2.5[10033]: #011from /usr/lib64/ruby/2.5.0/rubygems/core_ext/kernel_gem.rb:68:in block in gem' 2020-07-06T21:52:07.710749-06:00 nss-leap152 puma.ruby2.5[10033]: #011from /usr/lib64/ruby/2.5.0/rubygems/core_ext/kernel_gem.rb:67:in synchronize’
2020-07-06T21:52:07.710878-06:00 nss-leap152 puma.ruby2.5[10033]: #011from /usr/lib64/ruby/2.5.0/rubygems/core_ext/kernel_gem.rb:67:in gem' 2020-07-06T21:52:07.710991-06:00 nss-leap152 puma.ruby2.5[10033]: #011from /usr/share/hawk/config/boot.rb:35:in <top (required)>’
2020-07-06T21:52:07.711074-06:00 nss-leap152 puma.ruby2.5[10033]: #011from /usr/lib64/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in require' 2020-07-06T21:52:07.711158-06:00 nss-leap152 puma.ruby2.5[10033]: #011from /usr/lib64/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in require’
2020-07-06T21:52:07.711239-06:00 nss-leap152 puma.ruby2.5[10033]: #011from /usr/share/hawk/config/application.rb:4:in <top (required)>' 2020-07-06T21:52:07.711320-06:00 nss-leap152 puma.ruby2.5[10033]: #011from /usr/share/hawk/config/environment.rb:5:in require_relative’
2020-07-06T21:52:07.711400-06:00 nss-leap152 puma.ruby2.5[10033]: #011from /usr/share/hawk/config/environment.rb:5:in <top (required)>' 2020-07-06T21:52:07.711477-06:00 nss-leap152 puma.ruby2.5[10033]: #011from /usr/lib64/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in require’
2020-07-06T21:52:07.711573-06:00 nss-leap152 puma.ruby2.5[10033]: #011from /usr/lib64/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in require' 2020-07-06T21:52:07.711650-06:00 nss-leap152 puma.ruby2.5[10033]: #011from config.ru:4:in block in <main>’
2020-07-06T21:52:07.711726-06:00 nss-leap152 puma.ruby2.5[10033]: #011from /usr/lib64/ruby/gems/2.5.0/gems/rack-2.0.8/lib/rack/builder.rb:55:in instance_eval' 2020-07-06T21:52:07.711804-06:00 nss-leap152 puma.ruby2.5[10033]: #011from /usr/lib64/ruby/gems/2.5.0/gems/rack-2.0.8/lib/rack/builder.rb:55:in initialize’
2020-07-06T21:52:07.711880-06:00 nss-leap152 puma.ruby2.5[10033]: #011from config.ru:in new' 2020-07-06T21:52:07.711957-06:00 nss-leap152 puma.ruby2.5[10033]: #011from config.ru:in <main>’
2020-07-06T21:52:07.712037-06:00 nss-leap152 puma.ruby2.5[10033]: #011from /usr/lib64/ruby/gems/2.5.0/gems/rack-2.0.8/lib/rack/builder.rb:49:in eval' 2020-07-06T21:52:07.712114-06:00 nss-leap152 puma.ruby2.5[10033]: #011from /usr/lib64/ruby/gems/2.5.0/gems/rack-2.0.8/lib/rack/builder.rb:49:in new_from_string’
2020-07-06T21:52:07.712186-06:00 nss-leap152 puma.ruby2.5[10033]: #011from /usr/lib64/ruby/gems/2.5.0/gems/rack-2.0.8/lib/rack/builder.rb:40:in parse_file' 2020-07-06T21:52:07.712257-06:00 nss-leap152 puma.ruby2.5[10033]: #011from /usr/lib64/ruby/gems/2.5.0/gems/puma-3.11.0/lib/puma/configuration.rb:318:in load_rackup’
2020-07-06T21:52:07.712327-06:00 nss-leap152 puma.ruby2.5[10033]: #011from /usr/lib64/ruby/gems/2.5.0/gems/puma-3.11.0/lib/puma/configuration.rb:243:in app' 2020-07-06T21:52:07.712401-06:00 nss-leap152 puma.ruby2.5[10033]: #011from /usr/lib64/ruby/gems/2.5.0/gems/puma-3.11.0/lib/puma/runner.rb:138:in load_and_bind’
2020-07-06T21:52:07.712472-06:00 nss-leap152 puma.ruby2.5[10033]: #011from /usr/lib64/ruby/gems/2.5.0/gems/puma-3.11.0/lib/puma/cluster.rb:397:in run' 2020-07-06T21:52:07.712540-06:00 nss-leap152 puma.ruby2.5[10033]: #011from /usr/lib64/ruby/gems/2.5.0/gems/puma-3.11.0/lib/puma/launcher.rb:183:in run’
2020-07-06T21:52:07.712611-06:00 nss-leap152 puma.ruby2.5[10033]: #011from /usr/lib64/ruby/gems/2.5.0/gems/puma-3.11.0/lib/puma/cli.rb:77:in run' 2020-07-06T21:52:07.712680-06:00 nss-leap152 puma.ruby2.5[10033]: #011from /usr/lib64/ruby/gems/2.5.0/gems/puma-3.11.0/bin/puma:10:in <top (required)>’
2020-07-06T21:52:07.712772-06:00 nss-leap152 puma.ruby2.5[10033]: #011from /usr/bin/puma.ruby2.5:23:in load' 2020-07-06T21:52:07.712848-06:00 nss-leap152 puma.ruby2.5[10033]: #011from /usr/bin/puma.ruby2.5:23:in <main>’
2020-07-06T21:52:07.713821-06:00 nss-leap152 systemd[1]: hawk-backend.service: Main process exited, code=exited, status=1/FAILURE
2020-07-06T21:52:07.714104-06:00 nss-leap152 systemd[1]: hawk-backend.service: Unit entered failed state.
2020-07-06T21:52:07.714242-06:00 nss-leap152 systemd[1]: hawk-backend.service: Failed with result ‘exit-code’.

query the rpm
nss-leap152:~ # rpm -qa | grep railties
ruby2.5-rubygem-railties-5_1-5.1.4-lp152.3.3.x86_64
ruby2.5-rubygem-railties-5.2-5.2.3-lp152.2.3.x86_64
nss-leap152:~ # rpm -qa | grep sass
ruby2.5-rubygem-sass-3.5.3-lp152.3.3.x86_64
ruby2.5-rubygem-sass-rails-5.1-5.1.0-lp152.1.1.x86_64
ruby2.5-rubygem-sass-listen-4.0.0-lp152.3.3.x86_64

Any suggestions, comments, guesses?

First,
Welcome to the openSUSE Forums…
You might notice from looking at other posts that we recommend that any code, commands, stdout, etc are generally enclosed in

 tags which are easily generated by the hash button (#) in the web editor's toolbars. This helps to separate and highlight actual input/output from text we write.

Basic question that needs to be asked is your steps installing HAWK, did you install packages individually? Were all packages from the openSUSE repo or from somewhere else(HAWK2 is in the openSUSE repos)? And, are you following a reference installing HAWK, if there is a link to whatever guide you're using it can be helpful.

As for your fixing your problem, it appears that somehow you installed a version of railties that's not sufficiently up to date.
You have choices... the software search site returns results for installing versions 5.2.3(your existing OSS repository), 5.2.4(recommend devel:languages:ruby:extensions repository) or 5.0.3.2, all which would fix your error

The software search
https://software.opensuse.org/search?utf8=%E2%9C%93&baseproject=ALL&q=railties

HTH,
TSU

Open bug report. Both packages are pulled in by hawk but they apparently conflict. You can try to remove version 5.2 for testing whether it is just packaging glitch or something more deep.

OK, removed one of the packages but still not go, Same issue that hawk-backend still will not start and have the same error

nss-leap152:~ # rpm -ev --nodeps ruby2.5-rubygem-railties-5.2-5.2.3-lp152.2.3.x86_64
Preparing packages…
update-alternatives: using /usr/bin/rails.ruby2.5-5.1.4 to provide /usr/bin/rails (rails) in auto mode
update-alternatives: using /usr/bin/rails.ruby2.5-5.1.4 to provide /usr/bin/rails.ruby2.5 (rails.ruby2.5) in auto mode
ruby2.5-rubygem-railties-5.2-5.2.3-lp152.2.3.x86_64
warning: file /usr/bin/rails-5.2.3: remove failed: No such file or directory
nss-leap152:~ # rpm -qa | grep railties
ruby2.5-rubygem-railties-5_1-5.1.4-lp152.3.3.x86_64


2020-07-07T07:45:00.025592-06:00 nss-leap152 puma.ruby2.5[6607]: [6607] * Preloading application
2020-07-07T07:45:00.341164-06:00 nss-leap152 puma.ruby2.5[6607]: [6607] ! Unable to load application: Gem::ConflictError: Unable to activate sass-rails-5.1.0, because railties-5.1.4 conflicts with railties (>= 5.2.0)
2020-07-07T07:45:00.341409-06:00 nss-leap152 puma.ruby2.5[6607]: /usr/lib64/ruby/2.5.0/rubygems/specification.rb:2327:in `raise_if_conflicts’: Unable to activate sass-rails-5.1.0, because railties-5.1.4 conflicts with railties (>= 5.2.0) (Gem::ConflictError)

I just installed hawk on a newly installed 15.2.
Unless someone fixed something within the last 24hrs, I see no no problems running it although I don’t have it properly configured to manage a cluster.

So,
Again…
How did you install hawk?
Did you install from source or packages, and if from packages where did these packages come from?

Since yesterday, I’ve located at least 3 “authoritative” documents that describe everything from installation to configuration to testing…
Offhand, I recommend the following because I don’t see anything (yet, it’s very long) in the following SLES documentation that doesn’t also work on openSUSE LEAP 15.2

https://documentation.suse.com/sle-ha/15-SP2/html/SLE-HA-all/cha-conf-hawk2.html

After looking at what is on my system, it looks like the proper Ruby should have been installed by default on your LEAP 15.2, and you should not have run into your problem if you are running the correct Ruby (which is by default).

To verify which Ruby your system is running and if necessary set correctly, run the following

supdate-alternatives --config rails

You should see rails versions 5.1.4 and 5.2.3.
Of course, make sure you are configured for 5.2.3.

So, let’s hold off on submitting something to the bugzilla until we can narrow down what problems exist if any…

TSU

I see a typo is in the command I specified, should be

update-alternatives --config rails

TSU

to your question
How did you install hawk?
Did you install from source or packages, and if from packages where did these packages come from?
from packages.

As stated
I removed 1 of the ruby-railties packages

nss-leap152:~ # rpm -ev --nodeps ruby2.5-rubygem-railties-5.2-5.2.3-lp152.2.3.x86_64
Preparing packages…
update-alternatives: using /usr/bin/rails.ruby2.5-5.1.4 to provide /usr/bin/rails (rails) in auto mode
update-alternatives: using /usr/bin/rails.ruby2.5-5.1.4 to provide /usr/bin/rails.ruby2.5 (rails.ruby2.5) in auto mode
ruby2.5-rubygem-railties-5.2-5.2.3-lp152.2.3.x86_64
warning: file /usr/bin/rails-5.2.3: remove failed: No such file or directory

nss-leap152:~ # rpm -qa | grep railties
ruby2.5-rubygem-railties-5_1-5.1.4-lp152.3.3.x86_64

nss-leap152:~ # update-alternatives --config rails
There is only one alternative in link group rails (providing /usr/bin/rails): /usr/bin/rails.ruby2.5-5.1.4
Nothing to configure.

more suggestions?

I just checked another 15.2 “clean install” I built…
Apparently the choice of rails doesn’t exist on a default install.

This leads me to believe that someone may have fixed the hawk install within the past 24 hrs.

Try this…

All of the following assumes that you installed hawk from packages downloaded from the OSS (openSUSE repositories).
If you installed from any other source, then don’t do the following and please describe where you obtained your hawk installation files from and what you did to install.

First update your system with the following command (all of these commands require an elevated console)

zypper up

After your system is updated, try doing a “force re-install” which should reinstall over-writing what already exists

zypper in -force hawk

Then check the rails again

update-alternatives --config rails

If that looks good (proper version) it should also mean the particular railties package should be the right version, too and you can test re-starting the hawk service and launching the web browser hawk.

If the above works, then we won’t go into manually removing files.

HTH,
TSU

I see exactly the same on clean new install of Leap 15.2. As I already told you - open bug report. There is no point in wasting time discussing this on forum.

OK,
I’ll bite.
What are you going to put in the bug report?
As I described, I installed on a pristine, new 15.2 and didn’t throw any errors.
And specifically, the errors in the log in the first post are addressed.

Most likely the original install was by some unusual manner (I never saw an answer how hawk was installed, I think there was a misunderstanding thinking I was asking about the specific library). There are at least 3 documentation I located which could be considered sufficiently authoritative (Source, hawk website, suse documentation) but based on a very quick skim I recommend the suse documentation (I provided reference) as likely most complete and likely accurate.

TSU

did another fresh clean server install of openSUSE Leap 15.2, use openSUSE repositories
set IP
zypper in hawk2
zypper in ha-cluster-bootstrap
ha-cluster-init

  • no sbd
    systemctl restart hawk
    systemctl restart hawk-backend

with the browser (from a Win 10 laptop) https://192.168.12.242:7630/

  • get certificate error - accept
    BLANK screen


system status hawk-backend

  • failed
  • same railties error

nss-leap152:~ # zypper up
Loading repository data…
Reading installed packages…

Nothing to do.
nss-leap152:~ # zypper in -force hawk
The flag o is not known.
nss-leap152:~ # update-alternatives --config rails
There are 2 choices for the alternative rails (providing /usr/bin/rails).

Selection Path Priority Status

  • 0 /usr/bin/rails.ruby2.5-5.2.3 50203 auto mode
    1 /usr/bin/rails.ruby2.5-5.1.4 50104 manual mode
    2 /usr/bin/rails.ruby2.5-5.2.3 50203 manual mode
  • I chose option 1, 2 and back to 0, still no joy
  • restart hawk and hawk-backend in-between options.

zypper in -f hawk2
Loading repository data…
Reading installed packages…
Forcing installation of ‘hawk2-2.1.1+git.1585238036.fab19246-lp152.1.9.x86_64’ from repository ‘Main Repository’.
Resolving package dependencies…

The following package is going to be reinstalled:
hawk2

1 package to reinstall.
Overall download size: 9.3 MiB. Already cached: 0 B. No additional space will be used or freed after the operation.
Continue? [y/n/v/…? shows all options] (y):
Retrieving package hawk2-2.1.1+git.1585238036.fab19246-lp152.1.9.x86_64 (1/1), 9.3 MiB ( 20.6 MiB unpacked)
Retrieving: hawk2-2.1.1+git.1585238036.fab19246-lp152.1.9.x86_64.rpm …[done (3.7 MiB/s)]

Checking for file conflicts: …[done]
(1/1) Installing: hawk2-2.1.1+git.1585238036.fab19246-lp152.1.9.x86_64 …[done]
Additional rpm output:
Updating /etc/sysconfig/hawk …

systemctl restart hawk
systemctl restart hawk-backend

  • still BLANK whit screen - no joy

Bugzilla – Bug 1173919
Hawk backend fails to start

My first bug report

Installed openSUSE Leap 15.1
set IP
zypper in hawk2
zypper in ha-cluster-bootstrap
ha-cluster-init

I see hawk & hawk-backend are active (runing)

rpm -qa | grep railties
ruby2.5-rubygem-railties-5_1-5.1.4-lp152.3.3.x86_64

  • only 1 railties

https://192.168.12.238:7630/

  • get certificate error - accept
  • receive hawk2 login, login & view hawk2 screen

great its working


DVD upgrade with openSUSE Leap 15.2

after upgrade, hawk2 login working
I see hawk & hawk-backend are active (runing)

and still only 1 ruby2.5-rubygem-railties

For now this is the way to get this to work until the repositories are fixed.

Glad to hear you got it working although it looks like you did it by installing into 15.1 and then upgrading to 15.2,
And for posting what you did for your success.

Sorry for my mistake leaving out that extra hyphen

zypper in --force hawk

but you did find its equivalent

zypper in -f hawk

But, IMO when you ran the following command you should have seen two versions of Ruby Rails, and selecting the more recent version should have included the correct version of railties.

update-alternatives --config rails

I’m wondering then if you are simply running “old code.”
I doubt even if is the case, that it would make any difference… The older version of Ruby on Rails is not that old and as long as everything is consistent your problem should be solved.

TSU

Hello,

I just stumbled upon the same situation. And I found a quick solution for it: just lock the “ruby2.5-rubygem-railties-5.2” package.

zypper al ruby2.5-rubygem-railties-5.2

After that you can install hawk2 and it works as it should.

Just if someone is still interested in hawk :slight_smile:

If you found this to be your solution,
Recommend that you submit a bug to https://bugzilla.opensuse.org
or
Directly to the hawk github repo.

If not addressed, the problem will just become more onerous as time goes on…

TSU

Recommend that you submit a bug to https://bugzilla.opensuse.org
or
Directly to the hawk github repo.

But I am not sure if it is really a hawk bug.
“ruby2.5-rubygem-railties-5.2” seems not to be a direct dependency of the hawk package. I think it more related to different dependencies between several ruby gems.

But I opened a bug report in the GitHub project as they are already having some ruby gem related stuff.

I’d consider it a dependency if an older version of something works but a newer version doesn’t.
Hawk is an example of backend functionality exposed with a frontend “presentation” layer (web code). Both needs to work properly, you can’t say that the frontend is someone else’ problem.

TSU

I uninstalled the 5.2.3 version of railties, which consequently uninstalled the other dependency we see in the error log, and then I was able to successfully launch hawk. FYI

Hi,

Maybe this is old thread. I found something to solve this.
By default if you install hawk2 this dependencies will include:

ruby2.5-rubygem-railties-5.2 
ruby2.5-rubygem-sass-rails-5.1

So, you have to change ruby2.5-rubygem-sass-rails-5.1 to ruby2.5-rubygem-sass-rails-5.0.7-lp152.3.3

zypper in ruby2.5-rubygem-sass-rails

If you already installed all the packages, remove first and install the old one.

zypper rm ruby2.5-rubygem-sass-rails-5.1 && zypper in ruby2.5-rubygem-sass-rails

Restart your hawk.

systemctl restart hawk.service

If still failed, just remove hawk2 and ruby2.5-rubygem-railties-5.2, ruby2.5-rubygem-sass-rails-5.1
Install first ruby2.5-rubygem-sass-rails-5.0.7-lp152.3.3
and then install hawk2

Thomson