Commit Graph

1953 Commits

Author SHA1 Message Date
Markus Frosch 802b923df6 IcingaConfig: Add v1-masterless config format
Do not render a passive checkable to the master zone then.

refs #12919
2016-11-03 13:41:44 +01:00
Markus Frosch 31a321e13e IcingaObject(legacy): Add flag to render only supported objects
refs #12919
2016-11-03 13:41:44 +01:00
Markus Frosch 2e2f4739c7 IcingaObject(legacy): Only render passive objects for checkables
Also simplify renderToLegacyConfig.

refs #12919
2016-11-03 13:41:44 +01:00
Thomas Gelf 4a82bd5b90 IcingaConfig: count apply rules and show them 2016-11-03 13:35:44 +01:00
Thomas Gelf c073278ee3 ServiceSet: re-enable them 2016-11-03 12:54:15 +01:00
Thomas Gelf a540fd08aa cli/objects: provide new commands
fixes #12965
2016-11-03 12:32:51 +01:00
Thomas Gelf 8a57ca9437 ObjectsCommand: initial import 2016-11-03 12:25:48 +01:00
Thomas Gelf d006449564 inspect: enforce permissions
fixes #11763
fixes #11764
2016-11-03 11:49:04 +01:00
Markus Frosch 9305f55e92 BaseTestCase: Support more resource settings via ENV 2016-11-03 10:19:44 +01:00
Markus Frosch 10ee7901c8 Add composer support for testing 2016-11-03 10:19:25 +01:00
Thomas Gelf b996a684be tests: refactor bootstrapping, initial Gitlab-CI..
...support. Currently expects three test-runners offering Debian Jessie,
Ubuntu 16.04 LTS (Xenial) and CentOS 7. Removed all dependencies on the
Icinga Web 2 test module, installing phpunit should suffice to run tests
in a normal environment.

This is a first attempt to make things easier, more to come.
2016-11-03 02:50:39 +01:00
Thomas Gelf 6c23a02252 Test: add test suite prototype and command
refs #12905
2016-11-02 19:30:11 +01:00
Thomas Gelf 468a2719a7 DirectorActivityLog: optionally log to file/syslog
fixes #12976
2016-11-02 18:40:43 +01:00
Thomas Gelf e410beb935 CoreApi: skip incomplete stages
fixes #13028
2016-11-02 11:06:15 +01:00
Thomas Gelf ee0def7d2b Lots of files: make IDE users happy 2016-11-01 18:28:36 +01:00
Markus Frosch 1a02543321 Sync: Use PrefetchCache 2016-10-31 17:21:21 +01:00
Markus Frosch 2b227a356b IcingaObjectGroups: Respect PrefetchCache 2016-10-31 17:21:21 +01:00
Markus Frosch 672a45b26e IcingaObject: loadAllByType should respect PrefetchCache 2016-10-31 17:21:21 +01:00
Markus Frosch 86d2f317ee IcingaObject: Do not invalidate templateResolver on every setImports()
Do not clear templateResolver, but refresh current object with its "new" parents.

refs #11803
2016-10-31 17:21:21 +01:00
Thomas Gelf 22802114ac IcingaService: do not disable services twice
fixes #13017
2016-10-31 12:36:45 +00:00
Markus Frosch b04e5f401f Sync: Allow importing / syncing templates
Purging a used template will obviously fail.

refs #11778
2016-10-31 10:55:21 +01:00
Thomas Gelf cbf1a30a26 Kickstart: import notification commands
fixes #12028
2016-10-30 12:35:12 +00:00
Thomas Gelf f41d453448 DeployConfigForm: provide link-like form for...
...deployments

fixes #11854
2016-10-30 10:52:14 +00:00
Thomas Gelf 78903553e9 IcingaService: disable services belonging to a...
...single disabled host

fixes #12049
2016-10-29 22:06:52 +00:00
Thomas Gelf a4ef711ef0 SyncProperty: simplify code and form
fixes #12700
2016-10-29 21:25:42 +00:00
Thomas Gelf d2f359e3e3 UserGroup: do not provide assign_filter property
fixes #13007
2016-10-28 23:29:33 +00:00
Thomas Gelf 5fc9aabd3e ImportSource: fix syntax error 2016-10-27 19:47:02 +00:00
Thomas Gelf 78b01091eb DirectorObjectForm: deal with subform values 2016-10-27 19:39:40 +00:00
Thomas Gelf 5921f4773f DbObject: one more protection when looking up...
...prefetched objects by name
2016-10-27 19:34:11 +00:00
Thomas Gelf c10ad0e3a2 ImportSource: allow to transfer nested keys 2016-10-27 19:01:49 +00:00
Thomas Gelf 27634fe722 QuickBaseForm: allow for multiple module-related...
...prefix paths
2016-10-27 18:17:21 +00:00
Thomas Gelf 66e5158ccc Dashboard: replace it with a modular one
fixes #12997
2016-10-27 17:58:31 +00:00
Thomas Gelf 2b094067a5 QuickBaseForm: add missing use statement 2016-10-27 17:33:35 +00:00
Thomas Gelf e59e2d0c2c Merge remote-tracking branch 'origin/master' 2016-10-27 16:35:19 +00:00
Thomas Gelf c91084f0db ObjectsController: hide sets for now...
...didn't want to push that early :p
2016-10-27 16:33:47 +00:00
Thomas Gelf bab23c8f9b Form: split constructor to make tests easier 2016-10-27 16:31:04 +00:00
Markus Frosch a6ad95848b PlainObjectRenderer: Render assoc arrays as Hashes
Previous handling completely ignored any keys.
2016-10-27 15:54:13 +02:00
Markus Frosch 5199dc7826 Sync: Tell the user which object caused an Exception 2016-10-27 15:47:02 +02:00
Markus Frosch f9f61be7aa IcingaObject: Allow replaceWith on non-apply Objects
This broke with assign_filter changes, we should not throw an error when
the filter is actually null.

replaceWith() re-sets all vars.

refs #12033
2016-10-27 15:46:52 +02:00
Thomas Gelf d59604bd93 ServiceSet: rework sets, allow for vars and...
...all other service properties when adding services to a set
2016-10-25 23:12:23 +00:00
Thomas Gelf f09560a89e IcingaServiceSet: simplify code 2016-10-25 23:12:23 +00:00
Thomas Gelf 7f34e4bdf3 IcingaServiceSet: improve work with imports 2016-10-25 23:12:23 +00:00
Thomas Gelf 1724a78da5 DirectorObjectForm: do not set null values 2016-10-25 23:12:23 +00:00
Thomas Gelf 354d12946a IcingaServiceSet: render custom vars 2016-10-25 23:12:23 +00:00
Thomas Gelf c41009992e IcingaObjectFieldLoader: allow to combine objects 2016-10-25 23:12:23 +00:00
Thomas Gelf f87e80989d DirectorObjectForm: persist the field loader 2016-10-25 23:12:23 +00:00
Thomas Gelf 0db659cc4e IcingaObjectFieldLoader: check for fields support 2016-10-25 23:12:23 +00:00
Thomas Gelf 00f21f838b DirectorObjectForm: simplify inhertance code 2016-10-25 23:12:23 +00:00
Thomas Gelf 6bb74966d5 CustomVariables: add _set table to delete/countAll 2016-10-25 23:12:23 +00:00
Thomas Gelf 696e63b4ec Servicesset: add controller, form and table 2016-10-25 23:12:23 +00:00
Thomas Gelf 6a45d9507d IcingaServiceSet: remove legacy resolving methods
They have been used once we had no imports
2016-10-25 23:12:23 +00:00
Thomas Gelf fa2c360f4c IcingaObject: fix arguments rendering for external
...objects
2016-10-25 02:28:19 +00:00
Thomas Gelf ad7c5bc997 IcingaHost: fix tests 2016-10-25 00:30:12 +00:00
Thomas Gelf 39be7b2cb0 IcingaObjectLegacyAssignments: rendering for old...
...assignments still to be found in our activity log
2016-10-25 00:00:16 +00:00
Thomas Gelf 6e83a4fd5b IcingaObjectGroup: provide groups for assign rules 2016-10-24 21:55:02 +00:00
Thomas Gelf 0d86c24cd8 Huge change, getting rid of legacy assignment...
...code. All objects should work with the new code base right now
2016-10-24 03:41:37 +00:00
Thomas Gelf aeafec37d7 FormDataFilter: simplify HTML, Code and style 2016-10-23 04:23:38 +00:00
Thomas Gelf 24478ede12 DataFilter: json_en/decode when passing to form 2016-10-23 03:14:52 +00:00
Thomas Gelf 88a741a8d0 IcingaService: introduce assign_filter property 2016-10-22 07:02:09 +00:00
Thomas Gelf 8f2b9fea07 DataFilter: automagic fix for not(multiple) 2016-10-22 07:02:09 +00:00
Thomas Gelf 6ed24f93da IcingaObject: render assign_filter property 2016-10-22 07:02:09 +00:00
Thomas Gelf 0a6514928a AssignRenderer: add renderEquals method...
...with (hopefully temporarily) hardcoded groups support
2016-10-22 07:02:09 +00:00
Thomas Gelf a819e7c92c DataFilter: attribs are no longer needed 2016-10-22 07:02:09 +00:00
Thomas Gelf 8ade496fdc DataFilter: refactor the whole class(es) 2016-10-22 07:02:09 +00:00
Thomas Gelf 037c588d26 FormDataFilter: change icon for expression 2016-10-22 07:02:09 +00:00
Thomas Gelf 9349ba0f2a FormDataFilter: new implementation for assignments
First prototype
2016-10-22 07:02:09 +00:00
Thomas Gelf 9ba6116091 IcingaService: support and test speciall object...
...name variants with apply for
2016-10-22 06:54:53 +00:00
Thomas Gelf 1f660b514a IcingaServiceForm: allow empty name for apply rule 2016-10-22 06:09:10 +00:00
Thomas Gelf 7c31b37f27 IcingaServiceForm: remove duplicate code
Elements in this list are optional and may be used in various forms,
so keeping this in the base class is preferrable here
2016-10-22 06:09:00 +00:00
Thomas Gelf 5b4e7509f4 Just a couple of phpcs complaints fixed 2016-10-22 06:08:52 +00:00
Thomas Gelf 0791b900f3 QuickBaseForm: allow translation tools find 'None' 2016-10-22 06:08:44 +00:00
Corentin Ardeois 3e30d34098 Use `config` variable in apply for rules
* use `config` instead of `value` in apply for rules
* update documentation

