[icinga-checkins] icinga.org: New commits on branch feature/configconvert-2743

git at icinga.org git at icinga.org
Thu Jun 20 14:22:46 CEST 2013


URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=da3e2640af6eb639d83350021bf914f6a9659001
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Mon Jun 10 14:18:12 2013 +0200

    configconvert: escape display_name (may contain quotes)
    
    refs #3931

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=f1da63cd8fa373db7074d93a2786549019bb9d9f
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Mon Jun 10 14:15:10 2013 +0200

    configconvert: fix perl 5.14, skip non-existing objects

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=fe1591e7a7cd9901d3bbf1312453d17d8fc76422
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Wed May 29 15:15:59 2013 +0200

    configconvert: update README with usage and todos
    
    refs #2743

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=27fdd3c1ee859f57f7f3af009525f932f9f272cd
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Tue May 28 20:11:40 2013 +0200

    configconvert: svg-hg-hst logic may contain multiple hgnames for services
    
    the object tricks section on the 1.x documentation contains everything
    which makes the code less readable even here.
    
    luckily the code is rather modular, so the extension for split string to
    array, and looping doesn't hurt much.
    
    refs #4010

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=cb81de1fdda3f3b6f2539b2c695f84bd79cf3ec2
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Tue May 28 20:00:15 2013 +0200

    configconvert: add a note about servicedeps wildcards todo
    
    refs #4010

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=e48436a7350b93c23290530a6231e9648c9a7732
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Tue May 28 19:49:16 2013 +0200

    configconvert: add wildcard detection for 'members *' in hostgroup
    
    currently adds itself to the host's hostgroups array, but maybe a global
    template where all hosts inherit from, plus additive inheritance fit
    better here.
    
    refs #4010

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=d200e051097aa431bc211552284d86cba8ba53fb
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Tue May 28 19:31:32 2013 +0200

    configconvert: detect additive inheritance for *groups and use += on export
    
    i guess this can be used for host/service contact(groups) and other foo
    as well, so let's see.
    
    refs #4006

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=e79415ebea4cc89adf30b62abb158cd205f50c1e
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Tue May 28 18:48:30 2013 +0200

    configconvert: replace colon in object names with underscore
    
    it's a special delimiter and therefore forbidden.
    
    fixes #4225

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=ead2bd51aa4b49a2958dd4a099acd2e332a91445
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Tue May 28 15:53:58 2013 +0200

    configconvert: handle excluded hosts, ignore them on split to array
    
    exclusions/exceptions cannot be treated by icinga2 the same way as in
    1.x so it's better to not create unwanted objects.
    
    fixes #4007

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=13775c86c825781aa19caccce8455c2db79068ec
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Tue May 28 15:52:44 2013 +0200

    configconvert: refactor commaseperated list split
    
    ... to list of stripped strings into a function.
    
    fixes #4046

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=d16846b9e8874abfba76f150e4ba9e3d24adc7d2
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Tue May 28 14:52:33 2013 +0200

    configconvert: add support for * as service host_name next to comma seperated list
    
    this is currently a proof of concept for services only, but should
    target all the object tricks later on. this will be done on host_name
    lookup and stored as array.
    
    http://docs.icinga.org/latest/en/objecttricks.html
    
    refs #4010

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=f552671197bf0bd27d8572d1607d51c736026dc0
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Fri May 3 18:34:25 2013 +0200

    configconvert: add service dependency support for hostgroups
    
    well, a lot of looping required here:
    
    - loop through all child hostgroup hosts and get their hostnames
    - get the servive object based on each hostname (loop again) and
      the child service description
    - loop through all master hostgroup hosts and get their hostnames
    - get the master hostname based on each hostname (loop again) and
      the master service description, save that as service dependency
    
    given that implementation, dependencies may be converted for now.
    
    once we decide which options we support, we may add them as well.
    
    refs #4011

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=51f7ebd01af41ab976e455f132267f85572d07e5
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Fri May 3 17:57:07 2013 +0200

    configconvert: add servicedependency support (host_name)
    
    missing - the loop fun with hostgroups.
    
    special config is here:
    https://git.icinga.org/?p=icinga-core.git;a=blob;f=tests/etc/2743.cfg;hb=refs/heads/next#l376
    
    refs #4011

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=1dc464628368c46e7fad8bf5bf388e75ded6270c
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Fri May 3 16:46:44 2013 +0200

    configconvert: add hostdependency with hostgroup_name hosts unrolling
    
    refs #4011

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=aee822bafec22f54004fd873007a379135bd0adf
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Fri May 3 15:48:53 2013 +0200

    configconvert: s/Timeperiod/TimePeriod/g
    
    refs #4013

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=20ffcd19c9803ae382fe32007de00fb44ec3c8c0
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Fri May 3 15:19:51 2013 +0200

    configconvert: WIP dependencies - for host based on host_name and parents
    
    refs #4011

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=d81de1232feb175972590284814bb9596a3f07d2
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Fri May 3 13:44:43 2013 +0200

    configconvert: export check_period for hosts/services
    
    refs #2743

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=d758af1f204864684f4cbdcb23ca08a0e6087972
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Fri May 3 13:32:14 2013 +0200

    configconvert: code cleanup

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=a89f1b4a89d8a576b58d1c9768bf32360407d7a6
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Fri May 3 12:54:48 2013 +0200

    configconvert: drop config file prefix 'icinga2'
    
    just makes it hard to work with.
    
    refs #4036

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=cbf2ea63b61b68fe55de54732921d73264db1ca4
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Fri May 3 11:33:35 2013 +0200

    configconvert: make host->service linked service a template object, referenced by the host
    
    this is not the best solution, as it it creates a service template for
    each host-service relation. if you have many host_name entries defined
    in your Icinga 1.x config for a service, this will create duplicates
    then. requires some more code refactoring, therefore leaving the issue
    open.
    
    refs #3933

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=ac3fb8f14b24e7819d67e6ead231b4453d8e603d
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Fri May 3 10:46:23 2013 +0200

    configconvert: add notification_interval|period
    
    and refactor check|retry_interval vs normal|retry_check_interval
    
    refs #4008

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=ff2ae96e806d3f7a137701b645e8a86c814e40f6
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Thu May 2 23:23:29 2013 +0200

    configconvert: add getopts and pod2usage incl help
    
    fixes #4041

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=8a7263700e45e637f651ebfcdd195f74b28cbad4
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Thu May 2 22:43:18 2013 +0200

    configconvert: fix import parser - timeperiods require regex (thx LConfImport)
    
    somehow, the Icinga2 import still fails with us holiday definitions. bug
    that's not yet determined whose bug that is.
    
    refs #4039
    refs #4013

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=bded8eb09bcb95bb09c45141f9cfacc2b384ec7d
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Thu May 2 22:21:29 2013 +0200

    configconvert: update requirements, perl deps
    
    refs #2743

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=861d7479e729b2d93a6e36e6aa07f7c4349da0ea
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Thu May 2 22:13:11 2013 +0200

    configconvert: fix timeperiod ranges, add template support for ITL inherits
    
    refs #4037
    refs #4013

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=4eb208117c13d5376474efe66bebf0cf9f84c7d0
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Thu May 2 21:31:28 2013 +0200

    configconvert: add ITL templates automatically (for services, notifications)
    
    this currently only makes sense for services and notifications.
    
    refs #4037

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=78bdb21bd86af20244417cd8b63e1c4bb0cfcb0c
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Thu May 2 21:02:59 2013 +0200

    configconvert: add README

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=6a808067f410e0042212e7ea19fbe210276652ea
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Thu May 2 20:55:35 2013 +0200

    configconvert: s/usergroups/groups/ for User config dump

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=c597f3050fceb1ec4da76a758536f6fb190e762f
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Thu May 2 20:45:02 2013 +0200

    configconvert: add small main config file for standalone tests
    
    refs #2743

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=bbb21d4ca3141c912e77f7c73770a0f635939a81
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Thu May 2 20:36:44 2013 +0200

    configconvert: fix service description handling, it's now an inner conversion value
    
    previously, i've just re-used 'service_description' which isn't a valid
    2.x attribute either. the lookup of service_description attribute in 1.x
    templates works already, but populated __I2CONVERT_SERVICEDESCRIPTION
    instead. in favor of having a generated value for all our objects, we'll
    use that one, also for dumping the configuration.
    
    even further, this is also changed for the service->hostgroup<-hosts
    conversion then.
    
    this also avoids writing empty service names into host->service objects.
    
    fixes #4019

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=8591a05cb40d731b3e296087a315e6479ffcbab5
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Thu May 2 20:10:24 2013 +0200

    configconvert: write config files, refactor how objects are exported
    
    structure is currently hardcoded, but may be changed to getopts later
    on. all files are overridden into conf/ (testing only right on).
    
    refactored export code, removed everything from Convert.pm, and export
    is now called from the script directly, wrapped all dump loops and added
    more function layers in betweed. open/close file handles take care of
    everything, next to a header on top of the files for getting to know
    their origin better (our hard work, ey?).
    
    refs #4036

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=8edbb2d0da0d5b588fbf0edc9854178d32d15941
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Thu May 2 18:54:18 2013 +0200

    configconvert: final stage, rework notification type handling, fix naming amd template output
    
    the config dump must take care of which notification type is dumped,
    otherwise there would be yet another look required. Instead we are just
    passing a reference from users to hosts/services with all prepared
    notification attributes, and check them lazy on dump then.
    
    further fixe on the notification names - they are not unique by their
    command (now used on host/service scope, not user/contact) so we'll add
    some magic number as suffix.
    
    fixed template name dumping due to changed conversion vars too.
    
    refs #4008

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=5b1935f7e449edb9712fef4133323a74d10450b6
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Thu May 2 18:15:17 2013 +0200

    configconvert: WIP notifications, how service/hosts relate to users and notifications
    
    there may be more than one notification for the user, and we already had
    the type in place. currently, that type is not taken into account (bug
    to fix).
    
    the rest with service -> user -> notification linking works in the first
    implementation.
    
    refs #4008

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=19905462fa7d772bdbd029e9c75c970cb60a727e
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Thu May 2 14:32:04 2013 +0200

    configconvert: WIP notification conversion
    
    - refactored notification_commands parsing and storage
    - do not add duplicated notification_command names to the 2x
      notification object hive
    - create notifications based on the notification command linked from
      users
    - move host->service link magic to the end again
    
    refs #4008

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=80ef9db2c0ac3efd99f517c374669e74924a19b1
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Tue Apr 30 19:48:17 2013 +0200

    configconvert: refactor how services without host_name are handled
    
    this is mainly the cause when using hostgroup relations, or other object
    tricks. we still need the single loop run to convert all 2.x object
    attributes in one run, and deal with the missing attributes later on.

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=08b1a71168be29e472042ef60b44628f9440a339
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Tue Apr 30 19:28:26 2013 +0200

    configconversion: explicitely check __I2CONVERT_USES_TEMPLATE == 1 when dumping service templates
    
    refs #4020

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=978ec2b0a1138b111cadb148a5291531184cc041
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Tue Apr 30 19:16:15 2013 +0200

    configconvert: code cleanup

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=b6686c741621c0235beb57bbc773f2eef6aa9ffc
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Tue Apr 30 18:48:17 2013 +0200

    configconvert: only dump macros if there are key-val pairs

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=98684ab4260cfddcdd7d8c81df3ad17e5be5d5f9
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Tue Apr 30 18:44:41 2013 +0200

    configconversion: remove debug output

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=7151fca0562f96762d56cfd8682bf43d3b6b4840
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Tue Apr 30 18:31:28 2013 +0200

    configconvert: refactor service-hg-hosts for one hosthg template and multiple services
    
    we need to first loop over all services, getting the key ids, collecting
    them for each hostgroup_name (this is the unique identifier, because
    this is our hosthg template later on).
    
    then we loop over the collected unique hostgroups and build the 2.x
    template logic. the difference here is now, that the code is refactored,
    and loops over the service keys (getting their objects) only once,
    pushing their templates plus a relation to a single (1) hosthg-template.
    
    there's still some space for enhancements - the service template names
    as well as hosthg template names as well as service object names are
    generated with some hardcoded strings/numbers.
    
    refs #2743
    refs #4016

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=a37bf4aa8e5b58ac453bec75d9922a1e32f5f75b
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Tue Apr 30 17:28:25 2013 +0200

    configconvert: add service->hostgroup<-hostmembers conversion to template support
    
    WIP: there's multiple service->hostgroup relations - duplicated hosthg
    templates. must be fixed.
    
    refs #2743
    refs #4016

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=4b7e105bae4da29b13bacc3d2bbe1d3e3ba8aea5
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Tue Apr 30 14:22:53 2013 +0200

    configconvert: support 'name' for groups' if *group_name is not set
    
    this is a fallback for broken configs only, and since i got some, added
    a small fix.
    
    refs #2743

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=cc0062b948687f1e01a14e613c6a340f45e7279f
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Tue Apr 30 14:04:49 2013 +0200

    configconvert: dump modular timperiod attr and values
    
    we need to ignore all other attributes which are to be cleaned sooner,
    just for safety.
    
    minor flaw: the keys are not sorted by weekdays now, but dumped like the
    hash provides them.
    
    fixes #4013

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=074ddbd12c4b5693edb8eda49f1bd46dcd66b0d3
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Mon Apr 29 20:46:38 2013 +0200

    configconvert: fix multiple templates usage, template object lookup error
    
    multiple host/service templates seperated by commas will cause some
    irritation, therefore this is treated as array internally, like group
    members. for the config export and "inherits", this is easy to fix. for
    the actual host_name lookup for service objects, this unveiled another
    bug when looping through all available templates - they are unique by
    'name' and not by hostname/servicedesc, and require their very own
    getter - obj_get_tmpl_obj_by_tmpl_name() - which makes sure to return
    the object which is then looked into recursively if there's a host_name
    provided.
    
    possible bug for now - multiple service templates used and the host_name is
    defined in one of them. but that's not the usual case, and won't be
    supported for now.
    
    refs #2743
    fixes #3932

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=c24199294ada614a9b445d98991b4aa1f97df76c
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Mon Apr 29 18:49:25 2013 +0200

    configconvert: properly escape strings with double quotes
    
    * command_line and command_args
    * notification commands
    * action_url, notes_url
    * notes
    * icon_image, icon_image_alt
    
    fixes #3931

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=5dd17211427503bcfd5715721ef5ac7ad2fd64dd
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Mon Apr 29 18:32:54 2013 +0200

    configconvert: fix leftover from rename

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=4f2b7b2404a2d012e8ee1c40922524569032d8da
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Mon Apr 29 18:24:02 2013 +0200

    configconvert: use special prefix for internal attributes
    
    __I2CONVERT_ should do the trick, not to interfere with existing custom
    variables.

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=f9ef5382c9acc52c4a187e607ca0242c596be069
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Mon Apr 29 16:49:56 2013 +0200

    s/DumpIcinga2Cfg/ExportIcinga2Cfg/g
    
    just for Import/Export clarification.

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=a9849fef19eab1f87f05c4a050a19e795c56a2ad
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Fri Apr 5 17:52:49 2013 +0200

    ConfigConvert: fix undocumented contact templates conversion
    
    refs #2743

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=57c16ba8fa1886619c8350f88be1412b7d85f6c1
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Fri Apr 5 17:30:20 2013 +0200

    ConfigConvert: *interval, max_check_attempts dumped as numbers
    
    see
    https://git.icinga.org/?p=icinga2.git;a=blob_plain;f=lib/icinga/icinga-type.conf;hb=HEAD
    
    refs #2743

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=af1787f976ae42026f1bee129d4f3ba27fc58d15
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Fri Apr 5 17:20:56 2013 +0200

    ConfigConvert: refactor host-svc links, add full service/usergroup relinking
    
    due to the relinking afterwards we actually modify the service objects
    already prepared for 2x. since the *group magic depends on the
    host/services/users already prepared, we get a perpetuum mobile here
    with the host loop and resolving service relations.
    
    in order to safely fix the issue, there's a seperate host-service link
    loop after resolving all the other needed objects, which may cost a
    little bit more performance, but is safe and standalone, getting all
    previous modifications, migrations and also hacks.
    
    next to the refactored flow, the issue with resolving the correct
    servicegroups and stashing them into an array is solved, as well as
    converting the existing contactgroups to usergroups, as well as
    re-linking existing contactgroup->members to their new home,
    user->usergroups.
    
    note: when parsing the servicegroup members into an array, it must not
    be sorted afterwards, because we will shift 2 objects (host, service) in
    order to identify the correct service object for adding the servicegroup
    item.
    
    some code reorganisation too, plus a minor comma fix for the host
    address macro.
    
    the used 1x configuration will be addressed in 2743.cfg on
    icinga-core.git, with all future additions.
    
    refs #2743

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=93fb004f095a153faf7931ced4b579adaec5fe1c
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Thu Apr 4 23:16:38 2013 +0200

    ConvertConfig: disable debug output, some reformatting of dump

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=458ab5fe8ed374e0f9950938de30db3c2b6187ac
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Thu Apr 4 23:06:03 2013 +0200

    ConfigConvert: refactor multiple host_name's on service object detection
    
    this is ugly. a service object may contain 'host_name' with
    'host1,host2,host3' and so on. treating this as string won't allow us to
    look into the template tree for valid host attributes, so we need to
    rewrite the getter function, allowing some special treatment on
    host_name arrays.
    
    for the service object preparation this means: while in the service
    loop, we need to loop again over all hosts, then dclone the hashref
    object for the service, and add the unique host_name attribute again.
    
    we might require some loop unrolling later, but for now this works as
    expected.
    
    refs #2743

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=e7d06f482e152517e332928a8d46e4bd99d5a32c
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Thu Apr 4 22:11:10 2013 +0200

    ConfigConvert: basic servicegroup parsing method

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=fcae562a62d44bcb2377a9fefa91de810909f12a
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Thu Apr 4 21:33:54 2013 +0200

    ConfigConvert: fix service linking not unique, add hostgroup->members re-link to host->hostgroups
    
    while working on the missing servicegroups and their facepalm members
    syntax (host1,svc1,host2,svc2 - awesome to parse), i figured that the
    whole detection of services by their attribute 'service_description' is
    not uniquely implemented. now the getter functions are duplicated, and
    not modular anymore, for the sake of having a service identified by its
    host_name + service_description. since that lookup is recursive, we must
    pass the host_name from the very beginning - otherwise we could
    accidently overwrite that with a template entry.
    
    the hostgroup re-linking works, also thanks to the fact that the inner
    object structure is just an array in the hashref, which allows smart
    push.
    
    contact/user groups are tricky again due to the different naming.
    
    further todo: sort all macros and hostservice links. right now this
    looks like chaos.
    
    refs #2743

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=7b00490f42a900c5e6937abb50aac4c217165279
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Thu Apr 4 20:33:29 2013 +0200

    ConfigConvert: add more host/service attributes, groups
    
    *_interval are automatically mapped, while the *groups attribute it
    converted into an array in order to easily stash more groups on it.
    
    still a todo - loop over existing groups and re-link their members into
    the respective objects, as 2.x only supports that location.
    
    fix for the host->service relation - use the already processed service
    2x hashref in order to do some magic with host->{'SERVICE'} = service
    
    all 2x attributes are now encapsulated with "", to stay safe.
    todo - more generic config 2x dump.
    
    furthermore, add some more code comments for the respective sections.
    
    refs #2743

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=6944c1dce79179fefbae202499c9e4e05670ee72
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Wed Apr 3 21:45:06 2013 +0200

    ConfigConvert: fix 4 little big thinkos on import/convert/dump
    
    1) do not skip lines containing ;.* - there may actually be a comment on
    attr->val line. rather clean the line safely, and let the magic happen.
    
    2) the type counter was implemented in order to have unique object ids
    by type, since 1x config does not provide us with such. problem - the
    function had a local var, saving the counter for each file, overwriting
    the hash attributes later on, starting again with 0. nasty bug, hard to
    figure out. fixed by feeding the type_cnt into the cfg_obj hive for now.
    revamped the state machine logic as well, like so
    
    I: define TYPE { 	--> __TYPE = TYPE
    II: attr val		--> {type}->{type_cnt->cnt}->{attr} = val
    III: }			--> type_cnt->cnt++
    IV: <empty/comment>
    
    3) also skip service templates (__IS_TEMPLATE) sooner, and do not try to
    calculate some host_name/service_description magic out of them - they
    just can't go down one level to the host, but only up with 'use'.
    
    4) host and service templates on 2x config dump must check if
    __USES_TEMPLATE is actually set to 1, checking for defined is not
    enough.
    
    whatthecommit.com:
    
    A long time ago, in a galaxy far far away...
    
    refs #2743

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=cd5b07aa3295e6f154b4a4f43e3cd6e968f0d7b3
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Wed Apr 3 19:08:00 2013 +0200

    ConvertConfig: add basic support for users, timeperiods, *groups
    
    as well as display_name as attribute to print something.
    
    contact => user mapping is added as well, manipulating the __TYPE var
    too. furthermore display_name on the host will be overwritten by the
    alias, if set.
    
    the groups don't dump much, only the display_name if set. their dump
    function is implemented generic, based on the __TYPE

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=203d76f0011e31a7ea2e874c4100e2d8e8e8fe60
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Wed Apr 3 17:01:11 2013 +0200

    ConfigConvert: refactor host_name/service_description link resolving
    
    previous algorithm was buggy, as well get_host_name always looked up
    host template objects, even if the template object was a service. this
    is now fixed by re-using the __TYPE attribute (set on Icinga 1x config
    read).
    
    the algorithm is now like
    
                           |---------------------------------|
                          \/                                 |
                       svc_desc?                             |
                    0 /        \ 1                           |
                  use tmpl?    END -------> [svc_desc]       |
                 0 /   \ 1                                   |
    [undef] <- BROKEN  getobjbyattr(['use'], __TYPE, svcdesc |
                        |                                    |
                     getsvcdesc(obj)                         |
                        |                                    |
                        --------------------------------------
    
    refs #2743

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=085c075bdbb1377ab462767705930bd3ddf700cb
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Wed Apr 3 15:06:06 2013 +0200

    ConfigConvert: improved template handling, host/service dump 2x
    
    refactored code again, removed nested loop bottlenecks. still, the
    resolval of host_name/service_description requires more love.
    
    templates are now correctly detected, linked, and printed in 2x syntax.
    service templates are _not_ linked against host definitions in 2x as
    this is not possible.
    
    commands for hosts do not exist in 2x, therefore the command_name of an
    1x host will be taken and guessed against its related services. if
    there's a match, the service will be linked as 2x 'hostcheck'.
    
    *_interval still needs proper handling, as the default interval is 1m,
    but 2x requires the identifier.

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=d25c2e4288b98abd2c48dda033dbe93ca087247b
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Wed Apr 3 10:10:25 2013 +0200

    ConfigConvert: fix hash keys for convert/dump in perl 5.14

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=cdd2085c8162caeb002869540ef3029ceb691afb
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Tue Apr 2 18:54:41 2013 +0200

    ConfigConvert: split into modules, add objects.cache read, dump cmd line
    
    basically it works with
    
    - dumping a host with all services, using templates
    - check_command and all arguments/user macros translation
    - reading the objects.cache file location from icinga.cfg
    => this is reserved only for getting dedicated relations
    => we do not want to duplicate the work of xodtemplate.c in perl here
    - all important functions have been split up into their respective
      modules in order to support better re-usage (i.e. lconfexport)
    
    still missing important bits:
    
    - detect service->group<-host links and build templates
    - detect other ugly template methods
    - dump templates
    - the ugly deprecated normal|retry_check_interval mapping
    - timeperiod mapping
    - contact => user mapping
    - notifications rework (dedicated object)
    - dependencies, escalations (to be documented/implemented)
    - the infamous rest

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=008ced8e4665bb208d16b289bed8208137994a9b
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Fri Mar 15 17:09:56 2013 +0100

    WIP configconversion: rewrite recursive lookup of linked host_name/service_description
    
    this is a mess. configs may just use "name" instead of "host_name" on
    type "host", same goes for service and service_descriptions. well, and
    if it's a template, "name" is populated too.
    
    the algorithm is not clean enough, and does not scale at all. there are
    bugs, and the hostgroup linking is not yet taken into account too.
    
    basics host -> service dumping of v2 config is implemented.
    
    refs #2743

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=38625ce4988e159a93e3bf613251a97c4705ee05
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Thu Mar 14 17:22:45 2013 +0100

    WIP: try resolving the host->svc relation from templates and tricks
    
    not finished yet, there's heavy recursion required

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=bf6af599990baf8899a91c473cdaf6b4a2e79cc2
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Tue Mar 12 21:48:29 2013 +0100

    Config Conversion: command macros, templates
    
    refs #2743

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=f3b931945edb809a195a67449a863fb5cf40b876
Author: Michael Friedrich <michael.friedrich at netways.de>
Date:   Tue Mar 12 17:40:53 2013 +0100

    convertv1->v2 initial import
    
    refs #2743

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=709e8c925efd525885a28d3c4b52fa6b366e166e
Author: Gunnar Beutner <gunnar.beutner at netways.de>
Date:   Wed Jun 19 14:28:46 2013 +0200

    Bugfix for removing expired downtimes.

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=1d7428b23785060b7de116e8cd81976a3006764b
Author: Gunnar Beutner <gunnar.beutner at netways.de>
Date:   Wed Jun 19 10:57:07 2013 +0200

    Implement support for acknowledgement comments.
    
    Fixes #3585

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=e13a6ac23dc02a300a14556f6366f3eb5858674b
Author: Gunnar Beutner <gunnar.beutner at netways.de>
Date:   Wed Jun 19 10:42:28 2013 +0200

    Implement support for downtime comments.
    
    Fixes #3894

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=0d64a8fd32303a7f166e6f167a8d3695db003936
Author: Gunnar Beutner <gunnar.beutner at netways.de>
Date:   Wed Jun 19 10:37:50 2013 +0200

    Don't seal DynamicObject updates.

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=686ea1021360414a7a69525d0b17b8e0ec6c3c10
Author: Gunnar Beutner <gunnar.beutner at netways.de>
Date:   Wed Jun 19 10:19:04 2013 +0200

    Remove unused typedef.

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=80aa40fcda660aef9270e93b67ba1492c10fbda1
Author: Gunnar Beutner <gunnar.beutner at netways.de>
Date:   Mon Jun 17 09:39:06 2013 +0200

    Update tutorial.

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=0ecd650134fafac4ad6c9bf7a0db36f3e2eee3be
Author: Gunnar Beutner <gunnar.beutner at netways.de>
Date:   Mon Jun 17 09:38:18 2013 +0200

    Removed obsolete file.

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=4ab9d2604ffb19bdba3cf274752d7bc8e220e03f
Author: Gunnar Beutner <gunnar.beutner at netways.de>
Date:   Thu Jun 13 12:24:20 2013 +0200

    Implement volatile services
    
    Fixes #3593

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=e30d3c56912b91d6e9ec7cfbb64de84d0d2c4049
Author: Gunnar Beutner <gunnar.beutner at netways.de>
Date:   Thu Jun 13 12:05:24 2013 +0200

    Implement command timeouts.
    
    Fixes #2723

URL:    https://git.icinga.org/?p=icinga2.git;a=commit;h=d042a181bd3973e173065ce89bbf44e0a7d5154c
Author: Gunnar Beutner <gunnar.beutner at netways.de>
Date:   Thu Jun 13 11:33:00 2013 +0200

    Refactor commands and implement event handlers.
    
    Fixes #3877
    Fixes #4001





More information about the icinga-checkins mailing list