Bug 1610588

Summary: ravada post-install setup missing some dependencies:
Product: [Fedora] Fedora EPEL Reporter: Scott Dowdle <dowdle>
Component: ravadaAssignee: Robert-André Mauchin 🐧 <zebob.m>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: epel7CC: zebob.m
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: ravada-0.3.0-0.6.beta6.el7 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-08-25 19:31:02 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Scott Dowdle 2018-08-01 01:30:40 UTC
ravada installs just fine but when following the instructions for setting it up (http://ravada.readthedocs.io/en/latest/docs/INSTALL.html) in the "Ravada web user" section:

sudo /usr/sbin/rvd_back --add-user user.name

rvd_back gives the following error:
Unknown warnings category 'experimental::signatures' at /usr/share/perl5/vendor_perl/Ravada.pm line 19.
BEGIN failed--compilation aborted at /usr/share/perl5/vendor_perl/Ravada.pm line 19.
Compilation failed in require at /usr/sbin/rvd_back line 12.
BEGIN failed--compilation aborted at /usr/sbin/rvd_back line 12.

Comparing to the dependencies of the Fedora packages, there are a few packages that don't get installed and one or more missing packages... but then again, the package names and exact package contents / dependencies may differ between Fedora and EL7, eh?

Can't quite figure out what is needed to make it work on EL7.

Comment 1 Robert-André Mauchin 🐧 2018-08-01 16:12:17 UTC
It seems, and I wasn't aware of it, this feature requires Perl 5.020, but EL7 only provides 5.016300.

I don't know how to solve this yet.

Comment 2 Scott Dowdle 2018-08-01 17:15:33 UTC
Red Hat's Software Collections (SCL) (and CentOS and Scientific Linux both offer clone SCL repos) does offer rh-perl526 packages.  I do not know if they package everything needed for Ravada... nor if EPEL packages anything to augment it (I'm thinking not) but that may be one way though.  I'll have to try that out when I get a chance and let you know.

Given that SCLs can be installed in parallel with system versions, there may need to be some minor modifications to the system (to set the desired default perl) or to the applications.  I'm not sure at this point.   I have used SCL a little but mainly for newer versions of PHP in EL7.

Comment 3 Fedora Update System 2018-08-01 22:53:44 UTC
ravada-0.3.0-0.2.beta6.el7 has been submitted as an update to Fedora EPEL 7. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2018-49c1eabfab

