SCM¶
The SCM module allows you to specify the source code location for the
project. It adds the scm
attribute to the Job definition,
which accepts any number of scm definitions. It is also possible to pass
[]
to the scm
attribute. This is useful when a set of configs has a
global default scm
and you want to a particular job to override that
default with no SCM.
- Component: scm
- Macro
scm
- Entry Point
jenkins_jobs.scm
The scm module allows referencing multiple repositories in a Jenkins job. Note: Adding more than one scm definition requires the Jenkins Multiple SCMs plugin.
- Example of multiple repositories in a single job:
- scm: name: first-scm scm: - git: url: ssh://jenkins@review.openstack.org:29418/first.git branches: - origin/master - scm: name: second-scm scm: - git: url: ssh://jenkins@review.openstack.org:29418/second.git branches: - origin/master - scm: name: first-and-second scm: - first-scm - second-scm - job: name: my-job scm: - first-and-second
- Example of an empty
scm
: scm: []
- class scm.PipelineSCM(registry)¶
- gen_xml(xml_parent, data)¶
Update the XML element tree based on YAML data. Override this method to add elements to the XML output. Create new Element objects and add them to the xml_parent. The YAML data structure must not be modified.
- Parameters
parser (YAMLParser) – the global YAML Parser
xml_parent (Element) – the parent XML element
data (dict) – the YAML data structure
- class scm.SCM(registry)¶
- gen_xml(xml_parent, data)¶
Update the XML element tree based on YAML data. Override this method to add elements to the XML output. Create new Element objects and add them to the xml_parent. The YAML data structure must not be modified.
- Parameters
parser (YAMLParser) – the global YAML Parser
xml_parent (Element) – the parent XML element
data (dict) – the YAML data structure