diff --git a/eoptasks/eoptasks.py b/eoptasks/eoptasks.py index 9366816..900411c 100755 --- a/eoptasks/eoptasks.py +++ b/eoptasks/eoptasks.py @@ -30,6 +30,16 @@ class Server: self.name = servername self.keywords = set(re.split(r'[-_ \.]', servername + ' ' + group)) + # add all possible hostname parts as keywords, + # ex: node1.dev.entrouvert.org will add: + # node1.dev, node1.dev.entrouvert, node1.dev.entrouvert.org, + # dev.entrouvert, dev.entrouvert.org, entrouvert.org + parts = servername.split('.') + for i in range(len(parts)-1): + for j in range(i, len(parts)): + if i != j: + self.keywords.add('.'.join(parts[i:j+1])) + def __repr__(self): return '' % (self.name, self.keywords)