← Back to team overview

group.of.nepali.translators team mailing list archive

[Bug 1574250] Re: icingaweb2 2.1.0 can't find Zend library

 

This bug was fixed in the package icingaweb2 - 2.1.0-1ubuntu1.2

---------------
icingaweb2 (2.1.0-1ubuntu1.2) xenial; urgency=medium

  * d/control: switch dependency from php to libapache2-mod-php
    (LP: #1574250).
    - 16.04's php package prefers php-fpm over libapache2-mod-php, but
      icingaweb2 only ships a configuration for apache.

 -- Nishanth Aravamudan <nish.aravamudan@xxxxxxxxxxxxx>  Fri, 09 Dec
2016 11:05:24 +0100

** Changed in: icingaweb2 (Ubuntu Xenial)
       Status: Fix Committed => Fix Released

** Changed in: zend-framework (Ubuntu Yakkety)
       Status: Fix Committed => Fix Released

-- 
You received this bug notification because you are a member of नेपाली
भाषा समायोजकहरुको समूह, which is subscribed to Xenial.
Matching subscriptions: Ubuntu 16.04 Bugs
https://bugs.launchpad.net/bugs/1574250

Title:
  icingaweb2 2.1.0 can't find Zend library

Status in icingaweb2 package in Ubuntu:
  Fix Released
Status in zend-framework package in Ubuntu:
  Invalid
Status in zendframework package in Ubuntu:
  Fix Released
Status in icingaweb2 source package in Xenial:
  Fix Released
Status in zend-framework source package in Xenial:
  Fix Released
Status in zend-framework source package in Yakkety:
  Fix Released

Bug description:
  [Impact]

  * After running `apt install icingaweb2`, the icinga frontend does not
  successfully load.

  * The root cause of this issue is two-fold: 1) icingaweb2 only ships a
  configuration for apache, but 16.04 defaults to php-fpm being used to
  satsify the php dependency. [16.10 does not have this issue.] 2) zend-
  framework installs to /usr/share/php/libzend-framework-php but the
  .ini file that accompanies ships with the required include_path change
  commented-out (due to an old bug now fixed in PHP5).

   * Note that the zesty fixes are rather different, as we have synced
  both icingaweb2 and zendframework (effectively, adding a delta to
  transition from the zend-framework binary packages) there.

  [Test Case]

  * Install icingaweb2 and attempt to navigate to
  http://<ip>/icingaweb2. A failing case will lead to the icinga login
  page not being displayed. A working case will display the login page.

  * Test that a PHP script using the old path of /usr/share/php/libzend-
  framework-php continues to work after the update.

  [Regression Potential]

  * The icingaweb2 change is low in regression, as it only changes the
  dependencies for the package. If a user had installed php on 16.04
  (and thus got php-fpm), there will be an additional package installed
  such that icingaweb2 now works -- this will be overhead if the user
  figured out how to configure fpm to host icingaweb2, but that would be
  outside the packaged conffiles.

  * The zend-framework change is possibly higher risk, as it installs
  files into a new path (directly into /usr/share/php rather than
  /usr/share/php/libzend-framework-php). However, we also put in a
  symlink for the old path pointing at /usr/share/php, in case anyone is
  using the old path explicitly in their code, which seems like the
  likeliest regression source.

  ---

  $ lsb_release -rd
  Description:    Ubuntu 16.04 LTS
  Release:        16.04

  $ apt-cache policy icingaweb2
  icingaweb2:
    Installed: 2.1.0-1ubuntu1
    Candidate: 2.1.0-1ubuntu1
    Version table:
   *** 2.1.0-1ubuntu1 500
          500 http://us.archive.ubuntu.com/ubuntu xenial/universe amd64 Packages
          500 http://us.archive.ubuntu.com/ubuntu xenial/universe i386 Packages
          100 /var/lib/dpkg/status

  I've installed Ubuntu 16.04 from the latest ISO and did a "apt update && apt upgrade" to be certain I use the latest updates.
  Then I've installed icingaweb2 via "sudo apt install icingaweb2":

  What was still missing after that was mod-php (the issue was a white
  page when browsing http://<hostname>/icingaweb2/). Thus, to get it
  working I had to run "sudo apt install libapache2-mod-php".

  With that the white page has been resolved but then I got the
  following error:

  <b>Warning</b>:  Uncaught ErrorException: require_once(Zend/Loader/Autoloader.php): failed to open stream: No such file or directory in /usr/share/php/Icinga/Application/ClassLoader.php:276
  Stack trace:
  #0 /usr/share/php/Icinga/Application/ClassLoader.php(276): Icinga\Application\ApplicationBootstrap->Icinga\Application\{closure}(2, 'require_once(Ze...', '/usr/share/php/...', 276, Array)
  #1 /usr/share/php/Icinga/Application/ClassLoader.php(276): require_once()
  #2 /usr/share/php/Icinga/Application/ClassLoader.php(294): Icinga\Application\ClassLoader->requireZendAutoloader()
  #3 [internal function]: Icinga\Application\ClassLoader->loadClass('Zend_Controller...')
  #4 /usr/share/php/Icinga/Web/Request.php(13): spl_autoload_call('Zend_Controller...')
  #5 /usr/share/php/Icinga/Application/ClassLoader.php(301): require('/usr/share/php/...')
  #6 [internal function]: Icinga\Application\ClassLoader->loadClass('Icinga\\Web\\Requ...')
  #7 /usr/share/php/Icinga/Application/EmbeddedWeb.php(82): spl_autoload_call('Icinga\\Web\\Requ...')
  #8 /usr/ in <b>/usr/share/php/Icinga/Application/ClassLoader.php</b> on line <b>276</b><br />
  <br />
  <b>Fatal error</b>:  Icinga\Application\ClassLoader::requireZendAutoloader(): Failed opening required 'Zend/Loader/Autoloader.php' (include_path='/usr/share/icingaweb2/library/vendor:.:/usr/share/php') in <b>/usr/share/php/Icinga/Application/ClassLoader.php</b> on line <b>276</b><br />

  The error is reproducible on all servers that I've tried so far
  (installed from scratch or updated from 14.04 LTS to 16.04 LTS).

  When I manually add "/usr/share/php/libzend-framework-php" to the
  "include_path" I can get rid of the error but then I'm stuck with the
  error described in
  https://bugs.launchpad.net/ubuntu/+source/icingaweb2/+bug/1571402

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/icingaweb2/+bug/1574250/+subscriptions