refs #11976
2016-10-22 06:07:57 +00:00
Corentin Ardeois e7bd4343b5 Add support for Apply for rules in services
Apply for rules are defined through `apply_for` property
Only Array custom variables will be eligible in apply_for dropdown.

API Example:
```bash
 ./director-curl POST director/service?name=my_service '{"apply_for": "for (checked_tcp_port in host.vars.checked_tcp_ports)" }'
 ```

 Will render as:
 ```
  apply Service "my_service" for (checked_tcp_port in host.vars.checked_tcp_ports) {
      ...
  }
  ```
Feature: https://dev.icinga.org/issues/11976

Depends-On: https://github.com/Icinga/icingaweb2-module-director/pull/20
refs #11976
2016-10-22 06:00:54 +00:00
Thomas Gelf b7eaab715b Make explicit calls to renderStringWithVariables 2016-10-22 05:48:09 +00:00
Corentin Ardeois 37c91050c7 Expressions syntax is now $var$
Instead of $$var$$.
We make sure $$var$$ is left untouched.

refs #11976
2016-10-22 00:15:09 +00:00
Corentin Ardeois ddcfb09f58 Handle expressions only for apply objects
Expressions will be handled only if the object is an ApplyRule.
Only properties and custom variables are replaced.

refs #11976
2016-10-22 00:15:09 +00:00
Corentin Ardeois bcef87f4c9 Add support for expressions
Any rendered string can contain variables encapsulated with "$$" characters.

Example:
Display Name declared with `Port $$host.vars.tcp_port$$ check` will
be processed as `"Port " + host.vars.tcp_port + " check"`

API:
```bash
 ./director-curl POST director/service?name=my_service '{"display_name": "Port $$host.vars.tcp_port$$ check" }'
 ```

 Rendered config:
 ```
  apply Service "my_service" {
      import "my_template"

      display_name = "Port " + host.vars.tcp_port + " check"
  }
 ```

refs #11976
2016-10-22 00:15:09 +00:00
Thomas Gelf a9b3b2f47a IcingaObjectImports: fix compatibility issue
fixes #12951
2016-10-20 19:17:52 +00:00
Thomas Gelf b62b602f7d DirectorObjectForm: move imports below name 2016-10-20 02:22:34 +00:00
Thomas Gelf fc2890d865 IcingaObject: new helper method for single...
...resolved custom vars
2016-10-20 01:37:23 +00:00
Thomas Gelf 76936c7efb IcingaTemplateResolver: fix resolver for unstored...
...objects

refs #12938
2016-10-20 01:32:52 +00:00
Thomas Gelf d5234f723d HostController: no loop check for 'fake' services
Inherited services do not exist in the db. As many services would
carry their template's name, the fallback to a name-based loop check
would trigger an erraneous error. So we trigger no preliminary loop
check for those now.

fixes #12938
2016-10-20 01:09:34 +00:00
Thomas Gelf 8c2d5ec7f9 Data: flip field/list order, as fields are...
...more important
2016-10-17 17:24:27 +00:00
Thomas Gelf edbda2c592 IcingaObjectFieldLoader: silently ignore setValues
...when called for an object without custom var support
2016-10-17 16:57:25 +00:00
Thomas Gelf 46a5b3cb2f CubeLinks: hook into the cube module 2016-10-14 21:14:04 +00:00
Thomas Gelf b40f4a7ab7 QuickTable: fix 'return value in write contex'...
...for older PHP versions
2016-10-14 19:35:52 +00:00
Thomas Gelf 23ef9a707c MultiEdit: make it independent of an object type 2016-10-14 18:32:34 +00:00
Thomas Gelf 6a54e00402 MultiEdit: code cleanup, add custom var support
fixes #12465
fixes #12906
fixes #11614
2016-10-14 17:17:07 +00:00
Thomas Gelf 69237b8ae9 MultiEditForm: first shot, provides imports
refs #12465
2016-10-14 13:46:06 +00:00
Thomas Gelf 732ebae339 ActionController: provide a singleTab helper 2016-10-14 13:46:06 +00:00
Thomas Gelf 41c4448685 QuickTable: provide multiselect feature
refs #11614
2016-10-14 13:46:06 +00:00
Thomas Gelf 6f46e6b496 YesNo: new boolean-like form fields
fixes #12927
2016-10-14 13:39:43 +00:00
Thomas Gelf 98708e6496 Forms: better error handling
fixes #12926
2016-10-14 13:35:30 +00:00
Thomas Gelf 2df7144240 TemplateResolver: no more false alarms...
...when multiple paths lead to the same template

refs #11803
2016-10-14 11:26:41 +00:00
Thomas Gelf 558ea82203 IcingaRelatedObject: fix syntax, add comment...
...stating that this is unfinished
2016-10-14 10:40:29 +00:00
Thomas Gelf cfbf40147c IcingaObjectImports: simplify code 2016-10-14 10:33:46 +00:00
Thomas Gelf 041fd52174 FieldLoader, TemplateResolver: more cleanup
A few fixes related to modified imports for unstored objects

refs #12922
2016-10-14 09:59:08 +00:00
Thomas Gelf 98acba9fb4 IcingaTemplateResolver: more tweaking
refs #12922
2016-10-14 09:40:01 +00:00
Thomas Gelf 61f3ffff7e TemplateResolver: deal with unstored modified...
...imports property

fixes #12922
2016-10-14 09:12:05 +00:00
Thomas Gelf e04acbc55f IcingaObjectFieldLoader: do not fail on emtpy...
...parents
2016-10-14 08:33:58 +00:00
Thomas Gelf 913c2687b6 IcingaObjectFieldLoader: first implementation
Should already replace all former functionality

refs #12904
2016-10-13 21:25:03 +00:00
Thomas Gelf 0d930efb46 IcingaObject: add new resolving helper methods
This for example allows to get a single inherited var and their origin
2016-10-13 21:25:03 +00:00
Markus Frosch f527e31b14 Merge branch 'bugfix/endpoint-remove-import-12920'
fixes #12920
2016-10-13 16:54:34 +02:00
Markus Frosch cc61831258 DirectorObjectForm: Allow form to select if imports are required
refs #12920
2016-10-13 16:37:49 +02:00
Thomas Gelf cf4dccc817 Notification: add fields support
fixes #12642
2016-10-13 14:34:25 +00:00
Thomas Gelf 71b3459540 DirectorDatafieldForm: allow to wipe all related...
...custom variables when removing a field

