Missing dependencies
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
ganglia-web (Debian) |
Fix Released
|
Unknown
|
|||
ganglia-web (Ubuntu) |
Fix Released
|
Low
|
Nish Aravamudan | ||
Xenial |
Fix Released
|
Low
|
Nish Aravamudan |
Bug Description
[Impact]
* After installing ganglia-
* On 16.04, php-fpm is the first listed dependency for the php metapackage. There is no FPM configuration for ganglia and in fact it is only designed to work with libapache2-mod-php from apache (as far as I can tell). Indicate this in the dependencies. In 16.10, for reference, the php dependency order has changed (so libapache2-mod-php is preferred).
* Also, php-xml is now split out from the core and ganglia-webfrontend needs to explicitly indicate this dependency.
[Test Case]
* Install ganglia-
* Navigate to http://<ip>/ganglia
* Without the fixes, raw PHP is displayed (as php-fpm is being used to service PHP requests instead of mod_php7.0). With the fixes, the ganglia web interface is displayed.
[Regression Potential]
* The php-xml change has no chance of regression, as the current package errors out otherwise.
* The dependency order change might have some chance of regression, *if* a user has configured php-fpm correctly to service ganglia-
ganglia-webfrontend depends on libapache2-
This leads to errors `Sorry, you do not have access to this resource. "); } try { $dwoo = new Dwoo($conf[
Installing these 2 dependencies fixes it.
1) lsb_release -rd
Description: Ubuntu 16.04 LTS
Release: 16.04
2) apt-cache policy ganglia-webfrontend
ganglia-
Installed: 3.6.1-1ubuntu1
Candidate: 3.6.1-1ubuntu1
Version table:
*** 3.6.1-1ubuntu1 500
500 http://
500 http://
100 /var/lib/
3) I expected the dependencies to be installed
4) The dependencies were missing, it was difficult for me to debug because I am not a php guy. Got help from 'vvuksan' on irc.
tags: | added: php7 |
description: | updated |
Changed in ganglia-web (Ubuntu Xenial): | |
assignee: | nobody → Nish Aravamudan (nacc) |
Changed in ganglia-web (Ubuntu): | |
status: | New → In Progress |
Changed in ganglia-web (Ubuntu Xenial): | |
status: | New → In Progress |
Changed in ganglia-web (Debian): | |
status: | Unknown → New |
Changed in ganglia-web (Ubuntu): | |
importance: | Undecided → Low |
Changed in ganglia-web (Ubuntu Xenial): | |
importance: | Undecided → Low |
tags: | added: packaging |
Changed in ganglia-web (Debian): | |
status: | New → Fix Released |
Hi Jacob,
Thank you very much for filing this bug!
The way most web frameworks work (as I understand them), is that if you want to use apache with them, you need to tell apt that. In particular, in this case, ganglia-webfrontend in both Debian & Ubuntu has:
Depends: debconf (>= 0.5), apache | apache-ssl | apache-perl | apache2 | httpd-cgi, php | php-cgi | libapache2-mod-php, rrdtool
So, in fact, libapache2-mod-php is a stated dependency, but the way dependency resolution works, the first one is taken if not further specified.
We are discussing elsewhere (https:/ /bugs.launchpad .net/ubuntu/ +source/ drupal7/ +bug/1582340/ comments/ 6) what the right way to deal with this dependency resolution should be (as php will install php-fpm by default). If we go that route and switch the PHP dependencies around, you'd get apache by default.
It is valid to have php-xml explicitly listed as a dependency. However, this seems like a bug in Debian too, would you be willing to file a bug there (Yakkety is currently in sync).
Thanks,
Nish