Commit Graph

143 Commits

Author SHA1 Message Date
Thomas Gelf ee0def7d2b Lots of files: make IDE users happy 2016-11-01 18:28:36 +01:00
Thomas Gelf ad7c5bc997 IcingaHost: fix tests 2016-10-25 00:30:12 +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 9ba6116091 IcingaService: support and test speciall object...
...name variants with apply for
2016-10-22 06:54:53 +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 cb533f5668 IcingaConfig: deploy service sets 2016-10-12 09:04:08 +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 b8fb0d4267 IcingaConfig: host-generated services should...
...respect new overrides
2016-09-08 13:07:04 +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 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 6427b22621 IcingaConfigHelper: fix numeric dictionary key...
...rendering and add related tests

fixes #12591
2016-08-30 12:15:48 +00:00
Thomas Gelf a64e36b111 Settings: remove all legacy getSettings calls 2016-08-30 07:52:48 +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 4c978db3d0 IcingaConfig: allow to toggle legacy renderer
refs #12264
2016-08-01 06:59:31 +00:00
Thomas Gelf 85b14c9961 IcingaLegacyConfigHelper: add new helper class 2016-07-27 10:21:38 +00:00
Thomas Gelf 398312a0e4 IcingaConfig: accept legacy config objects/files 2016-07-22 18:15:22 +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 172bdd6f6b IcingaConfig: provide helper method for activity...
...related configs, use in deployment job
2016-06-30 10:57:35 +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 f7ddbaf2d7 host/agent: provide download for Windows Agent 2016-06-28 01:55:43 +02:00
Thomas Gelf c6c3543e5a IcingaConfig: use local variable for overrides 2016-06-26 16:45:25 +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 558128e36e IcingaConfig: fix typo 2016-06-16 16:04:05 +02:00
Thomas Gelf 734c7c7b02 IcingaConfig: add static exists() helper 2016-06-16 15:48:54 +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 85cda6da9b IcingaConfig: deploy notifications 2016-06-03 15:24:17 +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 8c54dcab81 AssignRenderer: support FilterMatchNot 2016-05-20 10:56:58 +02:00
Thomas Gelf ac640fd113 IcingaConfig: do not benchmark no objects of type 2016-05-13 14:20:31 +02:00
Thomas Gelf 4388d2659c IcingaConfig: delegate config generation to object 2016-05-13 13:58:12 +02:00
Thomas Gelf 7118545c98 IcingaConfig: make zone lookup and file public 2016-04-22 18:15:33 +02:00
Thomas Gelf fad2e83b48 AssignRenderer: allow rule type as string param 2016-03-24 05:35:45 +01:00
Thomas Gelf 5da36490c8 ExtensibleSet: do not render empty arrays 2016-03-23 02:23:21 +01:00
Thomas Gelf 00b5e7c3f1 IcingaConfig: slightly change benchmarks messages 2016-03-20 01:36:44 +01:00
Thomas Gelf cf534b6aa4 IcingaConfig: load all enabled modules on CLI 2016-03-20 01:36:09 +01:00
Thomas Gelf 3e4d2b8626 IcingaConfig: make a couple of methods public 2016-03-19 22:16:24 +01:00
Thomas Gelf 21e541dbba IcingaConfig: deploy timeperiods
fixes #11418
2016-03-19 14:57:22 +01:00
Thomas Gelf 4e70a4a003 TypeFilterSet: fix flipped flapping states 2016-03-18 19:54:08 +01:00
Thomas Gelf 93eccc52a6 AssignRenderer: make filters look better, fix not 2016-03-16 21:48:53 +01:00
Thomas Gelf fdfedbae04 IcingaConfigHelper: render dictionaries sorted
Adjusted test scenario
2016-03-08 09:24:18 +01:00
Thomas Gelf c4d69e1a88 ExtensibleSet: silently ignore null or empty strings 2016-03-05 17:25:23 +01:00
Thomas Gelf 765ef97c80 IcingaConfig: fix related activity for PostgreSQL 2016-03-02 23:53:19 +01:00
Thomas Gelf dca0ea63af IcingaConfig: check for #655 only on MySQL
PostgreSQL binary checksums are always passed as hex
2016-03-02 21:40:35 +01:00