fixes #12916
2016-10-13 14:02:51 +00:00
Thomas Gelf 0e45429196 ObjectForm: do not allow to choose type...
...when one is already given
2016-10-13 11:55:53 +00:00
Thomas Gelf c1afda4392 IcingaObject: do not fail when rendering objects...
...without imports support

fixes #12618
2016-10-13 11:11:35 +00:00
Thomas Gelf e99568fffc DirectorObjectForm: add unique error message...
...without adding an error in case we detect a loop. Also improve
resolve cache invalidation and clean up old imports-related code

refs #11803
2016-10-12 15:23:54 +00:00
Thomas Gelf 05f991c585 IcingaObject: no loop detection on unstored...
...objects

refs #11803
2016-10-12 14:26:44 +00:00
Thomas Gelf 7993724dcb IcingaTemplateResolver: detect and throw nesting..
...errors

fixes #11803
2016-10-12 14:16:19 +00:00
Thomas Gelf 0a26b94e7c IcingaObjectMultiRelations: fix service relations
...for sets
2016-10-12 09:11:05 +00:00
Thomas Gelf 34ed3da3b8 IcingaObject: remove duplicated short name logic 2016-10-12 09:09:28 +00:00
Thomas Gelf cb533f5668 IcingaConfig: deploy service sets 2016-10-12 09:04:08 +00:00
Thomas Gelf c044de89de SyncPropertyForm: allow to sync m:n relations 2016-10-12 08:59:42 +00:00
Thomas Gelf 9e1cea0119 IcingaObject: fix v1 rendering for some properties
Mostly relations, no timeout, still ugly
2016-10-12 08:31:22 +00:00
Thomas Gelf e096ec9ec5 IcingaServiceSets: allow to set imports 2016-10-12 08:30:10 +00:00
Thomas Gelf f2f04c44e8 ServiceSet: add CLI command, fix key 2016-10-12 07:31:00 +00:00
Thomas Gelf b7018627a0 IcingaServiceSet: introduce a new object type 2016-10-12 07:19:02 +00:00
Thomas Gelf 8faa572098 PropertyModifierDnsRecords: re-order form fields 2016-10-11 16:02:50 +00:00
Thomas Gelf 785746fb26 GroupMembershipCache: fix messed up properties
fixes #12887
2016-10-11 15:26:31 +00:00
Thomas Gelf c4da25ef25 IcingaCommandArgument: render set_if without format
Icinga DSL support was introduced in 348cb1aa6 and works fine, but breaks
rendering of legacy arguments with set_if_format = NULL. This should default
to 'string', as we should IMO not force NOT NULL in the DB in this case.

refs #12153
fixes #12886
2016-10-11 09:45:11 +00:00
Thomas Gelf 380fb0afe9 GroupMembershipCache: add missing property
fixes #12884
2016-10-10 19:15:34 +00:00
Markus Frosch df36071c9c IcingaService: single objects should respect...
...their host's zone where not overriden by a service template

fixes #11988
2016-10-10 10:57:24 +00:00
Thomas Gelf 82c5b10eef Db: do not let the db adapter handle binary...
...data as this causes problems with Postgres and quoteBinary
2016-10-09 13:47:37 +00:00
Thomas Gelf 38eaf4036b IcingaHost: agent-related hint for legacy config 2016-10-09 13:27:38 +00:00
Thomas Gelf e96db8b296 IcingaObject: move duplicate logic to common func 2016-10-09 13:15:05 +00:00
Thomas Gelf cf063180d2 IcingaObject: start to dry out relation-related...
...code. Still weird and hard to understand because of lazy-loading,
can only get better. All this is required to be able to render objects
having obsolete dependencies in our activity log
2016-10-09 12:48:13 +00:00
Thomas Gelf 1bc4a397a8 CustomVariableCache: optionally use digest()...
...for PostgreSQL in case pgcrypto is installed. Also add related hint to the
installation documentation
2016-10-09 12:43:04 +00:00
Thomas Gelf 6f12663756 PrefetchCache: lot's of improvements
This commit enables the prefetch cache per default when rendering configs
and adds the following features:

* prefetch all kinds of Icinga object inheritance (imports)
* prefetch group memberships
* prefetch custom variables
* render vars with the same checksum only once

Roughly measured performance boost with a large real-life config, renders three
times faster as it did before. Might be even more for those suffering from high
latencies when accessing their DB remotely and/or on a slow storage.

fixes #12876
2016-10-09 12:41:06 +00:00
Thomas Gelf 42aef0105d DbObject: exists() should respect prefetch...
...also for negative lookups

refs #12876
2016-10-08 19:34:59 +00:00
Thomas Gelf c0a8c49d4f show/activitylog: fallback rendering for hosts...
...with obsolete parents, that have been removed in the meantime
2016-10-06 16:29:50 +00:00
Thomas Gelf 081ea72497 KickstartHelper: handle renamed zones...
...when triggered multiple times
2016-10-06 16:20:25 +00:00
Thomas Gelf 2c071e215d CustomVariableNumber: tolerant float comparison 2016-10-06 16:19:08 +00:00
Thomas Gelf 749f035971 Db/IcingaObject: formatting & style 2016-10-05 18:05:59 +00:00
Thomas Gelf 70b8a9ea02 DirectorObjectForm: improve Exception error message 2016-10-05 18:03:07 +00:00
Thomas Gelf d1b7083145 IcingaObject: add helper methods for relations 2016-10-05 17:58:48 +00:00
Thomas Gelf e9a570e96d Sync: fix sync & purge for datalistEntry objects 2016-10-05 17:45:25 +00:00
Thomas Gelf c859055221 CustomVariables: unset var if set to plain null
...but still allow for Null variables
2016-10-05 17:20:25 +00:00
Thomas Gelf db0662b554 PropertyModifierDnsRecords: new property modifier 2016-10-03 15:28:41 +00:00
Marc DeTrano 348cb1aa63 IcingaCommandArgument: allow expressions in set_if
fixes #12153
2016-09-23 15:18:58 +00:00
Thomas Gelf d8f02c8974 DataTypeDirectorObject: do not force 'require' 2016-09-23 14:07:33 +00:00
Thomas Gelf 542f1faf76 DataType: new DirectorObject data type
Allows one to choose from a list of objects, filling string or array
vars

fixes #11998
2016-09-23 13:30:47 +00:00
Thomas Gelf 3383b97e69 IcingaRelatedObject: new helper class 2016-09-16 21:56:35 +00:00
Thomas Gelf 42212661f2 IcingaObject: document 'supports' vars and methods 2016-09-15 18:53:09 +00:00
Thomas Gelf a17fc32b41 PropertyModifierToInt: new property modifier 2016-09-14 19:35:51 +00:00
Thomas Gelf 407a387dab DirectorDatalistEntry: add shouldBeRemoved...
...fixes sync for DatalistEntries

fixes #12715
2016-09-12 21:41:15 +00:00
Thomas Gelf 04cae6f8f8 DirectorObjectForm: fix forgotten variable 2016-09-09 21:38:49 +00:00
Thomas Gelf f52cd5ea77 DirectorDatafield: simplify usage 2016-09-09 21:32:26 +00:00
Thomas Gelf 217fb38517 IcingaObject: implement supportsAssignRules 2016-09-09 09:06:31 +00:00
Markus Frosch a90595a004 IcingaHostGroup: Add apply statements 2016-09-09 08:32:42 +00:00
Thomas Gelf 29231ef8c8 config/deployments: collect uncollected stages...
...if any when refreshing the history

