Commit Graph

921 Commits

Author SHA1 Message Date
Thomas Gelf 9e74dfcc16 ImportSource, SyncRule: cleanup 2018-10-15 15:03:57 +02:00
Thomas Gelf cd0b275250 DirectorJob: name is key, provide import/export 2018-10-15 15:03:57 +02:00
Thomas Gelf f32e568b8a SyncRule: make ready for basket
refs #1630
2018-10-15 15:03:57 +02:00
Thomas Gelf 063a46ea56 ImportSource: switch key to name, improve import
...of ImportSource definitions

refs #1630
2018-10-15 15:03:57 +02:00
Thomas Gelf 15a8886db7 IcingaCommandArgument: no need for format...
...when there is no value
2018-10-15 15:03:47 +02:00
Thomas Gelf c119c47864 ObjectApplyMatches: resolve imports/templates
fixes #1676
2018-10-15 15:03:41 +02:00
Thomas Gelf b3afe670c8 ImportRowModifier: no more ConfigurationError 2018-10-08 06:36:27 +02:00
Thomas Gelf b9ff77b4bb DeploymentLog: deal with Icinga 2 race condition...
...clean up our DB and Icinga 2 stages via API

fixes #1488
2018-10-05 14:55:48 +02:00
Thomas Gelf 8d61fa6347 ImportRowModifier: sort settings 2018-10-04 06:53:55 +02:00
Thomas Gelf 4e42231291 DirectorJob: no magic getter/setter, cleanup 2018-10-04 06:52:35 +02:00
Thomas Gelf a9b2910657 IcingaObject: fix use of unused exception 2018-10-01 12:01:20 +02:00
Camille TRUCHOT 0931c1df91 fix gettype for multiple host selection 2018-10-01 11:58:16 +02:00
Markus Frosch 67222ef437 legacy: Support service blacklisting 2018-09-20 12:54:15 +02:00
Markus Frosch e46a610b5f GroupMembershipResolver: Add interfaces to be able to check before updating 2018-09-18 10:36:45 +02:00
Thomas Gelf 16bf0ce5c3 GroupMembershipResolver: ignore templates...
...but continue checking their children

refs #1618
2018-09-17 16:26:22 +02:00
Markus Frosch 8526a55e47 GroupMembershipResolver: Purge IcingaTemplateRepository before refresh
This is only required with a deferred GroupMembershipResolver.
2018-09-17 14:37:18 +02:00
Markus Frosch b49d050cec HostGroupMembershipResolver: Address issues with static group assignments
* Fixing static resolving in general
* Avoiding a problem where apply were matched when assign_filter is an
  empty string (empty FilterAnd)

fixes #1574
2018-09-17 14:37:18 +02:00
Markus Frosch ce9a8e1b09 IcingaObject: Allow imports to be accessed during onStore() 2018-09-17 14:37:18 +02:00
Markus Frosch c86c168e43 IcingaTimeperiod: Add isActive support for include/exclude 2018-09-13 15:14:41 +02:00
Markus Frosch e8c64a422b legacy/IcingaTimeperiod: Support rendering of excludes 2018-09-13 15:14:41 +02:00
Markus Frosch 0d879c60d3 IcingaTimeperiod: Support includes and excludes 2018-09-13 15:14:41 +02:00
Markus Frosch 63eda31a64 IcingaObjectMultiRelations: Enable more config options 2018-09-13 15:14:41 +02:00
Markus Frosch a2f7ff03c1 IcingaObject: Fix listed applied Groups to show mixed apply/static
In case a group has been statically assigned to other object it would
have been hidden.

