Thomas Gelf
98099ad48a
DbObjectWithSettings: allow to pass objects
2018-06-11 16:48:20 +02:00
Thomas Gelf
cdcf99592b
ServiceCommand: allow to delete single services
...
fixes #719
2018-06-08 22:02:27 +02:00
Thomas Gelf
28320fe6bb
FormDataFilter: use auto-suggestion for groups...
...
...drop ugly method in IcingaObjectGroup and clean up some files
2018-06-08 20:45:02 +02:00
Thomas Gelf
e3c086c78c
FormDataFilter: cleanup
2018-06-08 18:52:12 +02:00
Thomas Gelf
310ae7e623
IcingaService: cleanup, IcingaObject: introduce...
...
...getDefaultZone
2018-06-08 18:36:15 +02:00
Thomas Gelf
00db8a6204
IcingaObject: reduce duplicate code
2018-06-08 18:11:42 +02:00
Thomas Gelf
a80bc13f39
Form: elements is a ElementContainer property
2018-06-08 16:54:13 +02:00
Thomas Gelf
ea8452d0e9
ConfigHealthItemRenderer: be fail-safe
...
Icinga Web 2 should catch errors, but seems that it doesn't
2018-06-08 16:54:04 +02:00
Thomas Gelf
d2cfa20385
DirectorDb: push missing changes
2018-06-08 00:07:14 +02:00
Thomas Gelf
aaaa8aed0a
DbSelectorForm: allow to switch Director database
...
fixes #1498
2018-06-07 23:50:31 +02:00
Thomas Gelf
885f76715a
ActionController: cleanup
2018-06-07 23:37:28 +02:00
Thomas Gelf
35c2c034fd
ipl: add ipl\Html\Form prototype
2018-06-07 23:32:39 +02:00
Thomas Gelf
450f40b402
IcingaConfig: remove superflous parameter
...
fixes #1514
2018-06-07 14:33:00 +02:00
Thomas Gelf
7efeab674c
(Host)ServiceTable: always show blacklist details
...
It can affect also single services
2018-06-05 11:06:43 +02:00
Thomas Gelf
b475aa841e
IcingaConfigHelper: granular macro-rendering
...
fixes #685
fixes #1272
fixes #1482
2018-06-04 18:18:32 +02:00
Thomas Gelf
c5d05454ca
RepositoryByObjectHelper: prepare for auth, clean
2018-06-04 08:48:30 +02:00
Thomas Gelf
c6de458235
GroupMembershipResolver: respect own groups and...
...
...inherited ones
fixes #1464
fixes #1449
2018-06-04 08:48:21 +02:00
Thomas Gelf
927591501c
Export: first bunch of exportable Director objects
...
ImportSource, SyncRule, Datafield and more
refs #1409
2018-06-01 18:44:07 +02:00
Thomas Gelf
5d4408862a
Settings, CoreApi: allow to configure package name
...
fixes #1497
2018-06-01 16:27:00 +02:00
Thomas Gelf
c401f5356c
HostServiceTables: drop useless group()
...
fixes #1509
2018-06-01 14:55:14 +02:00
Thomas Gelf
a005ac3228
IcingaCommand: pathes prefixed with Windows ENV
...
...variables are considered to be absolute
fixes #1469
2018-06-01 11:38:28 +02:00
Thomas Gelf
808a9df13e
StartupLogRenderer: parse lines with timestamps
...
This is required to support Icinga v2.9.0
fixes #1478
2018-06-01 11:34:57 +02:00
Thomas Gelf
31a6ab0cf2
IcingaHostServiceTable, others: cleanup, fix...
...
...blacklist-styling
2018-05-30 00:45:08 +02:00
Thomas Gelf
c2519b65b5
GroupMembershipResolver: cosmetics
2018-05-29 23:45:47 +02:00
Thomas Gelf
f3056c6f2c
DirectorObjectForm: templates have no choices
...
fixes #1363
2018-05-29 23:15:17 +02:00
Thomas Gelf
cf5b7c7001
CoreApi: old patch, unused code
2018-05-29 22:22:13 +02:00
Thomas Gelf
8c432285e7
Various: stick with default exceptions...
...
...IDE hints are annoying
2018-05-29 21:31:43 +02:00
Markus Frosch
8b7b9024c4
IcingaConfig: Remove library import from generated config
...
`library "methods"` was when Director set the actual execution method
for commands.
2018-05-29 17:41:09 +02:00
Thomas Gelf
15729cb28a
PropertyModifierJsonDecode: use existing helper
2018-05-29 17:35:34 +02:00
Markus Frosch
f19a41d11a
php-diff: Fix undefined offset in Array Renderer
...
See https://github.com/chrisboulton/php-diff/pull/51
2018-05-29 17:22:52 +02:00
Thomas Gelf
02dfac1b8b
Revert "Export: first bunch of exportable Director objects"
...
Wrong branch, not yet for the master
This reverts commit 721700c62f
.
2018-05-29 12:40:14 +02:00
Thomas Gelf
721700c62f
Export: first bunch of exportable Director objects
...
ImportSource, SyncRule, Datafield and more
refs #1409
2018-05-29 12:34:18 +02:00
Thomas Gelf
2045f98016
IcingaServiceForm: allow to define apply rules...
...
...based on templates.
fixes #1359
2018-05-28 15:50:18 +02:00
Thomas Gelf
193c575e3a
HostServiceBlacklist: small fixes
...
refs #907
2018-05-25 19:57:52 +02:00
Thomas Gelf
f88e318dce
Merge branch 'feature/sync-cleanup'
2018-05-25 19:51:26 +02:00
Thomas Gelf
c3fd50003a
IcingaService: cosmetics, render single hosts...
...
...with equals, multiple ones as "in array"
refs #907
2018-05-25 19:48:27 +02:00
Thomas Gelf
35f1f09b84
Tables: fix host/service blacklist queries
2018-05-25 19:11:50 +02:00
Thomas Gelf
8073128d0e
IcingaServiceForm: add blacklist/delete button...
...
...and a lot of related boilerplate to get the "blacklist" feature working
2018-05-25 19:11:50 +02:00
Thomas Gelf
ba5e595fd0
IcingaService: phpdoc
2018-05-25 19:11:50 +02:00
Thomas Gelf
853cecb14e
HostServiceBlacklist: first implementation, schema
...
...and related changes
refx #907
2018-05-25 19:11:50 +02:00
Thomas Gelf
facaeb8aac
Sync: cleanup, improve array handling, split logic
...
This should for example fix sync for multiple group memberships
2018-05-25 19:11:50 +02:00
Thomas Gelf
5a8c785b7c
dipl: align with ipl-html, stop using deprecated
...
...method Html::escapeForHtml
2018-05-25 19:09:42 +02:00
Thomas Gelf
ec0beb5de8
HostServiceRedirector: fix switched urls
2018-05-25 18:20:56 +02:00
Thomas Gelf
29bcfff07f
Sync: fix properties for IcingaObject instances
2018-05-25 13:29:32 +02:00
Thomas Gelf
bd80862153
Sync: cleanup, improve array handling, split logic
...
This should for example fix sync for multiple group memberships
2018-05-25 13:29:32 +02:00
Thomas Gelf
9c9a5b5b93
GroupMembershipResolver: last inserted ID is int...
...
...for PostgreSQL - as it should be everywhere :-/
fixes #1500
2018-05-25 13:14:03 +02:00
Thomas Gelf
728bbe523e
ConfigJob: do not re-deploy the same checksum
...
fixes #978
2018-05-23 11:31:23 +02:00
Thomas Gelf
3673daaa3c
Html: allow to wrap elements, needed for forms
2018-05-23 08:30:37 +02:00
Thomas Gelf
799a332c22
Html\Attributes: callbacks for setters and getters
2018-05-23 08:22:06 +02:00
Thomas Gelf
14cd540ce9
HostServiceRedirector: add applied service sets
2018-05-23 08:18:57 +02:00
Thomas Gelf
0f4fd471e2
HostServiceRedirector: new implementation for...
...
...service links. Fallback route and more
fixes #689
2018-05-23 00:47:30 +02:00
Thomas Gelf
d5807495a0
TemplateTree: load inheritance for unstored...
...
...objects even if the given parent is not a template. This happens with fake
objects while managing overrides
2018-05-22 14:40:56 +02:00
Thomas Gelf
d8b1207254
Sync: it's not yet possible to let single...
...
...objects fail
refs #1048
2018-05-22 12:17:22 +02:00
Markus Frosch
49afcd5855
Sync: Only prefetch relations for IcingaObject
...
So DatalistEntry can be synced
fixes #1048
2018-05-22 11:08:03 +02:00
Thomas Gelf
b773b90ae5
JobDetails: fix message "characters are not yet.."
2018-05-17 08:36:39 +02:00
Thomas Gelf
05bc9e5bfc
CustomvarTable, SyncRunDetails: small fixes
2018-05-09 13:18:10 +02:00
Thomas Gelf
df83c9abad
ipl: no more Html::__callStatic, add phpdocs
2018-05-08 19:54:00 +02:00
Thomas Gelf
b1fd0bd9ed
ObjectTabs: show 'inspect' only for endpoints...
...
...with an ApiUser reference
fixes #1293
2018-05-08 16:25:38 +02:00
Thomas Gelf
319b000407
ipl: phpdoc, cleanup
2018-05-06 09:08:37 +02:00
Thomas Gelf
01c3a553ba
ipl: drop obsoleted components
2018-05-05 18:49:58 +02:00
Thomas Gelf
df7c77a0f6
ipl-related fixes
2018-05-05 18:29:17 +02:00
Thomas Gelf
988319dcf6
ipl-related: use HtmlDocument instead of Html
2018-05-05 01:25:24 +02:00
Thomas Gelf
955695682d
Use BaseHtmlElement and more
2018-05-05 01:11:55 +02:00
Thomas Gelf
f1480359da
ipl: even more changes
2018-05-05 01:04:25 +02:00
Thomas Gelf
4f8c60bb46
various: cleanup, sop using deprecated methods
2018-05-05 00:24:49 +02:00
Thomas Gelf
403df971a1
dipl: align with ipl, first step
2018-05-05 00:18:45 +02:00
Thomas Gelf
be0d41459f
ipl: code cleanup
2018-05-04 22:55:24 +02:00
Thomas Gelf
30c6bf1b95
ipl: relax attribute name checks
2018-05-04 22:54:48 +02:00
Thomas Gelf
a033e411c6
Sync: preserve _override_servicevars
...
fixes #1307
2018-05-04 22:14:07 +02:00
Thomas Gelf
99ddb9266b
Commands: show usage over templates and objects
...
fixes #335
2018-05-04 18:02:05 +02:00
Thomas Gelf
6add437dce
IcingaCommand: do not allow to delete while in use
...
fixes #1443
2018-05-04 13:12:23 +02:00
Thomas Gelf
8e4b88195b
ObjectsTableCommand: formatting
2018-05-04 12:47:51 +02:00
offsides
38a56f68fe
Assign: add "is not set" operator
...
fixes #1436
2018-05-04 12:42:39 +02:00
Thomas Gelf
cd2de241dd
Commands: allow to filter by usage
...
fixes #1480
2018-05-04 11:03:42 +02:00
Thomas Gelf
4c77a32ee0
IcingaConfig: remove hard-coded global zone
...
Anyways, this line should be obsolete
2018-05-04 08:45:32 +02:00
Markus Frosch
c2fcd407cc
ObjectApplyMatches: Prepare filters only once
...
So that it can be re-used on multiple objects during sync.
2018-04-27 16:05:39 +02:00
Markus Frosch
0b7bb123cd
GroupMembershipResolver: Parse filters before iterating through objects
...
Massive performance improvement! Up to 10x!
2018-04-27 16:05:39 +02:00
Markus Frosch
f6cf1a4245
GroupMembershipResolver: Improve Benchmark output
2018-04-27 16:05:39 +02:00
Markus Frosch
3b812fab7d
Sync: Make sure to prefetch relations for objects
...
This can avoid a lot of queries for zones, commands, timeperiods.
2018-04-27 16:05:39 +02:00
Markus Frosch
c4a95fd64e
Sync: Implement Benchmark for the Sync process
...
Note: This disables redirect-on-success for the forms, so you can see
the benchmark result.
2018-04-27 16:05:39 +02:00
Thomas Gelf
fb3dc92b36
ImportRunBasedPurgeStrategy: performance boost...
...
...for some older MariaDB/MySQL versions
2018-04-27 15:58:13 +02:00
Heinz Wiesinger
525b3164c0
vendor: Update php-diff with fixes
...
Version is based on:
* 3cb3f7ce6b
* and https://github.com/chrisboulton/php-diff/pull/50
Also see SOURCE
2018-04-16 08:59:59 +02:00
David McBride
8e28f7f9c8
Avoid failing when attempting to render NULL column-set
...
PHP 7.2 is stricter about invoking count() with parameters which
are not countable:
https://secure.php.net/manual/en/migration72.incompatible.php
This case is triggered in QueryBasedTable, for example when reviewing
the Activity Log:
count(): Parameter must be an array or an object that implements Countable (QueryBasedTable.php:115)
#0 [internal function]: Icinga\Application\ApplicationBootstrap->Icinga\Application\{closure}(2, 'count(): Parame...', '/usr/share/icin...', 115, Array)
#1 /usr/share/icingaweb2/modules/director/library/vendor/ipl/Web/Table/QueryBasedTable.php(115): count(NULL)
#2 /usr/share/icingaweb2/modules/director/library/vendor/ipl/Html/BaseElement.php(133): dipl\Web\Table\QueryBasedTable->renderContent()
#3 /usr/share/icingaweb2/modules/director/library/vendor/ipl/Html/Html.php(171): dipl\Html\BaseElement->render()
#4 /usr/share/icingaweb2/modules/director/library/vendor/ipl/Html/BaseElement.php(105): dipl\Html\Html->render()
#5 /usr/share/icingaweb2/modules/director/library/vendor/ipl/Html/BaseElement.php(133): dipl\Html\BaseElement->renderContent()
#6 /usr/share/icingaweb2/modules/director/library/vendor/ipl/Html/Html.php(259): dipl\Html\BaseElement->render()
#7 /usr/share/icingaweb2/modules/director/library/vendor/ipl/Zf1/SimpleViewRenderer.php(47): dipl\Html\Html->__toString()
#8 /usr/share/icingaweb2/modules/director/library/vendor/ipl/Zf1/SimpleViewRenderer.php(66): dipl\Zf1\SimpleViewRenderer->render()
#9 /usr/share/icingaweb2/library/vendor/Zend/Controller/Action/HelperBroker.php(272): dipl\Zf1\SimpleViewRenderer->postDispatch()
#10 /usr/share/icingaweb2/library/vendor/Zend/Controller/Action.php(518): Zend_Controller_Action_HelperBroker->notifyPostDispatch()
#11 /usr/share/php/Icinga/Web/Controller/Dispatcher.php(76): Zend_Controller_Action->dispatch('activitiesActio...')
#12 /usr/share/icingaweb2/library/vendor/Zend/Controller/Front.php(937): Icinga\Web\Controller\Dispatcher->dispatch(Object(Icinga\Web\Request), Object(Icinga\Web\Response))
#13 /usr/share/php/Icinga/Application/Web.php(389): Zend_Controller_Front->dispatch(Object(Icinga\Web\Request), Object(Icinga\Web\Response))
#14 /usr/share/php/Icinga/Application/webrouter.php(109): Icinga\Application\Web->dispatch()
#15 /usr/share/icingaweb2/public/index.php(4): require_once('/usr/share/php/...')
#16 {main}
Perhaps over-simplistically, this failure can be avoided by first
checking the countability of the relevant value with isset().
2018-04-05 16:55:16 +02:00
Thomas Gelf
473bbd40c4
IcingaHostForm: fix premission checks on new Hosts
...
refs #1451
2018-03-29 16:46:41 +02:00
Thomas Gelf
5dab1d3bb8
IcingaHostForm: logic belongs here
...
refs #1451
2018-03-28 18:38:36 +02:00
Thomas Gelf
8c7897ee46
DirectorObjectForm: do not allow to store...
...
...IcingaHost objects you wouldn't be allowed to see afterwards
fixes #1451
2018-03-28 18:32:52 +02:00
Thomas Gelf
3e46602802
Json: wrap json_encode to emit errors
...
refs #1445
2018-03-28 18:16:30 +02:00
Thomas Gelf
2f68489cac
DirectorDb: do not fail when unconfigured and...
...
...not use by Controllers
2018-03-28 17:55:57 +02:00
Thomas Gelf
56c5ac0846
DirectorDb: ConfigurationError has been missing
2018-03-28 17:52:21 +02:00
Thomas Gelf
c5375c968b
IcingaObjectGroups: add missing Exception use
2018-03-28 17:50:41 +02:00
Thomas Gelf
92535ab702
DbConnection: add isMysql() helper method
2018-03-28 17:49:59 +02:00
Thomas Gelf
fcbc2db71b
IcingaObject: resolve groups for flattened objects
...
refs #1449
2018-03-28 17:47:48 +02:00
Da Rold Valentina
08e38f2c75
Hook for custom field in Director form
2018-03-28 15:46:21 +02:00
Heinz Wiesinger
6889c63a69
Fix settings name in PropertyModifierMakeBoolean.
2018-03-16 14:14:21 -04:00
Markus Frosch
1e7f0f962b
IcingaObjectInspection: Properly read and handle config_checksum
...
This adapts behavior from DeploymentLogTable
fixes #1420
2018-03-11 14:20:09 +01:00
Markus Frosch
034319dbe7
ImportedrowsTable: Render complex data types in pre tag
...
Just like ImportsourceHookTable.
refs #1325
2018-03-11 14:10:50 +01:00
Thomas Gelf
78bb9c706a
FlappingSupport: dedicated object extension
2018-02-28 09:24:39 +01:00
Thomas Gelf
e02b283157
IcingaObject: remove unused code
2018-02-28 08:56:25 +01:00
Thomas Gelf
1bff61eeb5
SyncRule: just a type hint
2018-02-25 18:19:38 +01:00
Thomas Gelf
7525a7b0f6
ObjectsTable: allow to filter any type by name
...
Not used yet, will make it easy to create restrictions like
director/host/filter-by-name = "*.dev.example.com"
2018-02-25 18:15:12 +01:00