refs #11979
2016-09-09 07:21:32 +00:00
Thomas Gelf efd0b50052 CustomVariable: reset 'deleted' when re-setting...
...a value
2016-09-08 22:40:07 +00:00
Thomas Gelf 2c7c54a15d IcingaConfig: improve override constant usage 2016-09-08 20:24:54 +00:00
Thomas Gelf 646a7dc067 IcingaConfig: workaround for no host in service 2016-09-08 20:13:45 +00:00
Thomas Gelf b2b189c425 IcingaServiceForm: support use_var_overrides...
...even for single host-assigned services
2016-09-08 18:43:25 +00:00
Thomas Gelf b47c7be3d5 IcingaService: add use_var_overrides 2016-09-08 15:01:19 +00:00
Thomas Gelf defb8c50c2 CustomVariables: improve readability 2016-09-08 13:55:13 +00:00
Thomas Gelf 999019ba16 IcingaService: make sure to have a db connection
...when rendering, as we require settings
2016-09-08 13:30:37 +00:00
Thomas Gelf 31b716a7db CustomVariableDictionary: implement isset 2016-09-08 13:18:55 +00:00
Thomas Gelf b8fb0d4267 IcingaConfig: host-generated services should...
...respect new overrides
2016-09-08 13:07:04 +00:00
Thomas Gelf d44c06fce0 IcingaService: do not hardcode override template 2016-09-08 12:08:30 +00:00
Thomas Gelf 8dd7fcd13b IcingaHost, IcingaServiceForm: fix parse error...
...on PHP < 5.5
2016-09-08 11:32:41 +00:00
Thomas Gelf 4f4b6eb63a IcingaService: allow host vars to override vars...
...for applied services

refs #12546
2016-09-08 10:45:02 +00:00
Thomas Gelf 8171bb8c04 IcingaHost: add methods dealing with overridden...
...service vars
2016-09-08 09:54:23 +00:00
Thomas Gelf 4cd399e059 IcingaConfigHelper: use string-based sort for...
...dictionary fields to make PHP 5.x and PHP 7.x produce the same output.

refs #12591
2016-09-07 20:44:03 +00:00
Thomas Gelf e58a70613c IcingaConfig: do not render v2-related helpers...
...for legacy config
2016-09-05 19:34:14 +00:00
Thomas Gelf 687f2aff1c Settings: delete NULL-value settings 2016-09-05 19:16:58 +00:00
Thomas Gelf 0242d8d411 Settings: allow to retrieve stored value 2016-09-05 19:15:12 +00:00
Thomas Gelf 1144b5d55f DirectorObjectForm: fix legacy range field 2016-09-05 18:52:22 +00:00
Thomas Gelf 83031c1349 Cli\ObjectCommand: allow multiple objects...
...as a parameter for clone and delete
2016-09-05 18:37:00 +00:00
Thomas Gelf 138f5d2aed Cli\Command: allow other modules to extend this...
...class
2016-09-05 15:55:26 +00:00
Thomas Gelf 029907f01f TimePeriodRange: ranges should be more generic...
...as they will not only be used in timeperiods
2016-08-31 16:23:23 +00:00
Thomas Gelf 6427b22621 IcingaConfigHelper: fix numeric dictionary key...
...rendering and add related tests

fixes #12591
2016-08-30 12:15:48 +00:00
Thomas Gelf 11f41edd13 PropertyModifierJoin: tell about array support
fixes #12236
2016-08-30 07:55:07 +00:00
Thomas Gelf a4813e8046 PropertyModifierHook: allow modifiers to deal...
...with arrays

refs #12236
2016-08-30 07:53:10 +00:00
Thomas Gelf a64e36b111 Settings: remove all legacy getSettings calls 2016-08-30 07:52:48 +00:00
Thomas Gelf 336257680c Settings: remove settings logic from DB...
...and keep helper method for easy instantiation
2016-08-27 13:20:03 +00:00
Thomas Gelf 58441b88ad IcingaService: use string helper for assignments 2016-08-27 08:46:46 +00:00
Thomas Gelf 77c915c897 DirectorObjectForm: normalize command field values...
...with special data types even when filled at services level

fixes #12400
fixes #11692
fixes #11477
2016-08-26 13:48:44 +00:00
Thomas Gelf 5355558519 DirectorObjectForm: place failed command fields...
...into the correct display group
2016-08-26 13:34:57 +00:00
Thomas Gelf b6d59b9aca IcingaCommand: fix skip_key handling
refs #11554
refs #11918
2016-08-26 07:00:45 +00:00
Thomas Gelf 9750d4f637 IcingaConfigHelper: do not quote safe keys
Why? It looks better. Sex sells, you know. And Rune asked for it.
Additionally, we now write empty dictionaries on a single line

fixes #12447
2016-08-25 20:44:43 +00:00
Thomas Gelf 601e182b15 IcingaConfigHelper: extend reserved words list 2016-08-25 11:26:14 +00:00
Thomas Gelf 9fb547a849 IcingaCommand/TimePeriod: use internalized templates
Icinga 2.5 moved a few default templates from ITL to the core itself and
deprecated directly setting execute & similar properties. This change will
break config deployment for 2.4.x environments without 'include <itl>', but
this would rarely be the case.

This commit also changed how we work with inherited properties to render the
right object type based on 'execute' if none is set (but got inherited).

fixes #12443
fixes #12543
2016-08-25 10:16:00 +00:00
Thomas Gelf b8b047a1e4 ImportSourceCoreApi: allow to import user groups
fixes #11511
2016-08-24 14:15:40 +00:00
Thomas Gelf 84b035ec24 objects/tree: enable autorefresh...
...and some coding style fixes

fixes #12451
2016-08-23 15:11:42 +00:00
Thomas Gelf 56a7cb285d host/services: show inherited services...
...and magically applied ones
2016-08-23 14:18:54 +00:00
Thomas Gelf 73bdfb3ecd IcingaObjectImports: keep passed objects in set()
This reduces lookups and avoids failures when unstored objects are
involved
2016-08-23 14:08:51 +00:00
Thomas Gelf e639790d52 IcingaObject: improve type detection
fixes #12319
2016-08-09 14:17:57 +00:00
Thomas Gelf 50c67ceda2 Cli\ObjectCommand: fix type lookup for groups
fixes #12319
2016-08-05 14:44:57 +00:00
Thomas Gelf 89d8536a92 IconHelper: start to separate concerns in forms
One new small helper class for this purpose
2016-08-05 12:49:11 +00:00
Thomas Gelf 14b5e74bb2 DirectorObjectForm: skip timeperiod range params...
...on redirect after removal. TimeperiodRange::getOnDeleteUrl would
be a better place for this, but I do not like that solution either :p

fixes #12316
2016-08-04 18:29:18 +00:00
Corentin Ardeois 5bdd219533 Allow override of blacklisted properties
It is now a separate class attribute which can be overridden.
2016-08-04 15:07:26 +00:00
Thomas Gelf 54643fe5cd IcingaArguments: fix argment removal for forms
fixes #11536
2016-08-01 11:06:52 +00:00
Thomas Gelf 52e412002f IcingaCommandArgumentForm: store command, not args
refs #11536
2016-08-01 10:45:47 +00:00
Thomas Gelf 6258230fdb IcingaArguments: test and fix modification tracking
This fixes related behaviour when working on CLI, API or through
Sync Rules - but not web forms

refs #12266
2016-08-01 09:31:10 +00:00
Thomas Gelf 4c978db3d0 IcingaConfig: allow to toggle legacy renderer
refs #12264
2016-08-01 06:59:31 +00:00
Thomas Gelf 7655ad451a ConfigDiff: more context, fix diff with empty
fixes #12262
fixes #12263
2016-08-01 06:49:39 +00:00
Thomas Gelf ce1c6f3099 Objects: simplify default rendering zone handling
For existing installations this should only affect Timeperiods, as
they will now prefer the global zone. Also some custom zone settings
might now take effect while they have formerly been ignored.

fixes #12252
2016-07-28 15:44:42 +00:00
Thomas Gelf 0d36d56cbb JsonDecode: provide a new property modifier
fixes #12251
2016-07-28 14:56:16 +00:00
Thomas Gelf 2bf5bdddb5 IcingaObject, imports: more legacy config support 2016-07-28 06:57:27 +00:00
Thomas Gelf 85b14c9961 IcingaLegacyConfigHelper: add new helper class 2016-07-27 10:21:38 +00:00
Markus Frosch 73b1863e1a SyncRule: Allow disabling purge 2016-07-26 14:03:52 +02:00
Thomas Gelf 193e860beb Db\Migration: use query for OPTIMIZE, not exec
This is required as OPTIMIZE returns data
2016-07-26 13:43:18 +02:00
Thomas Gelf f6c1a9f0f7 CoreApi: shorten startup log
Everything more than 60k is absolutely insane

