Commit Graph

424 Commits

Author SHA1 Message Date
Michael Friedrich 78bfd0204c Update copyright year 2015-01-22 12:00:23 +01:00
Michael Friedrich 85af84c9fb Docs: Fix gdb pretty printers
fixes #8048
2014-12-15 11:26:22 +01:00
Gunnar Beutner 74d92b062a Fix debug visualizer for the Value type
fixes #8073
2014-12-12 15:22:37 +01:00
Gunnar Beutner 89a0fc006e Implement a boolean sub-type for the Value class
fixes #8043
2014-12-10 09:05:16 +01:00
Gunnar Beutner 04ca634a16 Fix typeof incorrectly returning null for arrays and dictionaries
fixes #8002
2014-12-08 08:36:03 +01:00
Gunnar Beutner a134882567 Fix unity builds on Windows
fixes #7644
2014-12-04 21:47:53 +01:00
Michael Friedrich c39fdf470f Syntax: Add missing keywords 2014-11-17 09:51:24 +01:00
Gunnar Beutner 5e1099394a Remove the migrate-hosts script
fixes #7398
2014-11-13 11:15:55 +01:00
Gunnar Beutner 65be09215f Avoid unnecessary type lookups
refs #7622
2014-11-10 20:07:07 +01:00
Gunnar Beutner 8bd091fef0 Fix: mkclass crashes when called without arguments
fixes #7617
2014-11-08 13:41:08 +01:00
Gunnar Beutner e1c95d4fa0 Improve config compiler's memory usage 2014-11-08 13:21:51 +01:00
Gunnar Beutner 85a380c443 mkclass: Optimize struct layout
fixes #7615
2014-11-07 23:07:28 +01:00
Gunnar Beutner 266b1754c7 Speed up type lookups
refs #7561
2014-11-07 12:39:32 +01:00
Michael Friedrich 9c60a82c87 Change migrate-hosts to remove repository.d/hosts/fqdn
Create a backup, and drop that later.

refs #7398
2014-11-07 04:13:44 +01:00
Gunnar Beutner 8bbb2bfb7b Fix compiler warnings for the lexers 2014-11-06 06:23:45 +01:00
Michael Friedrich 8c9ba23cdc Docs: Update troubleshooting with gdb debug printer install
refs #7514
2014-11-03 19:36:45 +01:00
Gunnar Beutner 170c5a59e4 Implement typeof() function 2014-11-03 00:45:14 +01:00
Gunnar Beutner 4b89e1b45f Fix error message in migrate-hosts
fixes #7528
2014-10-31 13:47:34 +01:00
Gunnar Beutner 3fc3f05bb4 Implement field attribute to hide fields in command auto-completion
fixes #7403
2014-10-31 08:53:25 +01:00
Gunnar Beutner 9f7c97051e Hide attributes in command auto-completion which cannot be set
refs #7403
2014-10-31 08:49:14 +01:00
Gunnar Beutner 8cf5b33e70 Make the migrate-hosts script work on OS X
refs #7398
2014-10-29 07:43:26 +01:00
Gunnar Beutner 876099fa0a Migrate config files from conf.d/hosts to repository.d/hosts
fixes #7398
2014-10-28 13:16:48 +01:00
Gunnar Beutner 315c84eb4a Fix problems with the serializer when using 'type' as an attribute
fixes #7372
2014-10-25 09:14:56 +02:00
Gunnar Beutner 92896311f3 Implement support for C/C++ comments in the TI compiler
fixes #5018
2014-10-17 19:44:31 +02:00
Gunnar Beutner d7d6d6096f Remove icinga2-enable-feature and icinga2-disable-feature
refs #7250
2014-10-14 18:35:52 +02:00
Michael Friedrich 57d945347f GraphiteWriter: Add support for customized metric prefix names
Allows to use runtime macros and global constants for setting
a custom metric prefix:

    const GraphiteEnv = "icinga.env1"

    object GraphiteWriter "graphite" {
      host_name_template = GraphiteEnv + ".$host.name$"
      service_name_template = GraphiteEnv + ".$host.name$.$service.name$"
    }

