MKP 1.2.0, added version check
This commit is contained in:
@@ -40,6 +40,9 @@ def check_mailcow_info(params, section):
|
||||
levels_solr_documents = params["levels_solr_documents"]
|
||||
|
||||
version = section[key]["version"]
|
||||
git_version = section[key]["git_version"]
|
||||
check_version_enabled = section[key]["check_version_enabled"]
|
||||
update_available = section[key]["update_available"]
|
||||
num_domains = section[key]["num_domains"]
|
||||
num_mailboxes = section[key]["num_mailboxes"]
|
||||
num_global_messages = section[key]["num_global_messages"]
|
||||
@@ -58,9 +61,18 @@ def check_mailcow_info(params, section):
|
||||
yield(Metric("mc_solr_documents", solr_documents, levels=levels_solr_documents))
|
||||
|
||||
# create overall result
|
||||
summary = f"Version is {version}"
|
||||
if check_version_enabled:
|
||||
if update_available:
|
||||
summary = f"Update available: Running version is {version}, Github version is: {git_version}"
|
||||
state = State.WARN
|
||||
else:
|
||||
summary = f"No update available: Running version is {version}, Github version is: {git_version}"
|
||||
state = State.OK
|
||||
else:
|
||||
summary = f"Version is {version}, Update check is disabled"
|
||||
state = State.OK
|
||||
details = f"Mailcow version: {version}\nNumber of domains: {num_domains}\nNumber of mailboxes: {num_mailboxes}\nNumber of messages: {num_global_messages}\n\nSolr size: {render.bytes(solr_size)}\nNumber of Solr documents: {solr_documents}"
|
||||
yield Result(state=State.OK, summary=summary, details=details)
|
||||
yield Result(state=state, summary=summary, details=details)
|
||||
|
||||
# Create result for number of domains
|
||||
warn, crit = levels_num_domains
|
||||
@@ -103,6 +115,7 @@ def check_mailcow_info(params, section):
|
||||
|
||||
|
||||
def parse_mailcow_info_section(string_table):
|
||||
#pprint(string_table)
|
||||
parsed_data = {
|
||||
"mailcow" : {},
|
||||
}
|
||||
@@ -125,6 +138,17 @@ def parse_mailcow_info_section(string_table):
|
||||
elif solr_size_unit == "GB":
|
||||
solr_size = solr_size * 1024.0 * 1024.0 * 1024.0
|
||||
solr_documents = int(line[6])
|
||||
git_version = line[7]
|
||||
update_available = line[8]
|
||||
if update_available == "True":
|
||||
update_available = True
|
||||
else:
|
||||
update_available = False
|
||||
check_version_enabled = line[9]
|
||||
if check_version_enabled == "True":
|
||||
check_version_enabled = True
|
||||
else:
|
||||
check_version_enabled = False
|
||||
parsed_data["mailcow"]["version"] = version
|
||||
parsed_data["mailcow"]["num_domains"] = num_domains
|
||||
parsed_data["mailcow"]["num_mailboxes"] = num_mailboxes
|
||||
@@ -132,6 +156,10 @@ def parse_mailcow_info_section(string_table):
|
||||
parsed_data["mailcow"]["solr_enabled"] = solr_enabled
|
||||
parsed_data["mailcow"]["solr_size"] = solr_size
|
||||
parsed_data["mailcow"]["solr_documents"] = solr_documents
|
||||
parsed_data["mailcow"]["git_version"] = git_version
|
||||
parsed_data["mailcow"]["update_available"] = update_available
|
||||
parsed_data["mailcow"]["check_version_enabled"] = check_version_enabled
|
||||
#pprint(parsed_data)
|
||||
return parsed_data
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user