fixes #12231
2016-07-26 13:14:14 +02:00
Thomas Gelf 439757d464 IcingaHost: introduce API keys 2016-07-26 09:52:55 +02:00
Thomas Gelf 398312a0e4 IcingaConfig: accept legacy config objects/files 2016-07-22 18:15:22 +02:00
Thomas Gelf 4e083d7d40 CustomVariables: use array notation for keys...
...with special characters
2016-07-22 18:09:02 +02:00
Thomas Gelf fffa6a5f3b CLI: add clone functionality
fixes #12203
2016-07-22 02:14:11 +02:00
Thomas Gelf 9c9516834c PropertyModifierSplit: allow null when empty
fixes #12060
2016-07-21 23:39:33 +02:00
Thomas Gelf 1555d049f2 DirectorDeploymentLog: use predefined aliases...
...to avoid problems with too much intelligence in deeper db
abstraction layers
2016-07-21 13:12:45 +02:00
Thomas Gelf c2f3609cc6 DirectorObjectForm: provide event command for...
...hosts and services

fixes #12117
fixes #12126
2016-07-20 17:53:19 +02:00
Thomas Gelf 9a6320c2f4 ImportSource: use target_property for transforms 2016-07-20 15:21:07 +02:00
Thomas Gelf f12e4b2033 ImportSource: provide applyModifiers helper method 2016-07-20 14:25:18 +02:00
Thomas Gelf 29564ab742 ImportSource: take over duplicated transform logic 2016-07-20 14:19:20 +02:00
Thomas Gelf eca707bb9d SyncUtils: use missing exception class 2016-07-20 13:44:01 +02:00
Thomas Gelf d90bb05ca2 ImportRowModifier: provide target_property...
...also adjust the related form

refs #11949
2016-07-20 13:41:16 +02:00
Thomas Gelf 38bf19eb92 ImportSource: take over modifier loading logic 2016-07-20 13:40:43 +02:00
Thomas Gelf 225e9beec6 ImportRowModifier: reduce instantiated objects 2016-07-20 12:59:02 +02:00
Thomas Gelf 2ff722e4d2 PropertyModifierMakeBoolean: new property modifier
fixes #12184
2016-07-20 12:28:40 +02:00
Thomas Gelf e58c31ab63 ImportRunBasedPurgeStrategy: do not fetch no rows 2016-07-19 06:18:52 +02:00
Thomas Gelf 15acbb5290 IcingaObject::replaceWith: implement preserve...
...and add related tests, as this is a tricky one
2016-07-14 17:06:48 +02:00
Thomas Gelf 56257c1c0f Sync: implement purge with nested keys 2016-07-14 12:18:57 +02:00
Thomas Gelf 354392d216 ImportRun: allow to fetch specific keys 2016-07-13 21:37:31 +02:00
Thomas Gelf 34e57d5160 ImportRunBasedPurgeStrategy: use source key pattern
fixes #12059
2016-07-13 21:10:37 +02:00
Thomas Gelf 70c4d06a42 Sync: move key-related logic to SyncRule 2016-07-13 19:59:04 +02:00
Thomas Gelf 465740c37c Sync: move helper methods to SyncUtils 2016-07-13 13:52:15 +02:00
Thomas Gelf d4a680a6b9 ImportRun: take over specific logic from Db 2016-07-13 10:19:03 +02:00
Markus Frosch f863a9b223 WIP: Add templates tab for all objects
Exceptions are global types, and those who can't import.
2016-07-07 09:05:33 +02:00
Markus Frosch c73be6b976 QuickTable: Ignore _dev parameter for the filter 2016-07-07 08:57:45 +02:00
Thomas Gelf cf424aa8ba IcingaConfig: workaround for GC issues...
...affecting RHEL/CentOS 7

fixes #12063
2016-06-30 12:17:32 +02:00
Thomas Gelf 6178ca8320 DbObject: allow to clear all caches 2016-06-30 12:07:33 +02:00
Thomas Gelf 172bdd6f6b IcingaConfig: provide helper method for activity...
...related configs, use in deployment job
2016-06-30 10:57:35 +02:00
Thomas Gelf f288ddaf95 CustomVariables: allow to instantiate from cache 2016-06-30 10:42:52 +02:00
Thomas Gelf b09c4f8ef0 Db/Cache: first step to externalize lookup caches 2016-06-30 10:34:34 +02:00
Thomas Gelf 1f5f34cea5 IcingaObjectGroups,Imports: add some manual GC...
...to work around PHP issues
2016-06-30 09:34:27 +02:00
Thomas Gelf 5cc28ac4a6 Db: improve master zone detection
This also speeds up config generation
2016-06-29 20:59:37 +02:00
Thomas Gelf 4494af559f JobRunner: fork jobs 2016-06-28 14:34:42 +02:00
Thomas Gelf 5dc641035d ConfigJob: small improvements 2016-06-28 14:07:25 +02:00
Thomas Gelf 59e88ab32a IcingaConfig: let single queries fail...
...and do not use transactions
2016-06-28 14:01:43 +02:00
Thomas Gelf 7cf1af15cb Import/Sync: cleanly rollback transactions
Helps to avoid side-effects
2016-06-28 12:56:53 +02:00
Thomas Gelf 62e6c6e1a1 Various: fix typos
thanks twidhalm!
2016-06-28 12:27:33 +02:00
Thomas Gelf 9210441178 DirectorActivityLog: fix loadLatest() 2016-06-28 12:11:13 +02:00
Thomas Gelf 820d6ce197 ImportSource: fix hasChanges variable 2016-06-28 10:10:15 +02:00
Thomas Gelf 7908d69349 ProvidedHook/Monitoring: make actions failsafe 2016-06-28 09:40:25 +02:00
Thomas Gelf f7ddbaf2d7 host/agent: provide download for Windows Agent 2016-06-28 01:55:43 +02:00
Thomas Gelf 5e2de81767 DirectorObjectForm: prefer sent over inherited 2016-06-27 23:04:02 +02:00
Thomas Gelf 47b9da3be0 ImportJob: remove import-source related logic 2016-06-26 16:56:56 +02:00
Thomas Gelf c6c3543e5a IcingaConfig: use local variable for overrides 2016-06-26 16:45:25 +02:00
Thomas Gelf 38fec2c3d5 ImportSource: set last_attempt on every attempt 2016-06-26 16:00:43 +02:00
Thomas Gelf 4c70a61060 ListController: get rid of global import history 2016-06-26 15:48:39 +02:00
Thomas Gelf 3b4b85374d QuickForm: fully respect false submit label 2016-06-26 14:02:21 +02:00
Thomas Gelf 5b509a1b7c Sync: make new purge strategies the new default 2016-06-26 14:00:37 +02:00
Thomas Gelf 15d61ca1de PurgeStrategy: declare acstract method visibilty 2016-06-26 13:48:57 +02:00
Thomas Gelf 97e52b231d ImportsourceController: fix redirect after delete 2016-06-25 23:39:28 +02:00
Thomas Gelf afaaf5760d SyncRule: proxy expected modifications 2016-06-25 23:02:36 +02:00
Thomas Gelf 9387b92da1 SyncRule: introduce purge strategies 2016-06-24 17:07:00 +02:00
Thomas Gelf 39cf0a5fb8 ImportSource: there is no end_time in ImportRun 2016-06-24 17:01:47 +02:00
Thomas Gelf 20197e1c9c ImportRun: fix prepared query 2016-06-24 17:00:44 +02:00
Thomas Gelf 57c760bca9 ImportSource: add helper methods able to fetch...
...the latest run or the latest run before a specific timestamp as an object
2016-06-24 11:48:54 +02:00
Thomas Gelf 9ae70a4377 ImportRun: provide historic run as a standalone...
...object
2016-06-24 11:47:45 +02:00
Thomas Gelf a9b7861473 SyncRule: provide current runId 2016-06-24 08:36:12 +02:00
Thomas Gelf 516c519af9 SyncRule: add various helper methods 2016-06-23 23:14:12 +02:00
Thomas Gelf 676b5b5efe SyncRule: fix misleading error when running...
...as a Job
2016-06-23 22:36:38 +02:00
Thomas Gelf c9ef9fe91a IcingaCommand: fix EventCommand header
fixes #12010
2016-06-22 23:58:09 +02:00
Thomas Gelf 7438b07c91 DirectorObjectForm: remove superfluous outdated...
...imported objects refresh
2016-06-17 20:42:12 +02:00
Thomas Gelf 93e4cc9b5b IcingaConfig: allow to override vars for dynamic...
...host-crafted services
2016-06-17 20:06:58 +02:00
Thomas Gelf 8ac5d954e9 DirectorJob: fix timeperiod handling 2016-06-17 14:23:03 +02:00
Thomas Gelf df631f506e JobHook: pass args, not argument count 2016-06-17 14:06:17 +02:00
Thomas Gelf 966afa3154 JobHook: next attempt to get callbacks right :-/ 2016-06-17 14:03:17 +02:00
Thomas Gelf 80c8d6a467 JobHook: define static callable as string 2016-06-17 13:58:12 +02:00
Thomas Gelf 804a2a7fcc JobHook: fix typo 2016-06-17 13:52:23 +02:00
Thomas Gelf 83879b5d53 JobRunner, JobHook: improve logging 2016-06-17 13:48:35 +02:00
Thomas Gelf 6665d6d80f ConfigJob: fix dealing with currently active config 2016-06-17 13:20:15 +02:00
Thomas Gelf a761bb108b IcingaService: render dedicated host before imports
This fixes issues with object and apply types showing different
behaviour in Icinga 2 when inheriting the very same template.
2016-06-17 11:55:48 +02:00
Thomas Gelf dc3a2ca999 IcingaObject: split object property rendering
Improves readability
2016-06-17 11:44:38 +02:00
Thomas Gelf 35d4a08632 DirectorObjectForm: add extra properties
fixes #11579
2016-06-17 09:38:48 +02:00
Thomas Gelf 5c0ea2c3b0 IcingaObject: be strict on relations 2016-06-16 22:16:55 +02:00
Thomas Gelf 57656f8dd9 IcingaObject: externalize imported object loading 2016-06-16 21:40:22 +02:00
Thomas Gelf d042f8d599 IcingaObjectImports: fix adding objects 2016-06-16 21:20:11 +02:00
Thomas Gelf 271dc6add5 DirectorObjectForm: addd brackets to be on the...
...safe side for all PHP versions
2016-06-16 17:00:09 +02:00
Thomas Gelf a07983abd9 ConfigJob: use helper method 2016-06-16 16:16:28 +02:00
Thomas Gelf 558128e36e IcingaConfig: fix typo 2016-06-16 16:04:05 +02:00
Thomas Gelf bafc53e7a2 ConfigJob: add configForLatestActivityExists() 2016-06-16 16:02:28 +02:00
Thomas Gelf 734c7c7b02 IcingaConfig: add static exists() helper 2016-06-16 15:48:54 +02:00
Thomas Gelf cf88f110e0 ConfigJob: fix no $api available 2016-06-16 15:34:14 +02:00
Thomas Gelf 862ffee616 ConfigJob: fix missing variable 2016-06-16 15:27:14 +02:00
Thomas Gelf c645660ecd ConfigJob: fix syntax error 2016-06-16 14:52:50 +02:00
Thomas Gelf 2f148a677d JobRunner: run job only when required 2016-06-16 14:30:34 +02:00
Thomas Gelf 53872a4e76 DirectorJob: really run jobs 2016-06-16 14:25:35 +02:00
Thomas Gelf 2d8d7af051 ConfigJob: logic fixes, code cleanup 2016-06-16 14:22:54 +02:00
Thomas Gelf 3ad56d3a98 DirectorDeploymentLog: allow to fetch config...
...checksum for a specific stage name. Implemented getConfigChecksumForStageName
for this.
2016-06-16 14:19:45 +02:00
Thomas Gelf 144b20afc8 DirectorObjectForm: getSentOrObjectValue should...
...not fail on missing elements
2016-06-16 14:17:40 +02:00
Thomas Gelf 6254a0de3a ActionController: remove render() call 2016-06-16 14:14:38 +02:00
Thomas Gelf df58ea0e69 IcingaConfig: add magic apply for rule
Hint: this is highly experimental, currently hidden and has no influence
on existing configs
2016-06-15 16:55:19 +02:00
Thomas Gelf 2eeafbb5d1 IcingaNotification: it's "interval"...
...db field is notification_interval as we avoid reserved wowrds in our schema

