← Back to team overview

group.of.nepali.translators team mailing list archive

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

 

@lousigab: thanks for the quick response/testing! I'm uploading the
fixes now for SRU.

** Description changed:

+ [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).
+ 
+ [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.
+ 
+ [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
+   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

** No longer affects: icingaweb2 (Ubuntu Yakkety)

** Description changed:

  [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.
  
  [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

** Changed in: icingaweb2 (Ubuntu Xenial)
       Status: New => In Progress

** Changed in: zend-framework (Ubuntu Xenial)
       Status: New => In Progress

** Changed in: zend-framework (Ubuntu Yakkety)
       Status: New => In Progress

-- 
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:
  In Progress
Status in zend-framework source package in Xenial:
  In Progress
Status in zend-framework source package in Yakkety:
  In Progress

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.

  [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