Comment 4 Robert-André Mauchin 🐧 2018-08-01 23:52:40 UTC
(In reply to Scott Dowdle from comment #2)
> Red Hat's Software Collections (SCL) (and CentOS and Scientific Linux both
> offer clone SCL repos) does offer rh-perl526 packages.  I do not know if
> they package everything needed for Ravada... nor if EPEL packages anything
> to augment it (I'm thinking not) but that may be one way though.  I'll have
> to try that out when I get a chance and let you know.
> 
> Given that SCLs can be installed in parallel with system versions, there may
> need to be some minor modifications to the system (to set the desired
> default perl) or to the applications.  I'm not sure at this point.   I have
> used SCL a little but mainly for newer versions of PHP in EL7.

The package would be useless because it is installed in /usr whereas SCL packages are in /opt.

What I've done instead is patch the source to be compatible with Perl 5.16.

Comment 5 Scott Dowdle 2018-08-02 01:41:21 UTC
Well, having an additional version of Perl on the system under /opt has to be useful somehow or they'd not offer it... I would imagine.  I believe one just has to setup the environment before running the software... but I don't know much about it.

In any event, I tried the updated package you provided with the patch and now when I try to create a ravada account I'm getting:

- - - - -
# /usr/sbin/rvd_back --add-user dowdle
DBD::mysql::db do failed: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'TIMESTAMP,
   `date_shown` datetime,
   `date_read` datetime,
   PRIMARY KEY (`i' at line 7 at /usr/share/perl5/vendor_perl/Ravada.pm line 982.
- - - - -

Not quote whack-a-mole yet.  Hopefully it won't turn into that.  I hope if you get it all working that the patches make it upstream... assuming they are interested in offering compatibility with distributions using older versions of Perl.

Thanks for you past and continuing efforts.  They are appreciated.

Comment 6 Fedora Update System 2018-08-02 15:49:39 UTC
ravada-0.3.0-0.2.beta6.el7 has been pushed to the Fedora EPEL 7 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2018-49c1eabfab

Comment 7 Scott Dowdle 2018-08-02 21:19:19 UTC
Getting closer.  The mariadb patch worked.  I was able to initialize the ravada database and create a ravada user.

Trying to create a VM I get this error after defining it:

2018-08-02 15:15:59 | create Xubuntu1804 done Can't locate object method "vm" via package "XML::LibXML::Text" at /usr/share/perl5/vendor_perl/Ravada/VM/KVM.pm line 1422.

Will that require a code change or am I just missing a dependency that could be fix by installing an additional package or two?

Comment 8 Robert-André Mauchin 🐧 2018-08-04 14:39:46 UTC
It's difficult for me to test this because I don't have an EPEL at hand. Testing in a VM doesn't work well either because it's not KVM-enabled.

Comment 9 Fedora Update System 2018-08-04 14:47:53 UTC
ravada-0.3.0-0.4.beta6.el7 has been submitted as an update to Fedora EPEL 7. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2018-e77ad64eb4

Comment 10 Scott Dowdle 2018-08-04 21:27:44 UTC
(In reply to Robert-André Mauchin from comment #8)
> It's difficult for me to test this because I don't have an EPEL at hand.
> Testing in a VM doesn't work well either because it's not KVM-enabled.

Either your hardware isn't capable of nested KVM or it is new to you and you haven't set it up yet?  I've been testing Ravada in CentOS using nested virtualization at work... and at home, on a physical machine.  Nested isn't optimal but it does work fairly well and is just fine for testing.

I've noticed this error on the last two builds (ravada-0.3.0-0.3.beta6 and ravada-0.3.0-0.4.beta6) when trying to create a VM:

2018-08-04 15:00:32 | create Xubuntu1804 done libvirt error code: 38, message: Cannot check QEMU binary /usr/bin/qemu-kvm: No such file or directory

Comment 11 Fedora Update System 2018-08-04 22:56:20 UTC
ravada-0.3.0-0.4.beta6.el7 has been pushed to the Fedora EPEL 7 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2018-e77ad64eb4

Comment 12 Fedora Update System 2018-08-05 01:47:13 UTC
ravada-0.3.0-0.5.beta6.el7 has been submitted as an update to Fedora EPEL 7. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2018-d0e4dbeec9

Comment 13 Fedora Update System 2018-08-07 01:33:46 UTC
ravada-0.3.0-0.5.beta6.el7 has been pushed to the Fedora EPEL 7 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2018-d0e4dbeec9

Comment 14 Scott Dowdle 2018-08-07 01:55:58 UTC
Getting this error when trying to start a VM afer it is "created":

libvirt error code: 67, message: unsupported configuration: vmport is not available with this QEMU binary

As a result, the VM can not start for the first time (to do the install from the bootable install media).

Comment 15 Robert-André Mauchin 🐧 2018-08-07 14:51:43 UTC
Weird, I managed to launch an Alpine VM from within the VM last time. If Qemu-kvm is too old I don't know what I could do to solve that.

Comment 16 Robert-André Mauchin 🐧 2018-08-07 15:25:43 UTC
Ok found the issue which should only appear in Bionic based VM, I'll push a patch ASAP.

Comment 17 Fedora Update System 2018-08-07 16:31:46 UTC
ravada-0.3.0-0.6.beta6.el7 has been submitted as an update to Fedora EPEL 7. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2018-bea042947c

Comment 18 Fedora Update System 2018-08-08 17:34:31 UTC
ravada-0.3.0-0.6.beta6.el7 has been pushed to the Fedora EPEL 7 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2018-bea042947c

Comment 19 Scott Dowdle 2018-08-13 17:59:57 UTC
After doing various installs, it seems to be working as well as can be expected considering.  Thanks for your labors.

Comment 20 Fedora Update System 2018-08-25 19:31:02 UTC
ravada-0.3.0-0.6.beta6.el7 has been pushed to the Fedora EPEL 7 stable repository. If problems still persist, please make note of it in this bug report.