fixes #11938
2016-06-15 08:53:04 +02:00
Thomas Gelf 12764c8482 Web/Controller: replace this->render() 2016-06-13 20:06:58 +02:00
Thomas Gelf 1370ec7312 IcingaNotification: use ConfigurationError 2016-06-13 17:42:02 +02:00
Thomas Gelf b83bfed186 IcingaObject: fix comments for disabled object...
...and switch to multiline comments, they look better in our diffs

fixes #11937
2016-06-13 17:20:44 +02:00
Thomas Gelf e3c08c242b IcingaTemplateResolver: initial import
Should help to accomplish various template resolving tasks
2016-06-12 11:19:06 +02:00
Thomas Gelf 04a9a12d84 ExtensibleSet: fix phpcs complaint 2016-06-12 11:14:12 +02:00
Thomas Gelf 78c984068a ObjectController: remove last traces of isDisabled 2016-06-12 11:05:16 +02:00
Thomas Gelf bbdf981b99 IcingaNotification: render "to" after object name
fixes #11924
2016-06-10 12:43:58 +02:00
Thomas Gelf 3b8b41c3f6 IcingaCommand: allow lowercase drives (e.g. c:)
fixes #11906
2016-06-11 00:41:35 +02:00
Thomas Gelf 0b92ca922f IcingaObject: render disabled objects as comments
fixes #11922
2016-06-11 00:30:28 +02:00
Thomas Gelf cc9f5037f4 IcingaNotificationForm: enforce & render apply to
fixes #11895
2016-06-09 23:49:02 +02:00
Thomas Gelf 85cda6da9b IcingaConfig: deploy notifications 2016-06-03 15:24:17 +02:00
Thomas Gelf 383888cc53 ImportJob: fix indentation 2016-05-27 13:21:19 +02:00
Thomas Gelf 7dfadf1951 IcingaHost: fix parent zone for agent zone in a...
...satellite zone
2016-05-26 01:36:20 +02:00
Thomas Gelf cb825b5b94 IcingaObject: fix resolveProperty in combination...
...with lazy-set properties
2016-05-26 01:35:12 +02:00
Thomas Gelf 757de240ed CustomVariables: sort variables when rendering
Order was formerly database-dependent
2016-05-25 15:29:39 +02:00
Thomas Gelf baf6d8f62f DirectorObjectForm: hardcode boolean handling 2016-05-25 15:25:21 +02:00
Thomas Gelf 984f28bfdc DirectorActivityLog: allow to loadLatest() 2016-05-25 15:23:57 +02:00
Thomas Gelf e79e123e19 DirectorDeploymentLog: add helper methods...
...dealing with related configs
2016-05-25 15:04:00 +02:00
Thomas Gelf fa978902c7 DirectorJob: add run helper, support timeperiods 2016-05-25 12:28:07 +02:00
Thomas Gelf c3889ee5d8 IcingaConfigFile: count apply objects...
...still no statistics persistence to db
2016-05-25 12:28:07 +02:00
Thomas Gelf c205d9f80d IcingaConfig: allow to loadByActivityChecksum 2016-05-25 12:28:07 +02:00
Thomas Gelf f32d5a646b JobHook: add new helper methods, accept Definition 2016-05-25 12:28:07 +02:00
Thomas Gelf c6eab9c75f JobRunner: adjust method signatures 2016-05-25 12:28:07 +02:00
Thomas Gelf fe8c4bc6a3 SyncJob: improve job execution 2016-05-25 12:28:07 +02:00
Thomas Gelf 8ebf04da1e ImportJob: complete form and job execution 2016-05-25 12:28:07 +02:00
Thomas Gelf e4784880de Db: just a space 2016-05-25 12:28:07 +02:00
Thomas Gelf d6b4d6f31c JobHook: do not require isPending 2016-05-25 12:28:07 +02:00
Thomas Gelf a279ef1b56 ConfigJob: add quite some logic, rework form 2016-05-25 12:28:07 +02:00
Markus Frosch 44ea86cca5 Import: Do not run modifiers on unset properties 2016-05-25 11:25:09 +02:00
Thomas Gelf a17e0eeb23 DbObject: reset modified properties when loaded 2016-05-25 08:16:41 +02:00
Thomas Gelf 1ee81fe498 DataTypeList: retrieve settings in a failsafe way 2016-05-25 08:15:21 +02:00
Thomas Gelf 7fea8c4787 DataTypeNumber: filter and validate numbers 2016-05-25 08:14:39 +02:00
Thomas Gelf d1af897114 ObjectController: allow for graceful tabs 2016-05-25 08:12:42 +02:00
Thomas Gelf d01194a7b4 QuickForm: optimize runtime order 2016-05-24 20:25:16 +02:00
Thomas Gelf 0ce8a29b52 Boolean: form sends '' for null value 2016-05-24 19:59:02 +02:00
Thomas Gelf 44e2c73f79 IcingaNotification: add apply_to column 2016-05-24 17:42:17 +02:00
Markus Frosch b2b2140dcf Db: Add enumCommandTemplates
Needed by Sync
2016-05-24 17:21:57 +02:00
Markus Frosch 5048c63e64 PropertyModifierReplace: Use getSetting to access settings 2016-05-24 16:40:08 +02:00
Markus Frosch ae36898ca0 PropertyModifierReplace: Allow the replacement string to be empty 2016-05-24 16:36:38 +02:00
Thomas Gelf d5b3f25de9 Db: quote data before passing to pgsql 2016-05-23 15:40:12 +02:00
Thomas Gelf d435ca37f7 IcingaNotificationForm: fix timeperiod loading
fixes #11576
2016-05-23 13:00:32 +02:00
Thomas Gelf 4291f6425e IcingaService: fake isApplyRule for host templates 2016-05-20 15:21:29 +02:00
Thomas Gelf 8c54dcab81 AssignRenderer: support FilterMatchNot 2016-05-20 10:56:58 +02:00
Thomas Gelf dca6cc8a01 ExtensibleSet: respect strings when filtering 2016-05-20 10:46:01 +02:00
Thomas Gelf eb52918711 ExtensibleSet: do not array-filter when null 2016-05-20 10:40:58 +02:00
Thomas Gelf b3a1d54870 IcingaObject: fix c&p error, variable name 2016-05-20 09:23:48 +02:00
Thomas Gelf 9eb9d65bef IcingaHost: pass Config to zone lookup 2016-05-20 08:51:57 +02:00
Thomas Gelf 1c79807500 IcingaObjectGroups: keep id when cloning groups
Before this fix we lost autoincrement ids on clone, resulting in
ill-constructed queries on deletion

