Commit Graph

428 Commits

Author SHA1 Message Date
Johannes Meyer 196b6a4875 Ensure that Zend is loaded when showing status information in the CLI
fixes #7869
2014-12-09 15:38:13 +01:00
Thomas Gelf 09e59ba44a Modules\Module: determine correct config dir 2014-12-03 10:43:27 +01:00
Eric Lippmann a2a97537ce Log: Fix StdoutWriter not using our "new" Logger's interface 2014-12-03 09:38:33 +01:00
Johannes Meyer ebf908b1b5 Make db requirement checks more sensitive
fixes #7837
2014-12-01 15:38:10 +01:00
Eric Lippmann aef81a56d6 Merge branch 'master' into feature/security-gui-5647
Conflicts:
	library/Icinga/Application/Config.php
	library/Icinga/File/Ini/IniWriter.php
	library/Icinga/Web/Form.php
	library/Icinga/Web/Menu.php
2014-11-18 17:08:25 +01:00
Johannes Meyer f007663235 Show the user a senseful error message in case enabledModules is missing
fixes #7205
2014-11-18 16:22:41 +01:00
Johannes Meyer 7621f6642d Adjust usages of Icinga\Application\Config
refs #7147
2014-11-18 13:11:52 +01:00
Johannes Meyer 0c84bf614d Split config functionality into two classes
There is now Icinga\Application\Config as our ini configuration handler and
Icinga\Data\ConfigObject as our general configuration container.

refs #7147
2014-11-18 13:02:56 +01:00
Johannes Meyer 812f9af949 Change modulePath setting to module_path
fixes #7694
2014-11-17 10:10:08 +01:00
Eric Lippmann 6ba4e55277 Throw exception on E_NOTICE
Use of uninitialized values must be detected asap.
2014-11-15 01:20:27 +01:00
Eric Lippmann 52c19b5843 EmbeddedWeb must not load core modules, i.e. setup 2014-11-15 01:04:56 +01:00
Eric Lippmann 2c0122ba9f Fix ApplicationBootstrap::getBootstrapDirectory() when Icinga Web 2 is served using PHP's built-in web server 2014-11-15 01:04:14 +01:00
Eric Lippmann 11bb8dbab0 icingacli web serve: Fix "PHP Notice: Use of undefined constant ICINGA_LIBDIR" 2014-11-14 16:02:17 +01:00
Eric Lippmann 029630308d Load Zend on Web and EmbeddedWeb
refs #7464
2014-11-14 14:07:13 +01:00
Eric Lippmann 37dd2f5dd2 Do not load Zend on the CLI and remove our library from the include path
Adding Icinga Web 2's library to the include is not necessary for getting the Zend_Plugin_Loader working.
2014-11-14 14:04:24 +01:00
Johannes Meyer 586b4f463b Let our module autloader know that we renamed our form namespaces
refs #7553
2014-11-14 11:30:44 +01:00
Johannes Meyer 775c20d9ad Rename namespace Icinga\Form to Icinga\Forms
refs #7553
2014-11-14 10:57:14 +01:00
Eric Lippmann 48a468b888 Add our vendor path to the include path 2014-11-13 19:52:28 +01:00
Eric Lippmann 81b144d057 Fix locale setup
The CLI must not try to use HTTP_ACCEPT_LANGUAGE. Avoided double try-catch blocks.

refs #6073
2014-11-13 18:02:03 +01:00
Eric Lippmann e3c70bec6d Fix timezone setup
The CLI must not try to use our web timezone detection thingy.

refs #6073
2014-11-13 17:07:36 +01:00
Eric Lippmann ac2ec83852 Merge branch 'master' into feature/localization-form-6073
Conflicts:
	library/Icinga/Application/ApplicationBootstrap.php
	test/php/library/Icinga/User/Store/DbStoreTest.php