fixes #7334
2014-10-11 20:38:24 +02:00
Gunnar Beutner 4dd886ebd5 Build fix for Windows
refs #7033
2014-09-10 15:24:08 +02:00
Gunnar Beutner 06378b4784 Build fix for OS X 2014-09-09 16:43:21 +02:00
Gunnar Beutner 292d9ee740 Implement include guards for mkclass
fixes #7033
2014-09-09 13:30:54 +02:00
Gunnar Beutner 6f2ea6bc08 Fix build problems with Oracle Solaris Studio
refs #6896
2014-09-02 13:09:17 +02:00
Gunnar Beutner c55bd29eda Only build mkunity when unity builds are enabled
refs #7034
2014-09-02 07:45:18 +02:00
Gunnar Beutner 46f26024dc Implement support for excluding files from unity builds
refs #7034
2014-09-01 09:19:21 +02:00
Gunnar Beutner eb091a87b0 Implement support for unity builds
fixes #7034
fixes #7035
2014-08-30 20:02:12 +02:00
Michael Friedrich 7d54ebb6ac Add enable_ha/failover_timeout to vim/nano syntax highlighting
refs #6827
refs #6203
2014-08-28 21:15:57 +02:00
Gunnar Beutner f6a7f84ed5 Revert "Fix external command pipe: Too many open files"
This reverts commit 1a3f7d774c.
2014-08-20 13:32:07 +02:00
Michael Friedrich 1a3f7d774c Fix external command pipe: Too many open files
fixes #6916
2014-08-14 16:15:01 +02:00
Michael Friedrich 5799d86ed7 Documentation: s/enable_flap_detection/enable_flapping/g
fixes #6870
2014-08-07 11:27:50 +02:00
Michael Friedrich 6aec8ba394 Syntax: Add new RunDir constant
refs #6627
2014-08-04 11:25:47 +02:00
Alexander Wirt a51860d2a1 Fix icinga-{en,dis}able-feature text 2014-06-15 22:10:15 +02:00
Michael Friedrich 4e6a8b9161 fix docker script
refs #6481
2014-06-15 11:36:28 +02:00
Michael Friedrich 614af5b0e5 Fix missing install action
refs #6481
2014-06-13 22:04:24 +02:00
Michael Friedrich 51a889d019 Correct wrong file move
refs #6481
2014-06-13 20:35:23 +02:00
Michael Friedrich 4a8f258d52 Move dev/ to tools/docker
refs #6481
2014-06-13 20:07:36 +02:00
Michael Friedrich 571321f386 Move agent files to contrib/ for now
refs #6481
2014-06-13 20:04:00 +02:00
Michael Friedrich a838dad659 RPMs: Do not install the agent parts
refs #6481
2014-06-13 19:55:59 +02:00
Michael Friedrich 64cc43bbb7 Remove empty migration dir, is referenced as separate tool in docs
refs #6481
2014-06-13 19:55:23 +02:00
Carlos Cesario fa515bd5af Syntax Highlighting: Add nano syntax file.
Fixes #6385

Signed-off-by: Michael Friedrich <michael.friedrich@netways.de>
2014-06-04 15:45:03 +02:00
Carlos Cesario ec75e7dcbb Vim syntax: Fix angleBrackets and vars regex.
Fixes #6386

Signed-off-by: Michael Friedrich <michael.friedrich@netways.de>
2014-06-03 17:22:12 +02:00
Carlos Cesario 1b45b814eb Add icinga2 vim syntax file and installation documentation.
Fixes #3199

Signed-off-by: Michael Friedrich <michael.friedrich@netways.de>
2014-06-02 16:29:27 +02:00
Michael Friedrich 7e46926c72 Remove debug output in icinga2-enable-feature.
Fixes #6360
2014-05-30 09:55:23 +02:00
Michael Friedrich 020b4a3615 Fix help text for icinga2-{en,dis}able-feature.
Refs #6315
2014-05-29 15:24:13 +02:00
Gunnar Beutner 59a0ff00a7 Use icinga2-enable-feature's multi-argument functionality in the Debian/RPM packages.
Refs #6315
2014-05-27 07:27:12 +02:00
Carlos Cesario b5681b5e38 Add icinga2-{en,dis}able-feature support to multiple modules.
Fixes #6315