fixes #11508
2016-05-20 08:47:07 +02:00
Thomas Gelf 5952de5841 DirectorObjectForm: make use of element filters 2016-05-20 08:37:46 +02:00
Thomas Gelf 0a475e3bcb DirectorObjectForm: remove imports exception...
...this is already handled by the object itself
2016-05-20 08:37:02 +02:00
Thomas Gelf 018713a13f IcingaObject: smaller methods for import resolvers 2016-05-20 08:36:07 +02:00
Thomas Gelf df2a5899f6 ExtensibleSet: remove empty strings at filter time 2016-05-20 08:13:13 +02:00
Thomas Gelf 64fbdcfeee IcingaObjectImports: fix null handling 2016-05-20 08:12:46 +02:00
Thomas Gelf 88c28db54f ObjectController: fix typo avoiding rendering...
...of disabled objects
2016-05-19 22:11:09 +02:00
Thomas Gelf 7622200f2e Element/Boolean: ignore PHPCS violation as of ZF1 2016-05-19 20:54:18 +02:00
Thomas Gelf 9b731641c4 IcingaCommand: correctly render notification cmds 2016-05-19 17:04:28 +02:00
Markus Frosch 839527a2e1 IcingaObjectImports: set modified on clear
Imports could not have been set empty because of this
2016-05-19 16:34:07 +02:00
Thomas Gelf 480e80709a IcingaService: simplify command endpoint rendering
host.name doesn't work as of #11786. host_name should be fine for
templates, objects and apply rules. I therefore also dropped the
exception for service objects with use_agent and host_id.
2016-05-19 16:06:06 +02:00
Thomas Gelf 5f1a21e1f0 ActivityLogTable: override render to get rid of...
...initial tbody. Ugly.
2016-05-19 15:23:49 +02:00
Thomas Gelf cea75ead0e SyncJob: really run, add check for changes 2016-05-19 15:09:45 +02:00
Thomas Gelf 2007dee6c0 IcingaCommandArgument: add replaceWith method 2016-05-19 15:09:08 +02:00
Thomas Gelf 8a6f7c0e38 ExtensibleSet: remove empty components
fixes #11360
2016-05-19 15:02:30 +02:00
Thomas Gelf 06f862618e ValueFilter: add a few custom filters 2016-05-19 15:00:34 +02:00
Thomas Gelf 41731241c5 DataTypeBoolean: provide a new data type
fixes #11594
2016-05-19 14:59:25 +02:00
Thomas Gelf da5ee55abf ViewHelperRaw: add new form decorator showing...
...raw, unfiltered values
2016-05-19 14:53:41 +02:00
Thomas Gelf e3852fecce PropertyModifierBitmask: new bitmask modifier 2016-05-18 22:01:55 +02:00
Thomas Gelf dee5c422f2 Import: pass through integer and float types 2016-05-18 21:52:22 +02:00
Thomas Gelf 382e615f02 KickstartHelper: allow to modify existing objects 2016-05-18 21:25:57 +02:00
Thomas Gelf 2ae326ab8c IcingaTimePeriod: add and test isActive() method 2016-05-18 21:21:53 +02:00
Thomas Gelf c65c8a72c7 ConfigJob: replace housekeeping-related code 2016-05-17 16:05:00 +02:00
Thomas Gelf deea18f8df Import: keep boolean values 2016-05-17 15:46:20 +02:00
Thomas Gelf 4222261434 IcingaCommand: fix windows absolute path detection
Also add a couple of new related tests