This should only affect UI and legacy rendering.
2018-09-11 15:22:30 +02:00
Markus Frosch ff77aa9879 IcingaServiceSet: Render sub-sets in config preview 2018-09-06 14:07:33 +02:00
Markus Frosch d6b9f3137a legacy/IcingaObject: Render groups only when it is a stored object
This broke activity log.
2018-09-05 12:35:40 +02:00
Markus Frosch ff0553c9dd legacy/IcingaObject: Render interval properties properly 2018-09-05 12:35:40 +02:00
Markus Frosch d4d309a704 legacy/IcingaService/ServiceSet: Improve apply rendering
This now renders one object per zone with a list of hosts.
2018-09-05 12:35:40 +02:00
Markus Frosch f1dbeca77c legacy/IcingaHost: Render assigned hostgroups into host object 2018-09-05 12:35:40 +02:00
Markus Frosch 26e58834f6 IcingaHostForm: Move getAppliedGroups to IcingaObject 2018-09-05 12:35:40 +02:00
Markus Frosch cceb588d24 FlappingSupport: Add legacy support 2018-09-05 12:35:40 +02:00
Markus Frosch 3521b30953 legacy/IcingaHost: Don't render volatile 2018-09-05 12:35:40 +02:00
Markus Frosch 76d0ed22e7 legacy/ObjectApplyMatches: Fix fetchFlatObjectsByType using object
Instead of flat variables.
2018-09-05 11:41:49 +02:00
Thomas Gelf 3c02f7499f ImportRun: fix problem with some binary checksums
fixes #1556
2018-08-14 09:10:15 +02:00
Thomas Gelf 3ffacc70b6 IcingaServiceSet: do not delete on title click
fixes #1560
2018-08-13 11:21:54 +02:00
Thomas Gelf 49d9ed7ecd IcingaServiceForm: fix blacklist service from set
fixes #1519
2018-08-13 09:52:07 +02:00
Thomas Gelf 01b85f5758 IcingaServiceSet: render comment next to Set 2018-08-13 07:52:59 +02:00
Markus Frosch 679539d5dd IcingaObject: Fix call to RuntimeException 2018-08-10 13:47:15 +02:00
Alexy Mikhailichenko cde61e122b Typo in IcingaObjectGroups.php
"doesn't exists" -> "doesn't exist"
2018-08-10 08:39:35 +02:00
Thomas Gelf 014f9b9dbe UserGroups: allow to specify zones
fixes #1163
2018-07-13 10:35:28 +02:00
Thomas Gelf 1733d6d520 Db: fix timezone issues
fixes #1332
fixes #1270
2018-07-13 09:43:27 +02:00
Thomas Gelf 35815e0dad library: lot's of cleanup 2018-06-19 13:47:19 +02:00
Thomas Gelf 6325798fca ImportSource: make method public for now 2018-06-12 21:45:11 +02:00
Thomas Gelf b2f97dd2bb Sync: fix phpcs complaints 2018-06-12 21:31:42 +02:00
Thomas Gelf 5e0b237d2d SyncRule: add import-related methods 2018-06-11 21:45:21 +02:00
Thomas Gelf 0735ed0aa1 SyncProperty: allow priorities, set source name 2018-06-11 21:29:59 +02:00
Thomas Gelf 85651a241a ImportSource: implement property modifier import 2018-06-12 19:57:19 +02:00
Thomas Gelf f9ca11eb50 ImportRowModifier: allow custom priority for...
...new objects (important when importing them)
2018-06-11 17:37:54 +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 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 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 c2519b65b5 GroupMembershipResolver: cosmetics 2018-05-29 23:45:47 +02:00
Thomas Gelf 8c432285e7 Various: stick with default exceptions...
...IDE hints are annoying
2018-05-29 21:31:43 +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 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 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 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 a033e411c6 Sync: preserve _override_servicevars
fixes #1307
2018-05-04 22:14:07 +02:00
Thomas Gelf 6add437dce IcingaCommand: do not allow to delete while in use
fixes #1443
2018-05-04 13:12:23 +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
Thomas Gelf 473bbd40c4 IcingaHostForm: fix premission checks on new Hosts
refs #1451
2018-03-29 16:46:41 +02:00
Thomas Gelf c5375c968b IcingaObjectGroups: add missing Exception use 2018-03-28 17:50:41 +02:00
Thomas Gelf fcbc2db71b IcingaObject: resolve groups for flattened objects
refs #1449
2018-03-28 17:47:48 +02: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 41e379b008 IcingaObject: getRenderingZone() must succeed...
...even when no config is given

