Merge "Add MongoDB plugin support"

This commit is contained in:
Jenkins 2014-11-25 19:33:00 +00:00 committed by Gerrit Code Review
commit aa3871ef45
6 changed files with 70 additions and 0 deletions

View File

@ -1026,6 +1026,41 @@ def logstash(parser, xml_parent, data):
key_sub_element.text = str(redis_config.get('key', 'logstash'))
def mongo_db(parser, xml_parent, data):
"""yaml: mongo-db build wrapper
Initalizes a MongoDB database while running the build.
Requires the Jenkins `MongoDB plugin.
<https://wiki.jenkins-ci.org/display/JENKINS/MongoDB+Plugin>`_
:arg str name: The name of the MongoDB install to use
:arg str data-directory: Data directory for the server (optional)
:arg int port: Port for the server (optional)
:arg str startup-params: Startup parameters for the server (optional)
:arg int start-timeout: How long to wait for the server to start in
milliseconds. 0 means no timeout. (default '0')
Example:
.. literalinclude:: /../../tests/wrappers/fixtures/mongo-db001.yaml
"""
mongodb = XML.SubElement(xml_parent,
'org.jenkinsci.plugins.mongodb.'
'MongoBuildWrapper')
mongodb.set('plugin', 'mongodb')
if not str(data.get('name', '')):
raise JenkinsJobsException('The mongo install name must be specified.')
XML.SubElement(mongodb, 'mongodbName').text = str(data.get('name', ''))
XML.SubElement(mongodb, 'port').text = str(data.get('port', ''))
XML.SubElement(mongodb, 'dbpath').text = str(data.get(
'data-directory', ''))
XML.SubElement(mongodb, 'parameters').text = str(data.get(
'startup-params', ''))
XML.SubElement(mongodb, 'startTimeout').text = str(data.get(
'start-timeout', '0'))
def delivery_pipeline(parser, xml_parent, data):
"""yaml: delivery-pipeline
If enabled the job will create a version based on the template.

View File

@ -213,6 +213,7 @@ jenkins_jobs.wrappers =
logstash=jenkins_jobs.modules.wrappers:logstash
mask-passwords=jenkins_jobs.modules.wrappers:mask_passwords
matrix-tie-parent=jenkins_jobs.modules.wrappers:matrix_tie_parent
mongo-db=jenkins_jobs.modules.wrappers:mongo_db
pathignore=jenkins_jobs.modules.wrappers:pathignore
port-allocator=jenkins_jobs.modules.wrappers:port_allocator
pre-scm-buildstep=jenkins_jobs.modules.wrappers:pre_scm_buildstep

View File

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<project>
<buildWrappers>
<org.jenkinsci.plugins.mongodb.MongoBuildWrapper plugin="mongodb">
<mongodbName>2.4.6</mongodbName>
<port>5555</port>
<dbpath>/var/tmp/mongo</dbpath>
<parameters>--bind_ip 127.0.0.1</parameters>
<startTimeout>5000</startTimeout>
</org.jenkinsci.plugins.mongodb.MongoBuildWrapper>
</buildWrappers>
</project>

View File

@ -0,0 +1,7 @@
wrappers:
- mongo-db:
name: 2.4.6
data-directory: /var/tmp/mongo
port: 5555
startup-params: "--bind_ip 127.0.0.1"
start-timeout: 5000

View File

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<project>
<buildWrappers>
<org.jenkinsci.plugins.mongodb.MongoBuildWrapper plugin="mongodb">
<mongodbName>2.4.6</mongodbName>
<port/>
<dbpath/>
<parameters/>
<startTimeout>0</startTimeout>
</org.jenkinsci.plugins.mongodb.MongoBuildWrapper>
</buildWrappers>
</project>

View File

@ -0,0 +1,3 @@
wrappers:
- mongo-db:
name: 2.4.6