fixes #11550
2016-05-13 16:01:47 +02:00
Thomas Gelf ac640fd113 IcingaConfig: do not benchmark no objects of type 2016-05-13 14:20:31 +02:00
Thomas Gelf 728c0745ae DirectorObjectForm: provide setSentValue helper 2016-05-13 14:13:48 +02:00
Thomas Gelf 4388d2659c IcingaConfig: delegate config generation to object 2016-05-13 13:58:12 +02:00
Thomas Gelf bea8988df1 IcingaService: fix and simplify command_endpoint 2016-05-10 21:13:07 +02:00
Thomas Gelf 576d62da26 IcingaObject: use resolved zone for apply/tpl 2016-05-10 20:23:45 +02:00
Thomas Gelf 24b201db13 Object/CommandController: unify titles 2016-05-03 09:09:01 +02:00
Thomas Gelf 3d03baff38 Object/HostController: delegate preview rendering 2016-05-03 09:07:28 +02:00
Thomas Gelf d84369ce77 IcingaArgument: enforce command object id on set 2016-05-02 11:10:47 +02:00
Thomas Gelf d5e021658c Db: provide enumDeployedConfigs 2016-05-02 10:45:04 +02:00
Thomas Gelf 2209607016 ImportSource: set a default state, according to db 2016-05-02 10:44:12 +02:00
Thomas Gelf f7bd50838d Objects: delegate rendering zone for groups, users 2016-05-02 10:26:41 +02:00
Thomas Gelf 6708df8a61 DbObject: allow to statically clearPrefetchCache 2016-05-02 10:24:32 +02:00
Thomas Gelf 1158409eeb IcingaObject: fix rendering target and tests 2016-05-02 10:23:32 +02:00
Thomas Gelf bd937e57c5 IcingaZone: delegate rendering responsibility 2016-05-02 10:22:22 +02:00
Thomas Gelf b6b15ce7e3 IcingaCommand: prefer to be rendered to global 2016-04-23 14:08:25 +02:00
Thomas Gelf 7118545c98 IcingaConfig: make zone lookup and file public 2016-04-22 18:15:33 +02:00
Thomas Gelf a8904758f3 ImportSource: refresh, provide helpers 2016-04-22 15:31:02 +02:00
Thomas Gelf d0e1ecb8d7 Sync: deletions are also modifications 2016-04-22 14:47:49 +02:00
Thomas Gelf cf1e5d88a8 DirectorJob: fix settings, add state helpers 2016-04-22 14:30:52 +02:00
Thomas Gelf 4e0f1da65d SyncJob: provide job configuration 2016-04-22 14:30:01 +02:00
Thomas Gelf e88d490021 SyncRule: add helper allowing to apply changes 2016-04-22 13:40:05 +02:00
Thomas Gelf 4cc70311f2 JobHook: add getSuggestedRunInterval() 2016-04-22 13:38:36 +02:00
Thomas Gelf 7265a5796b SyncRule: add checkForChanges helper 2016-04-22 12:10:48 +02:00
Thomas Gelf f5f4bb1dfa Housekeeping: semicolon 2016-04-22 11:29:09 +02:00
Thomas Gelf 51ebf79632 JobRunner: fix PHP errors 2016-04-22 11:28:51 +02:00
Thomas Gelf c92d1caeb4 SyncRule: adjust to fit latest schema changes 2016-04-22 11:12:29 +02:00
Thomas Gelf 68d7f9098c HousekeepingJob: add description 2016-04-22 11:12:29 +02:00
Thomas Gelf ee041b5aac DirectorJob: add job object 2016-04-22 11:12:29 +02:00
Thomas Gelf bd553e65ec Job: add and register a few more jobs 2016-04-22 11:12:29 +02:00
Thomas Gelf 7efbbe5bd1 JobHook: require a description 2016-04-22 11:12:29 +02:00
Thomas Gelf 71b7a5b430 HousekeepingJob: fix file name 2016-04-22 11:12:29 +02:00
Thomas Gelf d292def6e7 HousekeepingJob: provide first simple job 2016-04-22 11:12:29 +02:00
Thomas Gelf 36fa4f48a0 JobHook: provide Db 2016-04-22 11:12:29 +02:00
Thomas Gelf cf1093ef54 JobHook: provide a new hook for hookable jobs 2016-04-22 11:12:29 +02:00
Thomas Gelf 9c283e8bb6 Housekeeping: add getPendingTasks helper method 2016-04-22 11:12:29 +02:00
Thomas Gelf 8c02b1e6c5 IcingaObject: fix multi-relation rendering order 2016-04-22 11:12:29 +02:00
Thomas Gelf de544110b2 Sync: redirect to history on sync run 2016-04-22 11:12:29 +02:00
Thomas Gelf eb25898a63 IcingaHost: make render target checks green 2016-04-20 10:27:32 +02:00
Thomas Gelf d3b5504e47 IcingaArguments: remove forgotten var_dump 2016-04-20 10:21:16 +02:00
Thomas Gelf f8ef034358 IcingaObject: add render target helpers 2016-04-19 21:29:03 +02:00
Thomas Gelf c879cd1e5e DbObject: compare numbers as string 2016-04-18 15:20:41 +02:00
Thomas Gelf e040e84e5b IcingaObject: add isDisabled helper method 2016-04-18 13:17:47 +02:00
Thomas Gelf 46e230c5ad IcingaObject: fix occasional error when showing...
...resolved properties for applied objects
2016-04-11 11:06:54 +02:00
Thomas Gelf 3e52585538 IcingaObjectAssignment: render numbers as numbers 2016-04-06 12:11:55 +02:00
Thomas Gelf f7f73402d4 IcingaObjectAssignments: persist 'ignore' rules 2016-04-06 11:39:12 +02:00
Thomas Gelf 32009ce458 DirectorObjectForm: require imports for all...
...non-template objects
2016-04-03 21:32:49 +02:00
Thomas Gelf 36c4e51aa0 IcingaObject: fix argument retrieval 2016-04-03 21:27:49 +02:00
Thomas Gelf 5854e56419 IcingaArguments: avoid false-positives when...
...detecting modification
2016-04-02 20:21:06 +02:00
Thomas Gelf 9d4ee40575 IcingaObjects: add missing relations 2016-04-01 17:23:23 +02:00
Thomas Gelf 65b048d78b IcingaCommand: allow underscore in constant names 2016-04-01 14:08:27 +02:00
Thomas Gelf 03d739170c IcingaCommand: zone is a relation 2016-04-01 14:08:11 +02:00
Thomas Gelf dc7f9ac039 CoreApi: add getActiveChecksum helper method 2016-03-31 19:24:28 +02:00
Thomas Gelf 9ae6f5539a KickstartHelper: get has no default value support 2016-03-31 18:17:42 +02:00
Thomas Gelf e4b609c647 DirectorObjectForm: allow missing elements...
...when defining display groups, but only specific ones. I still want
to see exceptions for all the others
2016-03-30 19:51:29 +02:00
Thomas Gelf 8cfdbbfb1e IcingaHost: improve and extend enumProperties 2016-03-30 19:21:47 +02:00
Thomas Gelf d6be2e777c DirectorObjectForm: add max_check_attempts 2016-03-30 19:19:00 +02:00
Thomas Gelf 078e46df60 ServiceController: beforeHandlingAddRequest hook 2016-03-29 19:32:50 +02:00
Thomas Gelf c1185106fa ObjectController: failsafe api access 2016-03-29 19:27:54 +02:00
Thomas Gelf f25b47e1bc DirectorObjectForm: fix exception on no data 2016-03-29 18:50:52 +02:00
Thomas Gelf 9f5f955310 IcingaCommandArgument: use resolveIds as a hack 2016-03-28 23:50:15 +02:00
Thomas Gelf 2dd0f37192 IcingaArguments: fix removal, modification 2016-03-28 23:49:04 +02:00
Thomas Gelf 9e91285136 IcingaCommandArgument: fix booleans 2016-03-28 23:48:19 +02:00
Thomas Gelf f2dc9c59e5 DirectorObjectForm: provide check_period element 2016-03-27 23:58:44 +02:00
Thomas Gelf bc6bac9a62 ImportSourceCoreApi: add hostgroup support
refs #11451
2016-03-27 16:58:04 +02:00
Thomas Gelf fd1bc38609 DirectorObjectForm: blacklist ids not names...
...when fetching allowed templates
2016-03-27 12:55:05 +02:00
Thomas Gelf dc43a40b41 ObjectController: use setViewScript, not render 2016-03-26 16:45:06 +01:00
Thomas Gelf aee65a706a QuickSubForm: one more forgotten file 2016-03-26 16:21:23 +01:00
Thomas Gelf d2eed4fff3 Db: listExternal should not fail with no data
refs #11448
2016-03-25 14:09:31 +01:00
Thomas Gelf ae08fb47c0 KickstartHelper: remove superfluos recursion
fixes: #11411
2016-03-24 14:09:14 +01:00
Thomas Gelf 9cf3569884 IcingaObject: unresolved properties 2016-03-24 13:37:32 +01:00
Thomas Gelf 1e1cc74b31 IcingaArguments: correctly resolve them 2016-03-24 13:35:31 +01:00
Thomas Gelf 3c95fd7ec8 DbObject: NOTE -> recheck this 2016-03-24 13:32:11 +01:00
Thomas Gelf 349954e1c3 IcingaObjectAssignments: show type on error 2016-03-24 13:24:52 +01:00
Thomas Gelf d1aafd7a4a Db: do nothing on no setting change 2016-03-24 13:23:41 +01:00
Thomas Gelf ec97306e66 DirectorObjectForm: handle data from/for assigns 2016-03-24 11:42:58 +01:00
Thomas Gelf 98a5be4e68 IcingaObjectAssignments: play nice with forms 2016-03-24 11:41:37 +01:00
Thomas Gelf a8ec07237d IcingaObject: provide former assignments for...
...the activity log
2016-03-24 11:40:32 +01:00
Thomas Gelf e1acf37ac4 QuickTable: more access, give varname more sense 2016-03-24 10:50:06 +01:00
Thomas Gelf f8d6af7b3f IcingaObject: make assignments public 2016-03-24 06:49:19 +01:00
Thomas Gelf 33ff0c77e8 IcingaObjectAssignments: complete re-write 2016-03-24 06:46:13 +01:00
Thomas Gelf fad2e83b48 AssignRenderer: allow rule type as string param 2016-03-24 05:35:45 +01:00