Signed-off-by: Michael Friedrich <michael.friedrich@netways.de>
2014-05-26 20:16:55 +02:00
Gunnar Beutner f85eacb5bf mkclass should return exit code 1 when compilation fails.
Fixes #6292
2014-05-25 16:30:30 +02:00
Gunnar Beutner 632026cd9f Rename C++ header files.
Fixes #6291
2014-05-25 16:27:14 +02:00
Gunnar Beutner fceeeba05e Fix compiler warnings.
Fixes #5823
2014-05-22 10:28:21 +02:00
Gunnar Beutner 12c8814bd8 Fix some more compiler warnings.
Refs #5823
2014-05-11 06:43:01 +02:00
Gunnar Beutner f704468c4b Update scripts.
Refs #6107
2014-05-08 14:06:21 +02:00
Gunnar Beutner 656d6ff13a Update scripts and example config.
Refs #6107
2014-05-08 12:17:21 +02:00
Michael Friedrich f85fae8762 Migration: Remove broken script, update documentation for work-in-progress.
Refs #5821
2014-05-04 22:01:58 +02:00
Gunnar Beutner ad894c367a Stop the Icinga service before uninstalling the files.
Refs #4865
2014-04-20 15:35:51 +02:00
Gunnar Beutner ac54724e30 Update manifest for the agent setup wizard.
Refs #4865
2014-04-18 21:24:37 +02:00
Gunnar Beutner bae12815a5 Another attempt at fixing the VS project file.
Refs #4865
2014-04-18 14:35:32 +02:00
Gunnar Beutner 85667f552c Fix project settings (again).
Refs #4865
2014-04-18 14:11:47 +02:00
Gunnar Beutner 94711bbf73 Fix VS project file.
Refs #4865
2014-04-18 13:49:40 +02:00
Gunnar Beutner 4d711f67b4 Fix the binary path for the agent wizard.
Refs #4865
2014-04-18 13:09:38 +02:00
Gunnar Beutner 342e669175 Fix project type for the Icinga2SetupAgent project.
Refs #4865
2014-04-18 12:46:11 +02:00
Gunnar Beutner e19948fc95 Add agent setup wizard for Windows.
Refs #4865
2014-04-18 12:39:50 +02:00
Gunnar Beutner 31451a2b15 Fix icinga2-list-agents.
Refs #6008
2014-04-15 15:03:30 +02:00
Gunnar Beutner 8d1ffe7aa2 Fix incorrect variable name in the auto-discovery script.
Refs #6008
2014-04-15 14:33:19 +02:00
Gunnar Beutner 060a802d15 Implement support for hosts in the agent component.
Refs #4865
2014-04-15 13:38:01 +02:00
Gunnar Beutner bb02426ce1 Make sure that icinga2-forget-agent removes the .peer file.
Refs #6002
2014-04-13 11:11:55 +02:00
Gunnar Beutner 90d1118cb5 Implement --batch parameter for icinga2-list-agents.
Refs #6002
2014-04-13 11:10:17 +02:00
Gunnar Beutner 95df1c3588 Write peer info to the agent inventory.
Refs #6002
2014-04-13 09:45:14 +02:00
Gunnar Beutner ca4fe71d69 Implement support for auto-discovering services for passive agents.
Fixes #6002
2014-04-13 09:22:27 +02:00
Gunnar Beutner 02c7207d9a Fix commonName check in the auto-discovery script.
Refs #4865
2014-04-12 22:46:56 +02:00
Gunnar Beutner 585d352378 Use sysconfdir for the agent certificate paths.
Refs #4865
2014-04-12 19:42:28 +02:00
Gunnar Beutner a57e3041a5 Add auto-discovery script for the agent.
Refs #4865
2014-04-12 19:34:01 +02:00
Gunnar Beutner 492ec9dba8 Add support for GDB pretty printers in the dev environment.
Refs #5996
2014-04-11 11:42:37 +02:00
Gunnar Beutner 00fd51e628 Implement relative object names.
Fixes #5925
2014-04-05 22:17:37 +02:00
Michael Friedrich c58e226f84 Disable migration script until config changes are done.
Refs #5821
2014-04-03 10:39:35 +02:00
Gunnar Beutner 02fc3278c8 Implement missing operators for the Value class.
Fixes #5804
2014-03-20 13:02:31 +01:00
Michael Friedrich ce737ff2f3 Change copyright header (again).
Fixes #5424
2014-03-19 11:42:47 +01:00
Michael Friedrich 1408c26e5c icinga2-{disable,enable}-feature should check if "ln" worked.
Fixes #5753
2014-03-17 18:44:06 +01:00
Michael Friedrich 3df6ed786f Migration: Change inline dependencies to new 'dependencies' dictionary.
Fixes #4061
2014-03-10 17:44:33 +01:00
Michael Friedrich 555d72150a Update copyright header.
Fixes #5424
2014-01-09 00:32:11 +01:00
Michael Friedrich 9a992c026a Drop 'use feature ...' for el5 perl dependencies.
Refs #5033
2013-12-18 15:29:57 +01:00
Michael Friedrich c5f1c52da0 Migration: Revert dumping custom vars as macros.
Refs #5364
2013-12-18 11:01:59 +01:00
Gunnar Beutner 21fb0d9872 Implement "safe mode" for icinga::Deserialize.
Fixes #5035
2013-12-18 10:27:58 +01:00
Gunnar Beutner d790162ce3 Fix compiler warnings in auto-generated mkclass code.
Refs #5349
2013-12-17 07:52:19 +01:00
Gunnar Beutner e7184225f3 Improve performance for icinga::Deserialize.
Refs #5327
2013-12-13 14:08:11 +01:00
Gunnar Beutner 947b6f3207 Make icinga2-{enable,disable}-feature list currently enabled features.
Fixes #5319
2013-12-12 15:46:17 +01:00
Michael Friedrich 8a5fd83cd3 Update version to 0.0.5.
Refs #5254
2013-12-03 09:50:18 +01:00
Michael Friedrich b67cf1f0cb Fix command name with special chars not being migrated.
Fixes #5234
2013-11-27 15:03:55 +01:00
Michael Friedrich c25a7d580b Migration: Fix timeperiod object name stripping.
Fixes #5230
2013-11-27 13:25:00 +01:00
Gunnar Beutner 2cefcb5bfa Update minimum flex version.
Fixes #5072
2013-11-21 11:22:51 +01:00
Michael Friedrich df42a701d1 Migration: Add -O for objects.cache fallback.
Fixes #5104
2013-11-19 18:08:12 +01:00
Michael Friedrich f30b164692 Migration: Fix duplicate command creation.
Refs #5099
2013-11-19 14:04:03 +01:00
Michael Friedrich 2514064007 Fix parsing of global macros if not defined.
Refs #5099
2013-11-19 14:04:03 +01:00
Michael Friedrich bc4c4098f0 Update migration script README. 2013-11-13 22:09:27 +01:00
Gunnar Beutner d1d3c0e247 Improve VS visualizers.
Refs #5067
2013-11-13 08:42:18 +01:00
Gunnar Beutner b324f59a06 Implement debug visualizers for Visual Studio.
Fixes #5067
2013-11-13 00:32:30 +01:00
Gunnar Beutner 135c2b2309 Fix compiler warnings in auto-generated code.
Refs #5036
2013-11-08 21:45:27 +01:00
Gunnar Beutner ba6f64a0ec Remove GetType().
Refs #5036
2013-11-08 21:37:21 +01:00
Gunnar Beutner a84536bea3 Implement serializer support for arbitrary classes.
Fixes #5024
2013-11-08 14:08:59 +01:00
Michael Friedrich 2d73b6259c Remove autotools leftovers.
Refs #4962
2013-11-08 13:16:51 +01:00
Gunnar Beutner e93d3f4c61 Update gdbinit path.
Refs #2710
2013-11-07 16:07:52 +01:00
Gunnar Beutner e25fe1ecc9 Optimize ObjectImpl<>::GetDefault*().
Refs #2710
2013-11-07 16:07:52 +01:00
Gunnar Beutner b5b56e5438 Implement Type::GetBaseType().
Refs #4996
2013-11-05 08:56:35 +01:00
Gunnar Beutner b1ddc71925 Merge ReflectionObject methods into the Object class.
Refs #4996
2013-11-05 08:56:30 +01:00
Gunnar Beutner 84b873fb4e Implement abstract keyword for mkclass.
Refs #4996
2013-11-05 08:56:25 +01:00
Gunnar Beutner 2140cef041 Implement the ReflectionType class.
Refs #4996
2013-11-05 08:56:18 +01:00
Gunnar Beutner 5f0ebed72b Improve compatibility with ancient versions of Bison.
Refs #4962
2013-11-03 13:45:26 +01:00
Gunnar Beutner f2307c4242 Add cmake build files.
Refs #4962
2013-11-03 13:45:26 +01:00
Gunnar Beutner 2c143fbdf8 Remove unused files.
Refs #4962
2013-11-03 11:12:47 +01:00
Gunnar Beutner 3308eb1d87 Add missing newlines.
Refs #4990
2013-11-03 10:59:01 +01:00
Gunnar Beutner db4b3b78d6 Implement class compiler.
Refs #4963
2013-10-28 14:27:36 +01:00
Michael Friedrich e03ffd780a Update documentation. 2013-10-21 21:03:35 +02:00
Michael Friedrich 0c37d63af5 Rename i2enfeature/i2disfeature to icinga2-{enable,disable}-feature.
fixes #4904
2013-10-18 22:11:40 +02:00
Michael Friedrich c3bcc2a474 Migration: Print error message on non-existing icinga.cfg. 2013-10-18 11:26:17 +02:00
Michael Friedrich 2164ff22b9 Documentation: Update commands and external commands. 2013-10-17 18:13:33 +02:00
Michael Friedrich b4ae8239f2 Rename features: statusdat -> statusdata, compat-log -> compatlog . 2013-10-17 13:57:53 +02:00
Gunnar Beutner 919af6c539 Update path. 2013-10-17 09:10:54 +02:00
Gunnar Beutner b695f08081 Remove obsolete file. 2013-10-14 09:03:55 +02:00
Gunnar Beutner 42a746e0d5 Vagrant: Fix file permissions. 2013-10-11 19:50:40 +02:00
Gunnar Beutner 4f5a9d53e1 Vagrant: Remove --nogpgcheck parameter. 2013-10-11 11:59:17 +02:00
Gunnar Beutner fe8c0c8c37 Vagrant: Install icinga2-doc. 2013-10-11 11:21:20 +02:00
Gunnar Beutner 473d50f6ab Add URL to Vagrant bootstrap script. 2013-10-11 10:33:49 +02:00
Gunnar Beutner 1ad59806dd Update document root for the Vagrant VM. 2013-10-11 10:23:32 +02:00
Gunnar Beutner 834f9cd110 Make sure the icinga-migrate-config script is in the dist tarball. 2013-10-11 06:39:07 +02:00
Gunnar Beutner c80dac1c25 Install migration script in bindir. 2013-10-11 06:31:21 +02:00
Michael Friedrich 99874a9eee Refactor config migration script, install as /usr/sbin/icinga2-migrate-config
fixes #4696
2013-10-10 20:49:26 +02:00
Gunnar Beutner c0c7f485ad Use icinga2-classicui-config package for Vagrant. 2013-10-10 19:59:51 +02:00
Gunnar Beutner 50ee6d9a1e Some more Vagrant fixes. 2013-10-10 19:15:22 +02:00
Gunnar Beutner 744a07ff48 Fix Vagrant bootstrap script. 2013-10-10 17:54:25 +02:00
Gunnar Beutner ebc92a0ba6 Implement Vagrant support. 2013-10-10 14:57:17 +02:00
Michael Friedrich a4111d2964 Conversion: Update readme and test config. 2013-10-09 18:55:15 +02:00
Michael Friedrich 4c6f4261ee Conversion: Fix notification attributes. 2013-10-09 18:54:09 +02:00
Gunnar Beutner fe5c925a63 Windows build fix. 2013-10-09 15:03:24 +02:00
Michael Friedrich d2d6653236 Clean contrib/.
fixes #4774
2013-10-03 20:36:44 +02:00
Gunnar Beutner 3a740f2e3b Another DESTDIR fix. 2013-10-02 14:27:17 +02:00
Gunnar Beutner 4eb8688271 Fix feature list output in i2enfeature. 2013-10-01 08:39:42 +02:00
Michael Friedrich c8b7f3335a Add tools/.gitignore. 2013-09-27 14:14:50 +02:00
Gunnar Beutner 3726470efb Update documentation. 2013-09-27 13:56:24 +02:00
Gunnar Beutner 71e416a23b Fix configuration path in the i2endfeature script. 2013-09-27 11:22:18 +02:00
Gunnar Beutner 09f0986cdb Install i2enfeature/i2disfeature in $(sbindir). 2013-09-27 11:21:14 +02:00
Gunnar Beutner 2d3e639fac Refactor mods-enabled/mods-available. 2013-09-27 11:16:35 +02:00
Gunnar Beutner 6970c28292 Add missing file. 2013-09-27 10:47:46 +02:00
Gunnar Beutner 74708766d1 Implement mods-available/mods-enabled.
Refs #4573
2013-09-27 10:45:38 +02:00
Michael Friedrich 739f23f0fc config conversion: Rename dependencies.
refs #4741
2013-09-25 16:13:39 +02:00
Michael Friedrich d9508bb64c config conversion: Fix command exists checks by type.
refs #4741
2013-09-25 16:04:40 +02:00
Michael Friedrich 61e3fcf0a7 config conversion: Move notification_interval|period from service to notification.
refs #4741
2013-09-25 16:04:40 +02:00
Michael Friedrich 4c14619521 config conversion: Move notification filters from service into notification.
refs #4741
2013-09-25 16:04:40 +02:00
Michael Friedrich cc6a9e6b36 config conversion: Rename hostcheck to check.
refs #4741
2013-09-25 16:04:40 +02:00
Michael Friedrich e236894de9 config conversion: Rename group attributes.
refs #4741
2013-09-25 16:04:40 +02:00
Michael Friedrich 00532f6da7 config conversion: Fix object names in test config. 2013-09-25 16:04:40 +02:00
Michael Friedrich 1342dec909 config conversion: Remove enable_{active,passive}_checks export. 2013-09-25 16:04:40 +02:00
Gunnar Beutner bf1a800e39 Update copyright information. 2013-09-25 07:45:56 +02:00
Michael Friedrich ad3a8f19ed Config Conversion: Update --help.
fixes #4715
2013-09-18 16:22:28 +02:00
Michael Friedrich 96e18e625f Config Conversion: Refactor hostcheck service as new object, add stats.
now the service template objects get the custom tmpl too.