refs #1394
2018-02-20 15:56:17 +01:00
Thomas Gelf 54a98d3a34 IcingaEndpoint: getDescriptiveUrl() - new helper 2018-02-20 15:36:48 +01:00
Thomas Gelf 081ddf5e85 ImportSource: flip modifier/row application loop
...and fix property modifier application order
2018-01-26 16:06:35 +01:00
Thomas Gelf 8dfe78b8bf ImportSource: reject by key
refs #1369
2018-01-26 13:04:32 +01:00
Thomas Gelf 53432c6d5c ImportModifiers: friendlier errors on PHP 7.x 2018-01-25 13:13:42 +01:00
Thomas Gelf 81053e4efa ImportSource: reset rejection after using a...
...property modifier
2018-01-25 12:53:03 +01:00
Thomas Gelf 8ed76d4888 ImportSource: allow Property Modifiers to reject
fixes #1369
2018-01-25 12:16:49 +01:00
Thomas Gelf 14e5aa8da4 ImportSource: unify duplicate logic
fixes #1370
2018-01-25 10:58:59 +01:00
Markus Frosch 07d830b06f IcingaObject: Render flapping thresholds downwards compatible
Settings are ignored in Icinga < 2.8.0 and a warning is logged.

refs #330
2018-01-15 10:10:33 +01:00
Markus Frosch 4902f694c1 flapping: Migrate to Icinga 2.8.0 flapping properties
Existing property is dropped now, it never was used in director before.

refs #330
2018-01-15 10:10:33 +01:00
Markus Frosch b9190755a6 IcingaObject: Support numeric properties
Similar to intervalProperties
2018-01-15 10:10:33 +01:00
Thomas Gelf 5d52eaefd0 IcingaObject: check for modified properties...
...once again after resolving unresolved related properties.

fixes #1315
2017-12-11 18:31:19 +01:00
Thomas Gelf 9f6771f09e CLI: health check plugin
fixes #1278
2017-11-08 15:31:56 +01:00
Thomas Gelf 6490283647 IcingaService: single objects w/o host must fail
fixes #1236
2017-10-12 17:01:20 +02:00
Thomas Gelf 996918aafa MemoryLimit: dedicated class, tests
fixes #1220
2017-10-10 14:35:32 +02:00
Thomas Gelf 5388520551 FieldLoader: fix 'show based on filter' for...
...CustomVariables of type Array

fixes #983
2017-10-07 17:14:54 +02:00
Thomas Gelf 1c0b06a1f8 GroupMembershipResolver: ignore objects scheduled
...for removal when refreshing group membership cache

fixes #1126
2017-10-04 21:06:22 +02:00
Thomas Gelf c277a5be53 IcingaDependency: just whitespace 2017-09-28 11:02:13 +02:00
Thomas Gelf 2e483fefba IcingaDependency: render parent_service_by_name...
...as a string

