Skip to content

Commit

Permalink
fix: split tag string at semicolon instead of comma (#532)
Browse files Browse the repository at this point in the history
  • Loading branch information
xoxys committed Jan 24, 2024
1 parent aa3a82a commit 1c3e4fc
Show file tree
Hide file tree
Showing 8 changed files with 235 additions and 200 deletions.
17 changes: 13 additions & 4 deletions prometheuspvesd/discovery.py
Original file line number Diff line number Diff line change
Expand Up @@ -111,6 +111,13 @@ def _filter(self, pve_list):
filtered = []
for item in pve_list:
obj = defaultdict(dict, item)
tags = []
tags_excl = self.config.config["exclude_tags"]

if isinstance(obj["tags"], str):
tags = obj["tags"].split(";")
self.logger.debug(f"vmid {obj['vmid']}: discovered tags: {tags}")

if (
len(self.config.config["include_vmid"]) > 0
and str(obj["vmid"]) not in self.config.config["include_vmid"]
Expand All @@ -119,7 +126,7 @@ def _filter(self, pve_list):

if len(self.config.config["include_tags"]) > 0 and (
bool(obj["tags"]) is False # continue if tags is not set
or set(obj["tags"].split(",")).isdisjoint(self.config.config["include_tags"])
or set(tags).isdisjoint(self.config.config["include_tags"])
):
continue

Expand All @@ -132,9 +139,11 @@ def _filter(self, pve_list):
if str(obj["vmid"]) in self.config.config["exclude_vmid"]:
continue

if isinstance(obj["tags"], str) and not set(obj["tags"].split(",")).isdisjoint(
self.config.config["exclude_tags"]
):
if isinstance(obj["tags"], str) and not set(tags).isdisjoint(tags_excl):
self.logger.debug(
f"vmid {obj['vmid']}: "
f"excluded by tags: {list(set(tags).intersection(tags_excl))}"
)
continue

filtered.append(item.copy())
Expand Down

0 comments on commit 1c3e4fc

Please sign in to comment.