refs #4715
2013-09-18 16:18:16 +02:00
Michael Friedrich 6a3c1ec7aa Config Conversion: Allow to define external global templates referenced by all objects.
tests:

$ ./icinga2_convert_v1_v2.pl -c /etc/icinga/icinga.cfg -o conf/
--hosttmpl="hostbumstitmpl"
--servicetmpl="servicebumstitmpl"
--usertmpl="userbumstitmpl"
--timeperiodtmpl="timeperiodbumstitmpl"
--notificationtmpl="notificationbumstitmpl"
--checkcommandtmpl="checkcommandbumstitmpl"
--eventcommandtmpl="eventcommandbumstitmpl"
--notificationcommandtmpl="notificationcommandbumstitmpl"

refs #4697
2013-09-18 11:42:16 +02:00
Michael Friedrich 1538579c66 Config Conversion: Detect hosts w/o services and properly add hostcheck.
it's ugly but it works. requires code refactoring.
2013-09-16 14:57:12 +02:00
Michael Friedrich 374b37077f Config Conversion: Add proper check_command detection in templates. 2013-09-16 14:05:41 +02:00
Gunnar Beutner d38c8ab0bb config: Fix arguments for hostchecks. 2013-09-13 13:48:41 +02:00
Gunnar Beutner de2a0aaea1 config: Fix attribute lookup functions. 2013-09-13 13:32:42 +02:00
Gunnar Beutner e0d5e2bf93 config: Temporarily set hostname for services. 2013-09-13 13:05:55 +02:00
Gunnar Beutner 4fdab9e2ac config: Fix looking up host custom attributes. 2013-09-13 12:36:49 +02:00
Gunnar Beutner 2b97884201 config: Fix resolving macros in command arguments. 2013-09-13 12:32:38 +02:00
Michael Friedrich 2d991703d6 Config Conversion: Fix global macros requiring escape_str() call.
fixes #4703
2013-09-13 09:56:25 +02:00
Gunnar Beutner eb43cc3101 Fix custom macros. 2013-09-13 09:45:24 +02:00
Gunnar Beutner 6a40fe7a40 Convert custom attributes to macros. 2013-09-13 09:28:32 +02:00
Michael Friedrich cc1dbbca0b Config Conversion: Object macros start with name.
refs #4700
2013-09-12 20:24:13 +02:00
Michael Friedrich a5fe44b81f Config Conversion: Treat command arg macros directly as object macros
- if detected, they will be replaced with their real name on the command
  line (instead of $ARGn$)