fixes #1136
2017-09-28 11:02:13 +02:00
Thomas Gelf 2f78d52c58 IcingaDependency: rule is not a DbObject here
fixes #1137
2017-09-28 11:02:13 +02:00
Thomas Gelf e45962c1b9 various: shorten long line, spacing, readability 2017-09-28 11:02:13 +02:00
Marc DeTrano 708edfdebc Updates: clean code for whitespace/standards...
...issues as reported by Travis. Add requirement for parent and child host
fields when setting up a Dependency Object (these fields are not necessarily
needed for Templates or Apply Rules). Renamed new table field to
'parent_service_by_name'... which is a bit more descriptive or what that
field is intended for.
2017-09-28 11:01:27 +02:00
Marc DeTrano 6bea1eff41 Implement Icinga Dependency Configuration. 2017-09-28 11:01:27 +02:00
Thomas Gelf 07c4d3ceaa IcingaTemplateChoice: helper method for roles...
...and initial support for "main" choice
2017-09-27 20:44:50 +02:00
Thomas Gelf cd2ed5cfae schema, IcingaTemplateChoice: add columns for...
...upcoming features
2017-09-27 20:41:41 +02:00
Thomas Gelf 1e43ca5d99 IcingaObject: add hasBeenRenamed()...
...and a hint for IDE's
2017-09-14 10:20:45 +02:00
Thomas Gelf 3f4903b889 GroupMembershipResolver: skip templates
Motivation: templates are not considered resolved objects
2017-09-13 17:20:02 +02:00
Thomas Gelf f7353b6628 IcingaObject: allow to load Choices by type
fixes #1129
2017-09-12 15:51:33 +02:00
Thomas Gelf 53242894a8 CustomVariables: extend overrides to allow...
...overrides from multiple templates to be merged

fixes #813
2017-09-12 12:19:05 +02:00
Thomas Gelf 804008673a IcingaCloneObjectForm: clone sets with services...
...and fix redirection

fixes #852
2017-09-11 16:02:39 +02:00
Thomas Gelf 424fc31363 IcingaObject: unset imports, will be set later on 2017-09-06 02:27:27 +02:00
Thomas Gelf 6d562eef12 IcingaObject: do not clear imports on merge...
...when merged object has no imports
2017-09-06 01:31:14 +02:00
Thomas Gelf 9cfc6bb46d IcingaCommandArgument: be defensive, format could
...be missing

fixes #1151
2017-09-05 10:22:01 +02:00
Thomas Gelf 7cd307ea53 IcingaCommandArgument: skip default for compact 2017-09-04 12:50:37 +02:00
Thomas Gelf 4c46f07f2e Arguments: externalize, improve code, fix issues 2017-09-03 07:46:04 +02:00
Thomas Gelf 8407f23474 toPlainObject: resolve is boolean
Doesn't change behavior, but null is confusing here.
2017-09-01 10:04:21 +02:00
Thomas Gelf 19e51e15e4 IcingaObject: special treatment for groups
refs #1146
2017-08-31 22:42:25 +02:00
Markus Frosch e9546f68bf Sync: Respect the fields used in filter_expression of the SyncRule
So that you can filter by fields not used in properties, or in property filters.

fixes #1130
refs #876
2017-08-30 16:40:12 +02:00
Thomas Gelf a3ac1b8eef IcingaServiceSet: fix tests 2017-08-28 06:16:00 +02:00
Thomas Gelf 20fe291433 IcingaServiceSet: do not allow for objects without
...a host
2017-08-28 06:09:37 +02:00
Thomas Gelf c2afacc11b IcingaServiceSet: createWhere() look for template
...in case no host_id has been set
2017-08-28 06:09:37 +02:00
Thomas Gelf 2f1d963c1c IcingaObject: ask imports for name list...
...when we already have it available
2017-08-28 06:09:37 +02:00
Thomas Gelf fd400977f2 IcingaObject: do not resolve imports when...
...resolving related objects
2017-08-26 16:17:07 +02:00
Thomas Gelf bab28b1755 IcingaService: force object_type=template when...
...loading a service by name

fixes #1094
2017-08-25 16:10:59 +02:00
Thomas Gelf f8445ca1ef IcingaObject: fix ApiUser preview rendering
fixes #1117
2017-08-25 15:03:12 +02:00
Thomas Gelf 1b160c6c35 IcingaObject: opt in for recursion
fixes #1118
2017-08-25 15:00:07 +02:00
Thomas Gelf 5450a00c78 IcingaService: handle use_agent=n by explicitly...
...rendering command_endpoint = null

