Added support for Jenkins Campfire plugin
Basic setup of Campfire notifications from builds. Change-Id: I4e0bc43a1583fe51e0510743844d66e82b184e23
This commit is contained in:
parent
fedd76678b
commit
4400ed4f88
|
@ -91,6 +91,51 @@ def blame_upstream(parser, xml_parent, data):
|
||||||
'BlameUpstreamCommitersPublisher')
|
'BlameUpstreamCommitersPublisher')
|
||||||
|
|
||||||
|
|
||||||
|
def campfire(parser, xml_parent, data):
|
||||||
|
"""yaml: campfire
|
||||||
|
Send build notifications to Campfire rooms.
|
||||||
|
Requires the Jenkins `Campfire Plugin.
|
||||||
|
<https://wiki.jenkins-ci.org/display/JENKINS/Campfire+Plugin
|
||||||
|
|
||||||
|
Campfire notifications global default values must be configured for
|
||||||
|
the Jenkins instance. Default values will be used if no specific
|
||||||
|
values are specified for each job, so all config params are optional.
|
||||||
|
|
||||||
|
:arg str subdomain: override the default campfire subdomain
|
||||||
|
:arg str token: override the default API token
|
||||||
|
:arg bool ssl: override the default 'use SSL'
|
||||||
|
:arg str room: override the default room name
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
.. literalinclude:: /../../tests/publishers/fixtures/campfire001.yaml
|
||||||
|
|
||||||
|
"""
|
||||||
|
|
||||||
|
root = XML.SubElement(xml_parent,
|
||||||
|
'hudson.plugins.campfire.'
|
||||||
|
'CampfireNotifier')
|
||||||
|
|
||||||
|
campfire = XML.SubElement(root, 'campfire')
|
||||||
|
|
||||||
|
if ('subdomain' in data and data['subdomain']):
|
||||||
|
subdomain = XML.SubElement(campfire, 'subdomain')
|
||||||
|
subdomain.text = data['subdomain']
|
||||||
|
if ('token' in data and data['token']):
|
||||||
|
token = XML.SubElement(campfire, 'token')
|
||||||
|
token.text = data['token']
|
||||||
|
if ('ssl' in data):
|
||||||
|
ssl = XML.SubElement(campfire, 'ssl')
|
||||||
|
ssl.text = str(data['ssl']).lower()
|
||||||
|
|
||||||
|
if ('room' in data and data['room']):
|
||||||
|
room = XML.SubElement(root, 'room')
|
||||||
|
name = XML.SubElement(room, 'name')
|
||||||
|
name.text = data['room']
|
||||||
|
|
||||||
|
XML.SubElement(room, 'campfire reference="../../campfire"')
|
||||||
|
|
||||||
|
|
||||||
def emotional_jenkins(parser, xml_parent, data):
|
def emotional_jenkins(parser, xml_parent, data):
|
||||||
"""yaml: emotional-jenkins
|
"""yaml: emotional-jenkins
|
||||||
Emotional Jenkins.
|
Emotional Jenkins.
|
||||||
|
|
1
setup.py
1
setup.py
|
@ -124,6 +124,7 @@ setuptools.setup(
|
||||||
'blame-upstream=jenkins_jobs.modules.publishers:blame_upstream',
|
'blame-upstream=jenkins_jobs.modules.publishers:blame_upstream',
|
||||||
'build-publisher=jenkins_jobs.modules.publishers:build_publisher',
|
'build-publisher=jenkins_jobs.modules.publishers:build_publisher',
|
||||||
'checkstyle=jenkins_jobs.modules.publishers:checkstyle',
|
'checkstyle=jenkins_jobs.modules.publishers:checkstyle',
|
||||||
|
'campfire=jenkins_jobs.modules.publishers:campfire',
|
||||||
'cifs=jenkins_jobs.modules.publishers:cifs',
|
'cifs=jenkins_jobs.modules.publishers:cifs',
|
||||||
'claim-build=jenkins_jobs.modules.publishers:claim_build',
|
'claim-build=jenkins_jobs.modules.publishers:claim_build',
|
||||||
'cloverphp=jenkins_jobs.modules.publishers:cloverphp',
|
'cloverphp=jenkins_jobs.modules.publishers:cloverphp',
|
||||||
|
|
|
@ -0,0 +1,16 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<project>
|
||||||
|
<publishers>
|
||||||
|
<hudson.plugins.campfire.CampfireNotifier>
|
||||||
|
<campfire>
|
||||||
|
<subdomain>sub</subdomain>
|
||||||
|
<token>TOKEN</token>
|
||||||
|
<ssl>true</ssl>
|
||||||
|
</campfire>
|
||||||
|
<room>
|
||||||
|
<name>room</name>
|
||||||
|
<campfire reference="../../campfire"/>
|
||||||
|
</room>
|
||||||
|
</hudson.plugins.campfire.CampfireNotifier>
|
||||||
|
</publishers>
|
||||||
|
</project>
|
|
@ -0,0 +1,6 @@
|
||||||
|
publishers:
|
||||||
|
- campfire:
|
||||||
|
subdomain: 'sub'
|
||||||
|
ssl: true
|
||||||
|
token: 'TOKEN'
|
||||||
|
room: 'room'
|
|
@ -0,0 +1,8 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<project>
|
||||||
|
<publishers>
|
||||||
|
<hudson.plugins.campfire.CampfireNotifier>
|
||||||
|
<campfire/>
|
||||||
|
</hudson.plugins.campfire.CampfireNotifier>
|
||||||
|
</publishers>
|
||||||
|
</project>
|
|
@ -0,0 +1,2 @@
|
||||||
|
publishers:
|
||||||
|
- campfire
|
|
@ -0,0 +1,16 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<project>
|
||||||
|
<publishers>
|
||||||
|
<hudson.plugins.campfire.CampfireNotifier>
|
||||||
|
<campfire>
|
||||||
|
<subdomain>sub</subdomain>
|
||||||
|
<token>TOKEN</token>
|
||||||
|
<ssl>false</ssl>
|
||||||
|
</campfire>
|
||||||
|
<room>
|
||||||
|
<name>room</name>
|
||||||
|
<campfire reference="../../campfire"/>
|
||||||
|
</room>
|
||||||
|
</hudson.plugins.campfire.CampfireNotifier>
|
||||||
|
</publishers>
|
||||||
|
</project>
|
|
@ -0,0 +1,6 @@
|
||||||
|
publishers:
|
||||||
|
- campfire:
|
||||||
|
subdomain: 'sub'
|
||||||
|
ssl: false
|
||||||
|
token: 'TOKEN'
|
||||||
|
room: 'room'
|
Loading…
Reference in New Issue