- if macro is resolvable, its value will be added to the macro
  dictionary
- if macro is not resolvable, it will be skipped and left for the core
  to resolve the macro on runtime.

caveat: getting host/service attributes requires lookups from the object
into the template tree, as well as host macros on services a search on
the host object itsself.

note: macro resolver is rudimentary implemented. there's space for more
detailed if-macro-name-is-then-return-attribute-abc. main problem are
the missing underscores in macro names, but not in attributes (what the
...?).

fixes #4700
2013-09-12 20:13:28 +02:00
Michael Friedrich f1e1a716d3 Config Conversion: Update sample icinga2 config.
refs #4701
2013-09-12 18:42:01 +02:00
Michael Friedrich f91c64098b Config Conversion: Fix import removing inline comments after ';' and '#'.
fixes #4499
2013-09-12 18:41:18 +02:00
Michael Friedrich c9497367d2 Config Conversion: Make ADMIN/USER macros global again (in resource.conf)
refs #4701
2013-09-12 18:41:18 +02:00
Michael Friedrich 2e4a37b297 Config Conversion: s/user_macros/global_macros/g 2013-09-12 18:41:18 +02:00
Michael Friedrich c8b9fce0bc Config Conversion: introduce resource.conf with global macros
refs #4701
2013-09-12 18:41:18 +02:00
Michael Friedrich dc0f2e2fa9 Config Conversion: Skip ARGn macros on Command object export. 2013-09-10 14:04:18 +02:00
Michael Friedrich 4d95eaa6c5 Config Conversion: Fix output header. 2013-09-10 13:54:14 +02:00
Michael Friedrich 4668f6fb3b Config Conversion: Check that icinga.cfg is passed via -c option. 2013-09-10 11:25:10 +02:00
Gunnar Beutner a833fc0fc3 Revert "convert: Use += for macros and custom attributes."
This reverts commit ff6453cfa1.
2013-09-10 10:54:17 +02:00
Gunnar Beutner ff6453cfa1 convert: Use += for macros and custom attributes. 2013-09-10 10:47:38 +02:00
Michael Friedrich de4e2c6585 Config Conversion: Treat notification option 'r' as StateFilterOK. 2013-09-10 10:28:37 +02:00
Gunnar Beutner 0a80dbc305 Fix: Host notifications should be added to the host check service instead of the host
Fixes #4674
2013-09-04 10:43:14 +02:00
Michael Friedrich 14c2e99e4b Config Conversion: fix missing Command macros, avoid duplicates 2013-08-30 17:50:05 +02:00
Michael Friedrich 7f0a210ff9 Config Conversion: support $USERn$ and $ADMINx$ macros in Notification|EventCommand 2013-08-30 17:50:05 +02:00
Michael Friedrich 1a3ecb04fb Config Conversion: Add ADMINPAGER|EMAIL as macros from icinga.cfg
and fix multiple user macros too. and add NotificationFilterCustom by
default.