fixes #921
fixes #1013
2017-08-25 08:50:38 +02:00
Thomas Gelf f55a672d48 IcingaObject: accept 'disable' on merge()
fixes #1104
2017-08-24 16:35:09 +02:00
Thomas Gelf 15c26b97db IcingaObject: fix "origins" names when showing...
...inherited properties

fixes #1093
2017-08-22 17:47:27 +02:00
Thomas Gelf 69607ada3c SyncRule: switch priority order, migrate DB
fixes #1077
2017-08-22 17:10:49 +02:00
Thomas Gelf 2109d138d5 IcingaTimeperiodRangeForm: delete through the...
IcingaTimePeriod and it's Ranges

fixes #1089
2017-08-21 22:41:37 +02:00
Thomas Gelf a092c5d79e IcingaObjectImports: fix check for modifications
refs #1062
2017-08-21 21:36:21 +02:00
Thomas Gelf 6ba0e8e924 IcingaObject: give unstored import names 2017-08-21 20:33:00 +02:00
Thomas Gelf 0bd2a328ed GroupMembershipResolver: do not fill objects...
...cache when not being told so. Also, fix query order/operator to ensure an
AND is being used.
2017-08-21 08:12:04 +02:00
Thomas Gelf 9adeb65f0c GroupMembershipResolver: support calls from onStore 2017-08-21 08:10:47 +02:00
Thomas Gelf 70b3e966da ImportSource: flip fetch order to stay close to...
...former one
2017-08-20 16:02:47 +02:00
Thomas Gelf 1999de2707 ImportRowModifier: fix class instantiation 2017-08-20 15:17:22 +02:00
Thomas Gelf 3c4d4de633 ImportRowModifier: also use PriorityColumn helper 2017-08-20 15:14:37 +02:00
Thomas Gelf 4c7b940705 PriorityColumn: add new object extension, use...
...it for SyncProperty
2017-08-20 15:04:06 +02:00
Thomas Gelf b21ba5dc54 IcingaHost: add helper methods for Sets, Services 2017-08-18 16:42:56 +02:00
Thomas Gelf bbcdf22466 ImportSource: better IDE hints 2017-08-18 10:48:58 +02:00
Thomas Gelf b364165110 IcingaObject: fix plain export with chosen...
...properties, use new template resolving repository everywhere
2017-08-16 08:11:08 +02:00
Thomas Gelf a495a6ca39 IcingaObjectImports: use new repository for lookup 2017-08-13 23:18:54 +02:00
Thomas Gelf 1356733332 IcingaHost: make sure that an Endpoint has a...
...Db connection
2017-08-11 17:15:08 +02:00
Thomas Gelf 13f33a842b IcingaTemplateResolver: improve benchmark message 2017-08-11 10:07:36 +02:00
Thomas Gelf 496be4fbc8 Sync: respect 'replace' policy on vars...
...with rule policy being set to 'merge'

