Page MenuHomeSoftware Heritage

icinga2: Actually trigger the e2e check with a given period
AbandonedPublic

Authored by ardumont on Jan 21 2020, 6:01 PM.

Details

Reviewers
None
Group Reviewers
Reviewers
Summary

Related to T2175

Test Plan

octocatalog-diff 's output seems to tell it will do the right thing

bin/octocatalog-diff --octocatalog-diff-args --no-truncate-details --to staging pergamonFound host pergamon.softwareheritage.org
Cloning into '/tmp/swh-ocd.OFfFN7DX/environments/production/data/private'...
done.
Cloning into '/tmp/swh-ocd.OFfFN7DX/environments/staging/data/private'...
done.
*** Running octocatalog-diff on host pergamon.softwareheritage.org
I, [2020-01-21T17:49:57.078331 #20036]  INFO -- : Catalogs compiled for pergamon.softwareheritage.org
W, [2020-01-21T17:50:02.774171 #20036]  WARN -- : Resource File[/tmp/ocd-ipc-20200121-20036-z80xwk/ocd-builddir-20200121-20041-a1tvwz/routes.yaml] appears to depend on catalog compilation directory. Suppressed from results.
W, [2020-01-21T17:50:02.774705 #20036]  WARN -- : Resource File[/tmp/ocd-ipc-20200121-20036-z80xwk/ocd-builddir-20200121-20038-7v68j4/routes.yaml] appears to depend on catalog compilation directory. Suppressed from results.
W, [2020-01-21T17:50:02.774941 #20036]  WARN -- : Resource key Ini_setting[puppetdbserver_urls] parameters => path may depend on catalog compilation directory, but there may be differences. This is included in results for now, but please verify.
W, [2020-01-21T17:50:02.774958 #20036]  WARN -- : Resource key Ini_setting[puppetdbserver_urls] parameters => path appears to depend on catalog compilation directory. Suppressed from results.
W, [2020-01-21T17:50:02.774995 #20036]  WARN -- : Resource key Ini_setting[soft_write_failure] parameters => path may depend on catalog compilation directory, but there may be differences. This is included in results for now, but please verify.
W, [2020-01-21T17:50:02.775008 #20036]  WARN -- : Resource key Ini_setting[soft_write_failure] parameters => path appears to depend on catalog compilation directory. Suppressed from results.
I, [2020-01-21T17:50:02.775792 #20036]  INFO -- : Diffs computed for pergamon.softwareheritage.org
diff origin/production/pergamon.softwareheritage.org current/pergamon.softwareheritage.org
*******************************************
+ Concat::Fragment[icinga2::object::CheckCommand::check-deposit-cmd] =>
   parameters =>
      "order": 15
      "target": "/etc/icinga2/conf.d/e2e-checks.conf"
      "content": >>>

object CheckCommand "check-deposit-cmd" {
  import "plugin-check-command"

  command = [ "/usr/bin/swh", "icinga_plugins", "check-deposit", "--server", "https://deposit.softwareheritage.org/1", "--user", "swh", "--password", "swh::deploy::deposit::e2e::password", "--collection", "swh", "--poll-interval", 1, "single", "--archive", "/usr/share/swh/icinga-plugins/data/deposit/je-suis-gpl.tgz", "--metadata", "/usr/share/swh/icinga-plugins/data/deposit/je-suis-gpl.tgz.xml", ]
}
<<<
*******************************************
- Concat::Fragment[icinga2::object::CheckCommand::check_deposit]
*******************************************
+ Concat::Fragment[icinga2::object::Service::check-deposit] =>
   parameters =>
      "order": 60
      "target": "/etc/icinga2/zones.d/master/pergamon.softwareheritage.org.conf"
      "content": >>>

apply Service "check-deposit" {
  import "generic-service-check-e2e"

  check_command = "check-deposit-cmd"
}
<<<
*******************************************
+ Concat::Fragment[icinga2::object::Service::generic-service-check-e2e] =>
   parameters =>
      "order": 60
      "target": "/etc/icinga2/conf.d/templates.conf"
      "content": >>>

template Service "generic-service-check-e2e" {
  check_interval = 24h
  retry_interval = 30s
  max_check_attempts = 5
}
<<<
*******************************************
+ Concat[/etc/icinga2/zones.d/master/pergamon.softwareheritage.org.conf] =>
   parameters =>
      "backup": "puppet"
      "ensure": "present"
      "ensure_newline": false
      "force": false
      "format": "plain"
      "group": "nagios"
      "mode": "0640"
      "notify": ["Class[Icinga2::Service]"]
      "order": "alpha"
      "owner": "root"
      "path": "/etc/icinga2/zones.d/master/pergamon.softwareheritage.org.conf"
      "replace": true
      "show_diff": true
      "tag": "icinga2::config::file"
      "warn": true
*******************************************
+ Concat_file[/etc/icinga2/zones.d/master/pergamon.softwareheritage.org.conf] =>
   parameters =>
      "backup": "puppet"
      "ensure_newline": false
      "force": false
      "format": "plain"
      "group": "nagios"
      "mode": "0640"
      "order": "alpha"
      "owner": "root"
      "replace": true
      "show_diff": true
      "tag": "_etc_icinga2_zones.d_master_pergamon.softwareheritage.org.conf"
*******************************************
+ Concat_fragment[/etc/icinga2/zones.d/master/pergamon.softwareheritage.org.conf_header] =>
   parameters =>
      "order": "0"
      "tag": "_etc_icinga2_zones.d_master_pergamon.softwareheritage.org.conf"
      "target": "/etc/icinga2/zones.d/master/pergamon.softwareheritage.org.conf"
      "content": >>>
# This file is managed by Puppet. DO NOT EDIT.
<<<
*******************************************
+ Concat_fragment[icinga2::object::CheckCommand::check-deposit-cmd] =>
   parameters =>
      "order": 15
      "tag": "_etc_icinga2_conf.d_e2e-checks.conf"
      "target": "/etc/icinga2/conf.d/e2e-checks.conf"
      "content": >>>

object CheckCommand "check-deposit-cmd" {
  import "plugin-check-command"

  command = [ "/usr/bin/swh", "icinga_plugins", "check-deposit", "--server", "https://deposit.softwareheritage.org/1", "--user", "swh", "--password", "swh::deploy::deposit::e2e::password", "--collection", "swh", "--poll-interval", 1, "single", "--archive", "/usr/share/swh/icinga-plugins/data/deposit/je-suis-gpl.tgz", "--metadata", "/usr/share/swh/icinga-plugins/data/deposit/je-suis-gpl.tgz.xml", ]
}
<<<
*******************************************
- Concat_fragment[icinga2::object::CheckCommand::check_deposit]
*******************************************
+ Concat_fragment[icinga2::object::Service::check-deposit] =>
   parameters =>
      "order": 60
      "tag": "_etc_icinga2_zones.d_master_pergamon.softwareheritage.org.conf"
      "target": "/etc/icinga2/zones.d/master/pergamon.softwareheritage.org.conf"
      "content": >>>

apply Service "check-deposit" {
  import "generic-service-check-e2e"

  check_command = "check-deposit-cmd"
}
<<<
*******************************************
+ Concat_fragment[icinga2::object::Service::generic-service-check-e2e] =>
   parameters =>
      "order": 60
      "tag": "_etc_icinga2_conf.d_templates.conf"
      "target": "/etc/icinga2/conf.d/templates.conf"
      "content": >>>

template Service "generic-service-check-e2e" {
  check_interval = 24h
  retry_interval = 30s
  max_check_attempts = 5
}
<<<
*******************************************
  File[/etc/bind/keys/local-update] =>
   parameters =>
     content =>
      @@ -2,4 +2,4 @@
       key local-update {
        algorithm hmac-sha256;
      - secret "OxeqlO+BiIYufLBjo/x+71w6CU+9vzQhP4JZqHqbhyZQsgiGfym2LmzrHDXnAaAa4IVjDh46VMlm5encs20IQg==";
      + secret "lJIk47yS67aGEmEROeDYdcO0hAC6NSEuzmfNOPIRc4M1pTQpkVy4qAnOgeUolFWFiSr6dKg2Fu9UNgadWO7o+Q==";
       };
*******************************************
  File[/etc/bind/rndc.key] =>
   parameters =>
     content =>
      @@ -2,4 +2,4 @@
       key rndc-key {
        algorithm hmac-md5;
      - secret "mcJrFJDHhrqoTP9Fmf1nFx0Z185s+KVsEZWRLfTaF1UrQU7KYJF++vC06UtWzq4w4SRBQBkyRR9oriS+FqDPqg==";
      + secret "QQX6ozgL5De34yTQdlwLU9qaeg3i8Bc2VDsQcUv3TecMVop7EGGX7gB3yAS/MLIQL/RBYN0dc+/mmZREkb/tWw==";
       };
*******************************************
+ Icinga2::Object::Checkcommand[check-deposit-cmd] =>
   parameters =>
      "checkcommand_name": "check-deposit-cmd"
      "command": ["/usr/bin/swh", "icinga_plugins", "check-deposit", "--server", "https://deposit.softwareheritage.org/1", "--user", "swh", "--password", "swh::deploy::deposit::e2e::password", "--collection", "swh", "--poll-interval", "1", "single", "--archive", "/usr/share/swh/icinga-plugins/data/deposit/je-suis-gpl.tgz", "--metadata", "/usr/share/swh/icinga-plugins/data/deposit/je-suis-gpl.tgz.xml"]
      "ensure": "present"
      "import": ["plugin-check-command"]
      "order": 15
      "target": "/etc/icinga2/conf.d/e2e-checks.conf"
      "template": false
*******************************************
- Icinga2::Object::Checkcommand[check_deposit]
*******************************************
+ Icinga2::Object::Service[check-deposit] =>
   parameters =>
      "apply": true
      "assign": []
      "check_command": "check-deposit-cmd"
      "ensure": "present"
      "ignore": []
      "import": ["generic-service-check-e2e"]
      "order": 60
      "prefix": false
      "service_name": "check-deposit"
      "target": "/etc/icinga2/zones.d/master/pergamon.softwareheritage.org.conf"
      "template": false
*******************************************
+ Icinga2::Object::Service[generic-service-check-e2e] =>
   parameters =>
      "apply": false
      "assign": []
      "check_interval": "24h"
      "ensure": "present"
      "ignore": []
      "import": []
      "max_check_attempts": 5
      "order": 60
      "prefix": false
      "retry_interval": "30s"
      "service_name": "generic-service-check-e2e"
      "target": "/etc/icinga2/conf.d/templates.conf"
      "template": true
*******************************************
+ Icinga2::Object[icinga2::object::CheckCommand::check-deposit-cmd] =>
   parameters =>
      "apply": false
      "assign": []
      "attrs": {"command"=>["/usr/bin/swh", "icinga_plugins", "check-deposit", "--server", "https://deposit.softwareheritage.org/1", "--user", "swh", "--password", "swh::deploy::deposit::e2e::password", "--collection", "swh", "--poll-interval", "1", "single", "--archive", "/usr/share/swh/icinga-plugins/data/deposit/je-suis-gpl.tgz", "--metadata", "/usr/share/swh/icinga-plugins/data/deposit/je-suis-gpl.tgz.xml"]}
      "attrs_list": ["command", "env", "timeout", "arguments", "vars", "Acknowledgement", "ApiBindHost", "ApiBindPort", "ApiEnvironment", "ApplicationType", "AttachDebugger", "BuildCompilerName", "BuildCompilerVersion", "BuildHostName", "Concurrency", "Critical", "Custom", "Deprecated", "Down", "DowntimeEnd", "DowntimeRemoved", "DowntimeStart", "Environment", "FlappingEnd", "FlappingStart", "HostDown", "HostUp", "IncludeConfDir", "Internal", "Json", "LocalStateDir", "LogCritical", "LogDebug", "LogInformation", "LogNotice", "LogWarning", "Math", "MaxConcurrentChecks", "ModAttrPath", "NodeName", "OK", "ObjectsPath", "PidPath", "PkgDataDir", "PlatformArchitecture", "PlatformKernel", "PlatformKernelVersion", "PlatformName", "PlatformVersion", "PrefixDir", "Problem", "Recovery", "RunAsGroup", "RunAsUser", "RunDir", "ServiceCritical", "ServiceOK", "ServiceUnknown", "ServiceWarning", "StatePath", "SysconfDir", "System", "Types", "Unknown", "Up", "UseVfork", "VarsPath", "Warning", "ZonesDir", "NodeName", "ZoneName", "TicketSalt", "PluginDir", "PluginContribDir", "ManubulonPluginDir", "name", "NodeName", "ZoneName", "TicketSalt", "PluginDir", "PluginContribDir", "ManubulonPluginDir", "name"]
      "ensure": "present"
      "ignore": []
      "import": ["plugin-check-command"]
      "object_name": "check-deposit-cmd"
      "object_type": "CheckCommand"
      "order": 15
      "prefix": false
      "target": "/etc/icinga2/conf.d/e2e-checks.conf"
      "template": false
*******************************************
- Icinga2::Object[icinga2::object::CheckCommand::check_deposit]
*******************************************
+ Icinga2::Object[icinga2::object::Service::check-deposit] =>
   parameters =>
      "apply": true
      "assign": []
      "attrs": {"check_command"=>"check-deposit-cmd"}
      "attrs_list": ["display_name", "host_name", "check_command", "check_timeout", "check_interval", "check_period", "retry_interval", "max_check_attempts", "groups", "enable_notifications", "enable_active_checks", "enable_passive_checks", "enable_event_handler", "enable_flapping", "enable_perfdata", "event_command", "flapping_threshold_low", "flapping_threshold_high", "volatile", "zone", "command_endpoint", "notes", "notes_url", "action_url", "icon_image", "icon_image_alt", "vars", "Acknowledgement", "ApiBindHost", "ApiBindPort", "ApiEnvironment", "ApplicationType", "AttachDebugger", "BuildCompilerName", "BuildCompilerVersion", "BuildHostName", "Concurrency", "Critical", "Custom", "Deprecated", "Down", "DowntimeEnd", "DowntimeRemoved", "DowntimeStart", "Environment", "FlappingEnd", "FlappingStart", "HostDown", "HostUp", "IncludeConfDir", "Internal", "Json", "LocalStateDir", "LogCritical", "LogDebug", "LogInformation", "LogNotice", "LogWarning", "Math", "MaxConcurrentChecks", "ModAttrPath", "NodeName", "OK", "ObjectsPath", "PidPath", "PkgDataDir", "PlatformArchitecture", "PlatformKernel", "PlatformKernelVersion", "PlatformName", "PlatformVersion", "PrefixDir", "Problem", "Recovery", "RunAsGroup", "RunAsUser", "RunDir", "ServiceCritical", "ServiceOK", "ServiceUnknown", "ServiceWarning", "StatePath", "SysconfDir", "System", "Types", "Unknown", "Up", "UseVfork", "VarsPath", "Warning", "ZonesDir", "NodeName", "ZoneName", "TicketSalt", "PluginDir", "PluginContribDir", "ManubulonPluginDir", "name", "NodeName", "ZoneName", "TicketSalt", "PluginDir", "PluginContribDir", "ManubulonPluginDir", "name"]
      "ensure": "present"
      "ignore": []
      "import": ["generic-service-check-e2e"]
      "object_name": "check-deposit"
      "object_type": "Service"
      "order": 60
      "prefix": false
      "target": "/etc/icinga2/zones.d/master/pergamon.softwareheritage.org.conf"
      "template": false
*******************************************
+ Icinga2::Object[icinga2::object::Service::generic-service-check-e2e] =>
   parameters =>
      "apply": false
      "assign": []
      "attrs": {"check_interval"=>"24h", "retry_interval"=>"30s", "max_check_attempts"=>5}
      "attrs_list": ["display_name", "host_name", "check_command", "check_timeout", "check_interval", "check_period", "retry_interval", "max_check_attempts", "groups", "enable_notifications", "enable_active_checks", "enable_passive_checks", "enable_event_handler", "enable_flapping", "enable_perfdata", "event_command", "flapping_threshold_low", "flapping_threshold_high", "volatile", "zone", "command_endpoint", "notes", "notes_url", "action_url", "icon_image", "icon_image_alt", "vars", "Acknowledgement", "ApiBindHost", "ApiBindPort", "ApiEnvironment", "ApplicationType", "AttachDebugger", "BuildCompilerName", "BuildCompilerVersion", "BuildHostName", "Concurrency", "Critical", "Custom", "Deprecated", "Down", "DowntimeEnd", "DowntimeRemoved", "DowntimeStart", "Environment", "FlappingEnd", "FlappingStart", "HostDown", "HostUp", "IncludeConfDir", "Internal", "Json", "LocalStateDir", "LogCritical", "LogDebug", "LogInformation", "LogNotice", "LogWarning", "Math", "MaxConcurrentChecks", "ModAttrPath", "NodeName", "OK", "ObjectsPath", "PidPath", "PkgDataDir", "PlatformArchitecture", "PlatformKernel", "PlatformKernelVersion", "PlatformName", "PlatformVersion", "PrefixDir", "Problem", "Recovery", "RunAsGroup", "RunAsUser", "RunDir", "ServiceCritical", "ServiceOK", "ServiceUnknown", "ServiceWarning", "StatePath", "SysconfDir", "System", "Types", "Unknown", "Up", "UseVfork", "VarsPath", "Warning", "ZonesDir", "NodeName", "ZoneName", "TicketSalt", "PluginDir", "PluginContribDir", "ManubulonPluginDir", "name", "NodeName", "ZoneName", "TicketSalt", "PluginDir", "PluginContribDir", "ManubulonPluginDir", "name"]
      "ensure": "present"
      "ignore": []
      "import": []
      "object_name": "generic-service-check-e2e"
      "object_type": "Service"
      "order": 60
      "prefix": false
      "target": "/etc/icinga2/conf.d/templates.conf"
      "template": true
*******************************************
*** End octocatalog-diff on pergamon.softwareheritage.org

Diff Detail

Repository
rSPSITE puppet-swh-site
Branch
staging
Lint
No Linters Available
Unit
No Unit Test Coverage
Build Status
Buildable 10227
Build 15168: arc lint + arc unit

Event Timeline

site-modules/profile/manifests/icinga2/objects/e2e_checks.pp
35

For now, it's actually not completely clear whether the given command can actually work or not (given it's not a real icinga thing)... so meh, i just want to check what that does right now.

site-modules/profile/manifests/icinga2/objects/templates.pp
67

I'll probably iterate other this later once the other things are clearer...