fixes #4662
2013-08-30 15:58:58 +02:00
Michael Friedrich eff505e27f Config Conversion: Skip user macros for non-command objects. 2013-08-29 15:22:52 +02:00
Michael Friedrich 42b98d2c89 Config Conversion: Detect user macros properly. 2013-08-29 14:59:46 +02:00
Michael Friedrich de159b0133 Config Conversion: always add type NotificationFilterProblem. 2013-08-29 14:51:38 +02:00
Michael Friedrich 53a72fcaf1 Config Conversion: Fixes.
refs #2743
2013-08-29 13:14:59 +02:00
Michael Friedrich af86fa8ed9 Revert "make: mkembedconfig is required for 'dist'"
This reverts commit 1e637dbbd4.
2013-08-28 18:09:20 +02:00
Michael Friedrich 1e637dbbd4 make: mkembedconfig is required for 'dist'
fixes #4489
2013-08-28 16:19:13 +02:00
Michael Friedrich 6b649b8d4c configconvert: lookup host check_command in template tree for hostcheck magic
requires recursive template tree lookup in order to create the new
service linked as hostcheck directly on the host object.

refs #2743
2013-07-02 13:03:29 +02:00
Michael Friedrich 2dc7cd20c8 configconvert: make host check_command a new service and link it as hostcheck
refs #2743
2013-07-02 13:03:29 +02:00
Michael Friedrich 5ce229f08f configconvert: export all enable_* attributes 2013-07-01 18:31:22 +02:00
Michael Friedrich 6ed811cd78 configconvert: fix already replaced quotes escaping
refs #2743
2013-06-26 17:52:54 +02:00
Michael Friedrich 7599e858ec configconvert: update README
refs #2743
2013-06-26 16:23:33 +02:00
Michael Friedrich f3ccb88bae configconvert: custom attr (CVs, *_url, notes, *image*, 2d_coords)
collect attributes
* notes
* icon_image
* icon_image_alt
* action_url
* notes_url
* statusmap_image
* 2d_coords
* _CVs
* !__I2CONVERT