fixes #864
2017-08-03 10:51:13 +02:00
Thomas Gelf 59d6291fcf PrefetchCache, IcingaObject: speed up import list
...greatly improves REST API performance
2017-08-01 12:48:29 +02:00
Thomas Gelf 118dddf93a Caches: add Benchmark, some IDE hints for CVar 2017-07-31 16:12:56 +02:00
Thomas Gelf b2736e1776 ObjectForms: fix weird issues with 'add' forms 2017-07-28 18:46:11 +02:00
Thomas Gelf d92492d5a1 DirectorActivityLog: use IP when unauthenticated
This applies mostly to self service API
2017-07-21 12:06:36 +02:00
Thomas Gelf cca4092151 Deployment: move logic to dedicated classes
Extended DirectorDeploymentLog, new DeploymentInfo class
2017-07-20 08:22:31 +02:00
Thomas Gelf 29d93512e6 Objects/Icinga(Host|Service): fix typo 2017-07-18 13:36:05 +02:00
Thomas Gelf ea02d0b23c ImportRowModifier: add missing property 2017-07-14 14:56:22 +02:00
Thomas Gelf 2cdba2aa65 Import and Sync: add description fields
fixes #1018
2017-07-14 14:27:05 +02:00
Thomas Gelf 05d8e5bb00 Datalist: Allow to restrict entries by role
fixes #1012
2017-07-14 13:21:42 +02:00
Thomas Gelf 2ca7f26b49 SelfService: fix booleans, add new options
refs #486
2017-07-14 13:21:42 +02:00
Thomas Gelf 4a0e8df2f2 Host,Service: add check_timeout property
fixes #546
2017-07-14 13:21:42 +02:00
Thomas Gelf 27a51ac34c SelfService: implement powershell-parameters
fixes #486
2017-07-14 13:21:42 +02:00
Thomas Gelf 8a8540bc3e IcingaHost: generate API keys 2017-07-14 13:21:42 +02:00
Thomas Gelf 0ec5ec8197 TemplateChoice: delegate storing members to...
...the object, use a single form
2017-07-14 13:21:42 +02:00
Thomas Gelf 126dd29ecc IcingaObject: work around a resolver issue 2017-07-14 13:21:42 +02:00
Thomas Gelf 6aab867682 GroupMembershipResolver: ignore unstored objects
Currently affects tests only
2017-07-14 13:21:42 +02:00
Thomas Gelf 67d802d39a Host,Service: hide choice property 2017-07-14 13:21:42 +02:00
Thomas Gelf a9a2295c8a IcingaObject, Host/Service: add supportsChoices() 2017-07-14 13:21:42 +02:00
Thomas Gelf 2f79920a18 TemplateChoice: small fixes, forms 2017-07-14 13:21:42 +02:00
Thomas Gelf 0b89c222eb IcingaTemplateChoice: take over code generating...
...the choice form element
2017-07-14 13:21:42 +02:00
Thomas Gelf f7cbe4a3be IcingaHost: reference to choices 2017-07-14 13:21:42 +02:00
Thomas Gelf 68a22590a8 IcingaTemplateResolver: just a newline 2017-07-14 13:21:42 +02:00
Thomas Gelf cef947e6fc IcingaTemplateChoice: new base object, host/service 2017-07-14 13:21:42 +02:00
Thomas Gelf 4f3f4e7f52 IcingaTemplateResolver: implement a reverse index 2017-07-14 13:21:42 +02:00
Thomas Gelf ac815b14b6 GroupMembershipResolver: fix SQL table alias 2017-07-14 13:21:42 +02:00
Thomas Gelf 18c0ce3c4f IcingaObject: allow to prefetch related object...
...types
2017-07-14 13:21:42 +02:00
Thomas Gelf 875627ead7 ObjectApplyMatches: refactor host-only code
refs #897
2017-07-14 13:21:42 +02:00
Thomas Gelf 526492580c GroupMembershipResolver: refactor from HostGroup
This is now a more generic implementation and can serve multiple object types

refs #897
2017-07-14 13:21:42 +02:00
Thomas Gelf aa3a8987ba HostGroupMembershipResolver: handle single groups
Formerly this worked only with apply rules, now this also respects single host/
group assignments.

fixes #832
2017-07-14 13:21:42 +02:00
Thomas Gelf 5ae7997f9d Sync: tune membership resolver
Also fixes error on host creation

refs #832
2017-07-14 13:21:42 +02:00
Thomas Gelf 45c93b3445 HostGroupMembershipResolver: first implementation
refs #832
2017-07-14 13:21:42 +02:00
Thomas Gelf 47bfb2d31d IcingaObjectImports: add meaningful error...
...would have saved me some troubleshooting time
2017-07-14 13:21:42 +02:00
Thomas Gelf 2237272b6b SyncRule: do not allow to sync unless some...
...properties have been defined.