2014-11-13 17:03:41 +01:00
Eric Lippmann f427577067 Add getVendorDir() in favor of constant ICINGAWEB_VENDORS 2014-11-13 09:38:04 +01:00
Eric Lippmann bfa834fc3b Remove constant ICINGAWEB_APPDIR
We should avoid use of constants.
2014-11-13 09:33:31 +01:00
Eric Lippmann 9c103a9864 Remove constant ICINGAWEB_BASEDIR
We should avoid use of constants.
2014-11-13 09:24:51 +01:00
Eric Lippmann 75475b1684 Rename getBootstrapDirecory() to getBootstrapDirectory() 2014-11-12 17:14:43 +01:00
Eric Lippmann c394cd0bff Use realpath in ApplicationBootstrap::getBootstrapDirecory()
If the CLI is called from source, the base directory is now set to the correct path.
Packagers will have to provide the path to the base directory though.
2014-11-12 17:11:48 +01:00
Johannes Meyer db7954c350 Merge branch 'master' into feature/setup-wizard-7163 2014-11-12 17:05:13 +01:00
Eric Lippmann ec6b56a060 Allow to define Icinga Web 2's base directory while bootstrapping 2014-11-12 15:52:43 +01:00
Eric Lippmann b27d1d0058 Merge branch 'master' into feature/setup-wizard-7163 2014-11-12 14:48:15 +01:00
Eric Lippmann a081db08a4 icingacli: Fix "Notice: Constant ICINGAWEB_BASEDIR already defined" 2014-11-12 14:43:58 +01:00
Eric Lippmann 6089372c42 Do not define ICINGAWEB_BASEDIR in index.php
There's SCRIPT_FILENAME. The constants will be removed shortly.
2014-11-12 14:39:45 +01:00
Eric Lippmann 277765ac72 No longer make ICINGAWEB_APPDIR configureable 2014-11-12 13:18:05 +01:00
Eric Lippmann 11e13582e2 Define the ICINGAWEB_VENDORS contant 2014-11-12 13:17:18 +01:00
Eric Lippmann 8c9465ffbd Fix ICINGAWEB_APPDIR location if the Icinga library is in PHP's include path 2014-11-12 13:06:43 +01:00
Eric Lippmann 877e9101f3 Do not define the constant ICINGAWEB_LIBDIR
This constant should not be needed anywhere.
2014-11-12 12:55:16 +01:00
Alexander Fuhr 533d2207fd Fix `setupTimezone' and `setupInternationalization' for user preferences 2014-11-12 12:16:05 +01:00
Alexander Fuhr 8d120762de Add timezone detection to `setupTimezone' in ApplicationBootstrap 2014-11-12 12:13:46 +01:00
Johannes Meyer 7aae291f69 Merge branch 'master' into feature/setup-wizard-7163 2014-11-12 10:08:28 +01:00
Johannes Meyer c3e28a42fb Remove configuration option for setting the access mode on new files 2014-11-12 09:40:07 +01:00
Thomas Gelf f39301d47f Cli: use STDOUT as the default logger
fixes #7636
2014-11-11 19:43:22 +01:00
Thomas Gelf f347a74982 Logger\StdoutWriter: initial implementation
This log writer writes to STDOUT and uses ANSI colors on real terminals

fixes #7636
2014-11-11 19:40:59 +01:00
Thomas Gelf 629118b590 LogWriter: setting config must not be abstract
Storing the given config makes sense as default action, no need to
abstract the constructor per default.

refs #7636
2014-11-11 19:39:15 +01:00
Johannes Meyer a6af51f402 Fix that Config::fromSection cannot return the actual value
refs #7147
2014-11-11 15:51:54 +01:00
Johannes Meyer f12473d34b Load core modules also when bootstrapping the CLI
refs #7163
2014-11-11 10:00:28 +01:00
Johannes Meyer 9d292269b1 Merge branch 'master' into feature/setup-wizard-7163
Conflicts:
	application/forms/Config/Resource/LdapResourceForm.php
	test/php/application/forms/Config/Authentication/LdapBackendFormTest.php
2014-11-11 09:44:11 +01:00
Johannes Meyer 8af13f564b Add support for "core" modules and make the setup module such a module
refs #7163
2014-11-10 17:34:49 +01:00
Johannes Meyer 21ed823da7 Adjust namespace declarations
refs #7163
2014-11-10 16:31:40 +01:00
Johannes Meyer 8f212018ec Move the setup wizard code to a dedicated module
refs #7163
2014-11-10 15:11:44 +01:00
Johannes Meyer 79493592bb Do not use Installer anywhere.
"It's setup."

refs #7163
2014-11-10 10:30:52 +01:00
Johannes Meyer f85ddeb215 Do not hardcode the php username dummy in Icinga\Application\Platform
refs #7163
2014-11-07 14:40:28 +01:00
Johannes Meyer eadc7d8415 Remove the POSIX requirement
refs #7163
2014-11-07 14:39:34 +01:00
Johannes Meyer 9a5d01b3fd Check the mysql or pgsql extension instead of just pdo, really 2014-11-07 14:31:20 +01:00
Johannes Meyer 7b99b74ae1 Prefer Icinga\Application\Config instead of Zend_Config
refs #7147
2014-11-07 13:53:03 +01:00
Johannes Meyer 268569114c Fix that an error is thrown when reading INI files without trailing newlines 2014-11-07 13:38:35 +01:00
Johannes Meyer 4537b2932e Fix that current(), key(), etc does not work with Config objects 2014-11-07 13:37:09 +01:00
Johannes Meyer 83f386f92a Do not extend Zend_Config in Icinga\Application\Config
refs #7147
fixes #7580
2014-11-06 15:41:31 +01:00
Alexander Fuhr 2e24c53224 Merge branch 'master' into feature/localization-form-6073
Conflicts:
	application/forms/Config/GeneralForm.php
	application/forms/Preference/GeneralForm.php
	library/Icinga/Application/Web.php
2014-11-05 13:27:45 +01:00
Johannes Meyer 5a169ee656 Fix "PreservingIniWriter not found"
The class was renamed a few commits ago to "IniWriter"
2014-11-04 14:35:57 +01:00
Johannes Meyer 170ded6510 Merge branch 'master' into feature/setup-wizard-7163
Conflicts:
	library/Icinga/Authentication/Backend/LdapUserBackend.php
	library/Icinga/File/Ini/IniWriter.php
2014-11-04 14:22:53 +01:00
Johannes Meyer 581935c26f Fix database setup and add support for the new schema
refs #7163
2014-11-04 13:51:15 +01:00
Eric Lippmann 45d3005f3c Throw exceptions on PHP warnings
Sometimes we miss PHP warnings because our layout overlays them.
2014-11-04 13:20:41 +01:00
Eric Lippmann e5091ec835 Fix Modules\Manager::getLoadedModules() PHPDoc 2014-10-31 11:22:27 +01:00
Eric Lippmann 0124a33037 Add method Config::isEmpty() 2014-10-31 11:20:17 +01:00
Eric Lippmann 16352fc10c Move Logger to the Application namespace
fixes #7148
2014-10-31 10:27:17 +01:00
Johannes Meyer 9365e3ca94 Remove the setup token from disk upon completion of the wizard
refs #7163
2014-10-30 10:36:02 +01:00
Johannes Meyer 504853961b Add temporary requirement for the DOM php module
Should be removed once dompdf isn't shipped with Icinga Web 2 anymore

refs #7163
refs #6172
2014-10-29 16:25:25 +01:00
Johannes Meyer c8e323e8a7 Improve requirment checks
refs #7163
2014-10-29 16:24:31 +01:00
Johannes Meyer 4d8842db09 Return a dummy PHP username in case the POSIX module is not available 2014-10-29 16:22:41 +01:00
Johannes Meyer 81e06fe570 Do not show a requirement for Zend_Db_Adaper_*
refs #7163
refs #7464
2014-10-29 15:49:14 +01:00
Johannes Meyer 47d9426a1f Use a hardcoded path where to look for modules
refs #7163
2014-10-29 15:43:08 +01:00
Johannes Meyer ec6948dddf Fix that the ModulePage does not provide a wizard's requirement info
refs #7163
2014-10-29 11:38:21 +01:00
Johannes Meyer 32006420c5 Fix WelcomePage
There were some grammar- and layout-errors
as well as information missing :(
2014-10-29 11:36:03 +01:00
Johannes Meyer dbf5512252 Drop Icinga\Application\Installation and introduce Icinga\Installation
refs #7163
2014-10-29 08:38:59 +01:00
Johannes Meyer a899070606 Move MakeDirStep to Icinga\Web\Setup
refs #7163
2014-10-29 08:38:59 +01:00
Johannes Meyer dd6b045183 Fix that the ModulePage cant find modules when being asked for
refs #7163
2014-10-29 08:38:59 +01:00
Johannes Meyer 98acc24869 Create configuration sub directories as part of the setup wizard
refs #7163
2014-10-29 08:38:59 +01:00
Johannes Meyer 1fd4a301c4 Pass the wizard title to the summary page to be able to reuse the page
Module wizards can now use the SummaryPage as well if they want to.

refs #7163
2014-10-29 08:38:58 +01:00
Johannes Meyer 3206ded18c Pass the entire page data to the ModulePage
As module wizards might require some configuration values aggregated by
the main application wizard we pass the entire page data to each wizard as
if the data were aggregated by a module wizard itself.

refs #7163
2014-10-29 08:38:58 +01:00
Matthias Jentsch 2e8c0cffe6 Check privileges of database user accounts before continuing with the setup
Implement owner and privilege checks for postgresql, and fix some errors in
existing MySQL privilege checks.

resolves #7389
2014-10-27 15:08:52 +01:00
Johannes Meyer 2f83976f50 Add ModulePage
refs #7163
2014-10-24 17:10:17 +02:00
Johannes Meyer 1bd5868a88 Fix access of an array key which does not exist in some circumstances
refs #7163
2014-10-24 13:57:30 +02:00
Johannes Meyer a8dd9c933d Add the possibility for modules to provide a setup wizard
refs #7163
2014-10-24 13:52:26 +02:00
Johannes Meyer 64e6886c9c Make it possible to pass the module paths directly to the module manager 2014-10-24 13:51:23 +02:00
Johannes Meyer d90d6fe6a9 Improve summary page layout a bit
refs #7163
2014-10-23 15:16:25 +02:00
Johannes Meyer a6cbde54c5 Move summary HTML generation from the view script to each install step
refs #7163
2014-10-23 15:15:59 +02:00
Johannes Meyer 216c072024 Implement installation routines modularly
This allows us to "merge" module installation
routines with our main installer routines.

refs #7163
2014-10-23 11:41:16 +02:00
Johannes Meyer f5c4708ae2 Add a default file mode for new configuration files
The file mode which can be configured in the general configuration is now
used when creating new configuration files with the PreservingIniWriter.
2014-10-21 17:02:21 +02:00
Johannes Meyer e72f2cac24 Fix that page information gets deleted when navigating back
refs #7163
2014-10-17 15:42:06 +02:00
Johannes Meyer 24b6274f01 Fix logging configuration installation
refs #7163
refs #6933
2014-10-17 13:05:56 +02:00
Johannes Meyer 9f127be1dc Merge branch 'master' into feature/setup-wizard-7163
Conflicts:
	application/forms/Config/General/LoggingConfigForm.php
2014-10-17 13:04:59 +02:00
Johannes Meyer a54c81b2a7 Adjust button labels only in WebSetup::addButtons(), not in view scripts
refs #7163
2014-10-17 11:20:20 +02:00
Eric Lippmann 6c59c22044 Bootstrap: Remove logging configuration directives which do not override defaults 2014-10-16 15:59:56 +02:00
Eric Lippmann 6dfefb0e73 CLI: Fix logging setup 2014-10-16 15:59:35 +02:00
Eric Lippmann 985154d3d8 Throw an ErrorException on E_STRICT errors 2014-10-16 15:51:18 +02:00
Johannes Meyer d73423ceee Style summary page
Dropped also the layout logic as it was too generic.

refs #7163
2014-10-16 14:52:26 +02:00
Johannes Meyer 45e179d939 Fix that `type' is missing for installed ldap authentication backends
refs #7163
2014-10-15 10:44:08 +02:00
Johannes Meyer 13678bb33e Add useful @todo hint
refs #7163
2014-10-13 09:35:00 +02:00
Johannes Meyer 52016d81b9 Consider `root_dn' and `base_dn' when installing config files
refs #7163
2014-10-13 09:34:22 +02:00
Johannes Meyer ca6eca6b67 Quote database names, usernames and passwords when setting up the db
refs #7163
2014-10-09 16:02:18 +02:00
Johannes Meyer 78b130a4f3 Fix that the LDAP discovery page is shown for non-LDAP authentication
refs #7163
2014-10-09 15:05:21 +02:00