|
@@ -130,18 +130,27 @@ def ffpb_rolloutstatus(bot, trigger):
|
|
result = {}
|
|
result = {}
|
|
skipped = 0
|
|
skipped = 0
|
|
|
|
|
|
|
|
+ arg = trigger.group(2)
|
|
# inform users about changed command parameters
|
|
# inform users about changed command parameters
|
|
- if not trigger.group(2) is None:
|
|
|
|
- bot.reply('Dieses Kommando nimmt keinen Parameter mehr an.')
|
|
|
|
|
|
+ if arg is not None and arg != 'all':
|
|
|
|
+ bot.reply('Dieses Kommando nimmt keinen Parameter außer \'all\' mehr an.')
|
|
return
|
|
return
|
|
|
|
|
|
|
|
+ # get all nodes
|
|
nodes = __batcave.get_nodes()
|
|
nodes = __batcave.get_nodes()
|
|
if nodes is None:
|
|
if nodes is None:
|
|
bot.reply('Hmpf, ich kriege gerade keine Infos. Das ist doch Mist so.')
|
|
bot.reply('Hmpf, ich kriege gerade keine Infos. Das ist doch Mist so.')
|
|
return
|
|
return
|
|
|
|
|
|
|
|
+ offlinenodes = 0
|
|
|
|
+ count_offline = (arg == "all")
|
|
|
|
+
|
|
# check each node in ALFRED data
|
|
# check each node in ALFRED data
|
|
for item in nodes:
|
|
for item in nodes:
|
|
|
|
+ if (not count_offline) and (item.get('status') not in ['active','stale']):
|
|
|
|
+ offlinenodes += 1
|
|
|
|
+ continue
|
|
|
|
+
|
|
release = item.get('firmware')
|
|
release = item.get('firmware')
|
|
branch = item.get('autoupdater')
|
|
branch = item.get('autoupdater')
|
|
enabled = branch != 'off'
|
|
enabled = branch != 'off'
|
|
@@ -188,6 +197,8 @@ def ffpb_rolloutstatus(bot, trigger):
|
|
if skipped > 0:
|
|
if skipped > 0:
|
|
bot.say('plus {0} Knoten mit unklarem Status'.format(skipped))
|
|
bot.say('plus {0} Knoten mit unklarem Status'.format(skipped))
|
|
|
|
|
|
|
|
+ if not count_offline and offlinenodes > 0:
|
|
|
|
+ bot.say('zudem wurden {0} Knoten ignoriert da sie nicht online sind'.format(offlinenodes))
|
|
|
|
|
|
@willie.module.commands('providers')
|
|
@willie.module.commands('providers')
|
|
def ffpb_providers(bot, trigger):
|
|
def ffpb_providers(bot, trigger):
|