fixes #383
2017-05-03 11:24:22 +02:00
Thomas Gelf f91dd5fa0e PropertyModifierCombine: implementation, tests...
...and related changes with some documentation

fixes #922
2017-05-03 10:39:49 +02:00
Thomas Gelf 6234648a1f IcingaEndpoint: work on Zone, not on the id
fixes #878
2017-03-29 12:52:54 +02:00
Thomas Gelf 58ba7f9f86 IcingaEndpoint: deploy to where it's Zone is...
...to be found

refs #463
2017-03-29 11:41:13 +02:00
Thomas Gelf 3714d2567b IcingaEndpoint: fix indentation 2017-03-28 20:56:10 +02:00
Thomas Gelf 9f2070dced IcingaEndpoint: provide getRestApiClient() helper
fixes #877
2017-03-28 18:08:27 +02:00
Thomas Gelf afce89dc98 DirectorActivityLog: log username and ip
Logged values are now JSON-encoded

fixes #849
2017-03-15 12:02:08 +01:00
Thomas Gelf cb9fff90ef IcingaObject: add new static helper, expose...
...existing one

refs #842
2017-03-13 22:03:02 +01:00
Thomas Gelf bff76dad8e HostApplyMatches: fix matching for "contains"
fixes  #803
2017-03-03 09:41:25 +01:00
Thomas Gelf bfde75a0a2 IcingaServiceSet: import DirectorOverrideTemplate
...when rendering services belonging to a set for a single host

fixes #776
2017-02-08 10:04:47 +01:00
Thomas Gelf d4b769b8d7 IcingaHost: do not render Endpoint and Zone...
...for disabled hosts

fixes #741
2017-01-24 09:45:32 +01:00
Thomas Gelf c75b4fc6b0 DirectorDatafield: phpcs -> SpacingBeforeClose 2017-01-19 13:58:07 +01:00
Thomas Gelf b08be6ecc0 DirectorDatafield: do not fail on missing command
refs #712
refs #731
2017-01-19 13:55:59 +01:00
Thomas Gelf 164b5bd93d Fields: fix inheriting fields from commands
refs #712
refs #731
2017-01-19 13:50:50 +01:00
Thomas Gelf b7a10d296c phpcs: mostly new PSR-2 SpacingAfter/Before checks 2017-01-13 20:54:52 +01:00
Thomas Gelf 9e771f2d5a Fix phpcs complaints 2017-01-13 19:47:54 +01:00
Thomas Gelf 792e58abae DirectorDatafield: just newlines 2017-01-13 16:39:35 +01:00
Thomas Gelf f874a79bb4 IcingaObjectFieldLoader: no mandatory field on cmd
fixes #12644
2017-01-13 16:05:34 +01:00
Thomas Gelf 40ff51e487 IcingaTemplateResolver: separate concerns...
...and make helper accessible
2017-01-13 15:20:04 +01:00
Thomas Gelf 0a9ed6ff39 HostApplyMatches: allow usage for single hosts
refs #13849
2017-01-02 10:15:55 +01:00
Thomas Gelf a9874879dd TemplateResolver: add new methods for stricter...
...path resolution. Also ships related tests

refs #13839
2016-12-30 10:15:25 +01:00
Thomas Gelf efe6fd35ab IcingaObject: remove code loading fields...
...we now have a dedicated class for this
2016-12-28 12:44:51 +01:00
Thomas Gelf d4736f4a41 IcingaObject: better way to get resolved props? 2016-12-16 13:21:48 +01:00
Thomas Gelf 241404d9ba HostApplyMatches: do not skip defaults
May avoid errors when working with properties defined only on some of your
hosts
2016-12-16 13:19:02 +01:00
Thomas Gelf 949d6c9b54 IcingaCommandField: one more implementation 2016-12-14 16:36:33 +01:00