Module: check_mk
Branch: master
Commit: 245c00d91d79cd413bbb7950f55cd4199ec223bc
URL: http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=245c00d91d79cd…
Author: Bastian Kuhn <bk(a)mathias-kettner.de>
Date: Thu Dec 15 11:10:41 2011 +0100
FIX: Removed debugging line
---
modules/check_mk_base.py | 1 -
1 files changed, 0 insertions(+), 1 deletions(-)
diff --git a/modules/check_mk_base.py b/modules/check_mk_base.py
index 3d1feac..01d6cca 100755
--- a/modules/check_mk_base.py
+++ b/modules/check_mk_base.py
@@ -729,7 +729,6 @@ def check_unimplemented(checkname, params, info):
# Loops over all checks for a host, gets the data, calls the check
# function that examines that data and sends the result to Nagios
def do_all_checks_on_host(hostname, ipaddress):
- import time ; time.sleep(5)
global g_aggregated_service_results
g_aggregated_service_results = {}
global g_hostname
Module: check_mk
Branch: master
Commit: cbed4881d9c61a0a25d6d74dc921f604faf0c26e
URL: http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=cbed4881d9c61a…
Author: Lars Michelsen <lm(a)mathias-kettner.de>
Date: Thu Dec 15 11:01:09 2011 +0100
Automatically falling back to hardcoded default language if configured language is not available
---
ChangeLog | 2 ++
web/htdocs/index.py | 3 ++-
2 files changed, 4 insertions(+), 1 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index 2db796d..739f6a0 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -21,6 +21,8 @@
* Add Snapin page: show previews of all snapins
* Add Snapin page: Trying to prevent dragging confusions by using other click event
* New (hidden) button for reloading a snapin (left to the close button)
+ * Automatically falling back to hardcoded default language if configured
+ language is not available
BI:
* Host/Service elements are now iterable via FOREACH_HOST, e.g.
diff --git a/web/htdocs/index.py b/web/htdocs/index.py
index 9e67d4f..ea4f1de 100644
--- a/web/htdocs/index.py
+++ b/web/htdocs/index.py
@@ -170,7 +170,8 @@ def load_language(lang):
i18n = gettext.translation('multisite', locale_base, languages = [ lang ], codeset = 'UTF-8')
i18n.install(unicode = True)
except IOError, e:
- raise MKUserError('lang', 'No translation file found for the given language.')
+ # Fallback to hardcoded default if the given language does not exist
+ __builtin__.current_language = config.default_language
# Main entry point for all HTTP-requests (called directly by mod_apache)
Module: check_mk
Branch: master
Commit: cfaa059972d5a2dc47a3dd3bf43482ca7a8f8d81
URL: http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=cfaa059972d5a2…
Author: Lars Michelsen <lm(a)mathias-kettner.de>
Date: Thu Dec 15 10:40:42 2011 +0100
Fixed nagvis auth file generation
---
web/plugins/wato/nagvis_auth.py | 39 ++++++++++++++++++++++++++++++++++++++-
1 files changed, 38 insertions(+), 1 deletions(-)
diff --git a/web/plugins/wato/nagvis_auth.py b/web/plugins/wato/nagvis_auth.py
index 9536ba9..5375f97 100644
--- a/web/plugins/wato/nagvis_auth.py
+++ b/web/plugins/wato/nagvis_auth.py
@@ -46,6 +46,43 @@
#
# This feature is available since NagVis release 1.6.1.
+#
+# The 3 following functions must be removed here when splitting
+# up the auth file generation in "global" and map folder specific
+# permissions
+#
+g_target_maps = {}
+def get_mapname_by_stringpath(filename):
+ return get_mapname(api.get_folder(filename))
+
+def get_mapname(thing):
+ """
+ folder can be a file/folder dictionary as provided by wato
+ or a tuple path to a file/folder. e.g. the parent folder.
+
+ In NagVis Mapnamen sind nur [0-9A-Za-z_-] erlaubt.
+ """
+ if thing is None:
+ return 'main'
+ elif isinstance(thing, tuple):
+ name = '_'.join(thing)
+ elif thing.get('.path', ()) != '':
+ name = thing['.path'].replace('/', '_')
+ else:
+ name = 'main'
+
+ if '.mk' in name:
+ name = name.replace('.mk', '')
+
+ return name
+
+def nagvis_auth_process_tree(thing):
+ global g_target_maps
+ g_target_maps[get_mapname(thing)] = thing
+
+ for child in thing.get('.folders', {}).itervalues():
+ process_tree(child)
+
# Generate the permissions file for the multisite authorization module
def generate_auth_file(users):
import json
@@ -57,7 +94,7 @@ def generate_auth_file(users):
#
# 0. Data gathering - populate g_target_maps list
#
- process_tree(api.get_folder_tree())
+ nagvis_auth_process_tree(api.get_folder_tree())
#
# 1. Write out the user permissions file
Module: check_mk
Branch: master
Commit: bea23d6724c3a83c67acc90a126c810b29c8b6a4
URL: http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=bea23d6724c3a8…
Author: Lars Michelsen <lm(a)mathias-kettner.de>
Date: Thu Dec 15 10:40:31 2011 +0100
Changed only_hosts filter in distributed WATO to new distributed_wato_site var
---
web/htdocs/wato.py | 26 +++++++++++---------------
1 files changed, 11 insertions(+), 15 deletions(-)
diff --git a/web/htdocs/wato.py b/web/htdocs/wato.py
index 4ec0338..43e7eec 100644
--- a/web/htdocs/wato.py
+++ b/web/htdocs/wato.py
@@ -6401,13 +6401,13 @@ def save_sites(sites):
out = file(sites_mk, "w")
out.write("# Written by WATO\n# encoding: utf-8\n\n")
out.write("sites = \\\n%s\n" % pprint.pformat(sites))
- update_only_hosts_file(sites)
+ update_distributed_wato_file(sites)
need_sidebar_reload()
# Makes sure, that in distributed mode we monitor only
# the hosts that are directly assigned to our (the local)
# site.
-def update_only_hosts_file(sites):
+def update_distributed_wato_file(sites):
# Note: we cannot access config.sites here, since we
# are currently in the process of saving the new
# site configuration.
@@ -6417,9 +6417,9 @@ def update_only_hosts_file(sites):
distributed = True
if "socket" not in site \
or site["socket"] == "unix:" + defaults.livestatus_unix_socket:
- create_only_hosts_file(siteid, site.get("replication"))
+ create_distributed_wato_file(siteid, site.get("replication"))
if not distributed:
- delete_only_hosts_file()
+ delete_distributed_wato_file()
#.
# .-Replication----------------------------------------------------------.
@@ -6968,7 +6968,7 @@ def automation_push_snapshot():
log_commit_pending() # pending changes are lost
# Create rule making this site only monitor our hosts
- create_only_hosts_file(site_id, mode)
+ create_distributed_wato_file(site_id, mode)
log_audit(None, "replication", _("Synchronized with master (my site id is %s.)") % site_id)
if html.var("restart", "no") == "yes":
check_mk_local_automation("restart")
@@ -6980,20 +6980,16 @@ def automation_push_snapshot():
else:
return _("Internal automation error: %s") % e
-def create_only_hosts_file(siteid, mode):
- out = file(defaults.check_mk_configdir + "/only_hosts.mk", "w")
+def create_distributed_wato_file(siteid, mode):
+ out = file(defaults.check_mk_configdir + "/distributed_wato.mk", "w")
out.write("# Written by WATO\n# encoding: utf-8\n\n")
out.write("# This file has been created by the master site\n"
"# push the configuration to us. It makes sure that\n"
"# we only monitor hosts that are assigned to our site.\n\n")
- out.write("if only_hosts == None:\n only_hosts = []\n\n")
- #if mode == 'master':
- # out.write("only_hosts += [(NEGATE, ['!site:%s'], ALL_HOSTS )]\n" % siteid)
- #else:
- out.write("only_hosts += [(['site:%s'], ALL_HOSTS )]\n" % siteid)
-
-def delete_only_hosts_file():
- p = defaults.check_mk_configdir + "/only_hosts.mk"
+ out.write("distributed_wato_site = '%s'\n" % siteid)
+
+def delete_distributed_wato_file():
+ p = defaults.check_mk_configdir + "/distributed_wato.mk"
if os.path.exists(p):
os.remove(p)