#!/usr/bin/env python | |
try: | |
import jenkins | |
HAS_JENKINS = True | |
except ImportError: | |
HAS_JENKINS = False | |
import salt.config | |
def main(): | |
if not HAS_JENKINS: | |
return {} | |
output = { "jenkins_plugins" : {} } | |
opts = salt.config.minion_config('/etc/salt/minion') | |
try: | |
url = opts['jenkins']['url'] | |
except KeyError: | |
return {} | |
try: | |
user = opts['jenkins']['user'] | |
password = opts['jenkins']['password'] | |
except KeyError: | |
user = None | |
password = None | |
try: | |
server = jenkins.Jenkins(url, username=user, password=password) | |
plugins = server.get_plugins(depth=1) | |
except jenkins.JenkinsException: | |
return {} | |
for plugin_name, plugin_dict in plugins.iteritems(): | |
output["jenkins_plugins"][plugin_name[0]] = {"version" : (plugin_dict["version"] or 0)} | |
return output |