and stash it onto the custom dictionary.

note: attribute names starting with a number need to be quoted.

fixes #3096
2013-06-26 16:01:22 +02:00
Michael Friedrich 12916ec299 configconvert: update README (NOTES and TODO)
refs #2743
2013-06-26 14:29:57 +02:00
Michael Friedrich 2985eee66d configconvert: treat 'null' (disable inheritance) as '0' instead
refs #2743
2013-06-26 14:29:31 +02:00
Michael Friedrich 18e3bdc581 configconvert: fix 'n' and 'a' notification_options (filter = 0, filter = ...)
refs #4060
2013-06-26 14:12:38 +02:00
Michael Friedrich 1faba25e9c configconvert: skip empty notification filters
refs #4060
2013-06-26 13:49:25 +02:00
Michael Friedrich 6586c6da2e configconvert: disable some debug leftovers
$ find -type f -name '*.pm' | xargs sed -i 's/[^#]say Dumper/ #say
Dumper/g'
2013-06-26 13:30:26 +02:00
Michael Friedrich e7ab01aa6d configconvert: notification_options -> notification_{state,type}_filter
parsing the existing comma separated list and using some perl hash magic
to convert it to the new notification_type_filter and
notification_state_filter logic.

fixed missing file permission check on writing config files too.

fixes #4060
2013-06-26 13:22:15 +02:00
Michael Friedrich 6e3afe7748 configconvert: notification* attributes for services and users
refs #2743
2013-06-26 09:23:01 +02:00
Michael Friedrich 6e186ac814 configconvert: remove trailing whitespaces 2013-06-26 09:23:01 +02:00
Michael Friedrich bb2cbd044e configconvert: rename unique notification object identifier
refs #2743
2013-06-26 09:23:01 +02:00
Michael Friedrich dae5ac8939 configconvert: serviceescalations with servicegroup_name
requires a new functionality to grab all service names by a given
servicegroup name. this only works after reprocessing all services with
their updated "servicegroups" attribute as array in the 2.x objects
hive.

after fetching the service names and their logical objects, it's quite
the same procedure as for the hostgroups and single
host_names/service_descriptions - for better reading, code remains
duplicated for now.

furthermore, escalation notification template objects are only added
based on the old contact->notification_command, and only a reference
template added when using within the service linking.

refs #4009
2013-06-26 09:23:01 +02:00
Michael Friedrich 8eccb97642 configconvert: only export servicegroups when available
refs #2743
2013-06-26 09:23:01 +02:00
Michael Friedrich 97dd38051e configconvert: convert service escalation to notification escalation logic
- fixed bug with contactgroups in plain notifications
- fix bug with duplicated notifications (duplicate detection logic based
  on names, not template names)
- contacts may use templates too, and hide required values there
  (commands)
- added attribute getters which take templates into account (required
  for service -> notification_interval multiplied with service escalation
  first|last_notification too)
- apply the service escalation -> users -> commands as well as linking
  new notification with users, and services, defined either with
  * host_name/service_description
  * hostgroup_name/service_description
  * servicegroup_name (TODO)
- code duplication due to many nested loops with group wildcards

in short - we know why icinga 1.x takes ages to apply escalation.
because they look like added under pressure, and make no logical sense
compared to the rest. in short - they suck.

refs #4009
2013-06-26 09:23:01 +02:00
Michael Friedrich a5355e63a3 configconvert: treat address* and other attributes directly as macros
also for user attributes.

fixes #4333
2013-06-24 17:03:34 +02:00
Michael Friedrich 966be8fc35 configconvert: update README
refs #2743
2013-06-24 16:19:58 +02:00
Michael Friedrich 8039aa1a08 configconvert: move to tools/
fixes #4337
2013-06-24 16:14:20 +02:00
Michael Friedrich c9fb309200 tools: move mkembedconfig into subdir
preparation for moving the conversion script into tools/

refs #4337
2013-06-24 16:05:18 +02:00
Gunnar Beutner 734f76af96 Windows build fix. 2013-03-18 22:40:40 +01:00
Gunnar Beutner 0bb0711d72 Refactor #includes (Part 2). 2013-03-16 21:18:53 +01:00
Gunnar Beutner fae83d2ef6 Fix symbol visibility issue for REGISTER_CONFIG_FRAGMENT(). 2013-03-15 12:27:03 +01:00
Gunnar Beutner 9a05e2b269 Windows build fix. 2013-03-15 11:52:10 +01:00
Gunnar Beutner 98ab009b91 Cleaned up VS project files. 2013-03-12 19:49:24 +01:00
Gunnar Beutner edab378b11 Add missing VS project files. 2013-03-12 17:34:58 +01:00
Gunnar Beutner 5fcdc51e3c Windows build fix. 2013-03-12 15:35:51 +01:00
Gunnar Beutner ba71eba410 Add mkembedconfig tool. 2013-03-12 14:48:34 +01:00