The following plugin provides functionality available through Pipeline-compatible steps. Read more about how to integrate steps into your Pipeline in the Steps section of the Pipeline Syntax page.
For a list of other such plugins, see the Pipeline Steps Reference page.
checkout
: Check out from version controlscm
$class: 'AWSCodePipelineSCM'
name
String
clearWorkspace
boolean
region
String
awsAccessKey
In order to integrate with AWS CodePipeline, you must authorize access to the pipeline and its related artifacts. If you installed Jenkins on a supported Amazon EC2 instance type, such as Amazon Linux, you can install the AWS CLI and configure a profile with the required credentials. This is the preferred method. In all other cases, you can store AWS credentials in these fields. You should securely configure your Jenkins instance to use HTTPS so that these credentials are not sent unencrypted. For more information, see AWS CodePipeline Integration for Other Products and Services.
String
awsSecretKey
>In order to integrate with AWS CodePipeline, you must authorize access to the pipeline and its related artifacts. If you installed Jenkins on a supported Amazon EC2 instance type, such as Amazon Linux, you can install the AWS CLI and configure a profile with the required credentials. This is the preferred method. In all other cases, you can store AWS credentials in these fields. You should securely configure your Jenkins instance to use HTTPS so that these credentials are not sent unencrypted. For more information, see AWS CodePipeline Integration for Other Products and Services.
String
proxyHost
You might need a proxy host address if you are hosting Jenkins on a private network. The proxy name can be an IP address or DNS address. The AWS CodePipeline Plugin for Jenkins requires internet access. If access is not configured, you might see errors in the AWS CodePipeline Polling Log.
String
proxyPort
You might need a proxy port for your proxy host address if you are hosting Jenkins on a private network. The proxy port is a number, might be on port 8080, 3128, or 8443, depending on your network protocols and security settings. If access is not configured, you might see errors in the AWS CodePipeline Polling Log.
String
category
This is the category of the action type in AWS CodePipeline, and is usually either Build or Test. To see an example usage, see Install and Configure the AWS CodePipeline Plugin for Jenkins.
String
provider
This is the provider name of the action type in AWS CodePipeline. You must provide this exact string when adding an action for Jenkins in AWS CodePipeline. To see an example usage, see Install and Configure the AWS CodePipeline Plugin for Jenkins.
String
version
Leave the default as 1.
String
accurev
depot
String
stream
String
serverName
(optional)
String
serverUUID
(optional)
String
wspaceORreftree
(optional)
String
accurevTool
(optional)
String
cleanreftree
(optional)
boolean
directoryOffset
(optional)
String
dontPopContent
(optional)
boolean
filterForPollSCM
(optional)
String
ignoreStreamParent
(optional)
boolean
reftree
(optional)
String
snapshotNameFormat
(optional)
String
subPath
(optional)
String
subPathOnly
(optional)
boolean
synctime
(optional)
boolean
useSnapshot
(optional)
boolean
workspace
(optional)
String
$class: 'BazaarSCM'
source
String
cleantree
boolean
browser
$class: 'Loggerhead'
url
String
$class: 'OpenGrok'
url
String
rootModule
String
checkout
boolean
$class: 'BitKeeperSCM'
parent
String
localRepository
String
usePull
boolean
quiet
boolean
BbS
id
String
branches
name
Specify the branches if you'd like to track a specific branch in a repository. If left blank, all branches will be examined for changes and built.
The safest way is to use the refs/heads/<branchName>
syntax. This way the expected branch is unambiguous.
If your branch name has a /
in it make sure to use the full reference above. When not presented with a full path the plugin will only use the part of the string right of the last slash. Meaning foo/bar
will actually match bar
.
If you use a wildcard branch specifier, with a slash (e.g. release/
), you'll need to specify the origin repository in the branch names to make sure changes are picked up. So e.g. origin/release/
Possible options:
<branchName>
refs/heads/<branchName>
.master
, feature1
, ... refs/heads/<branchName>
refs/heads/master
, refs/heads/feature1/master
, ... <remoteRepoName>/<branchName>
refs/heads/<branchName>
.origin/master
remotes/<remoteRepoName>/<branchName>
remotes/origin/master
refs/remotes/<remoteRepoName>/<branchName>
refs/remotes/origin/master
<tagName>
refs/tags/<tagName>
instead.git-2.3.0
refs/tags/<tagName>
refs/tags/git-2.3.0
<commitId>
5062ac843f2b947733e6a3b105977056821bd352
, 5062ac84
, ... ${ENV_VARIABLE}
${TREEISH}
, refs/tags/${TAGNAME}
, ... <Wildcards>
REPOSITORYNAME/BRANCH
. In addition, BRANCH
is recognized as a shorthand of */BRANCH
, '*' is recognized as a wildcard, and '**' is recognized as wildcard that includes the separator '/'. Therefore, origin/branches*
would match origin/branches-foo
but not origin/branches/foo
, while origin/branches**
would match both origin/branches-foo
and origin/branches/foo
. :<regular expression>
:regexp
. Regular expression syntax in branches to build will only build those branches whose names match the regular expression.:^(?!(origin/prefix)).*
origin
or origin/master
or origin/feature
origin/prefix
or origin/prefix_123
or origin/prefix-abc
:origin/release-\d{8}
origin/release-20150101
origin/release-2015010
or origin/release-201501011
or origin/release-20150101-something
:^(?!origin/master$|origin/develop$).*
origin/branch1
or origin/branch-2
or origin/master123
or origin/develop-123
origin/master
or origin/develop
String
credentialsId
When running a job, Jenkins requires credentials to authenticate with Bitbucket Server. For example, to checkout the source code for builds. To do this, it needs credentials with access to the projects and repositories you want it to build from.
You can provide Jenkins with credentials here by:
In addition, you can provide Jenkins with SSH credentials below. If you do, Jenkins will use them for clone operations instead of the credentials you select here.
String
sshCredentialsId
If specified, Jenkins will use these credentials to check out the source code for builds. If no SSH credentials are specified, Jenkins will use the basic credentials instead.
To provide Jenkins with SSH credentials, you can:
String
extensions
$class: 'AuthorInChangelog'
$class: 'BuildChooserSetting'
This extension point in Jenkins is used by many other plugins to control the job to build specific commits. When you activate those plugins, you may see them installing a custom strategy here.
buildChooser
$class: 'AlternativeBuildChooser'
$class: 'AncestryBuildChooser'
maximumAgeInDays
int
ancestorCommitSha1
String
$class: 'DefaultBuildChooser'
$class: 'DeflakeGitBuildChooser'
$class: 'GerritTriggerBuildChooser'
$class: 'InverseBuildChooser'
$class: 'BuildSingleRevisionOnly'
$class: 'ChangelogToBranch'
options
compareRemote
origin
, that contains the branch you specify below.
String
compareTarget
String
$class: 'CheckoutOption'
timeout
int
$class: 'CleanBeforeCheckout'
.gitignore
. It also resets all tracked files to their versioned state. This ensures that the workspace is in the same state as if you cloned and checked out in a brand-new empty directory, and ensures that your build is not affected by the files generated by the previous build.
deleteUntrackedNestedRepositories
(optional)
.git
directories.
boolean
$class: 'CleanCheckout'
.gitignore
. It also resets all tracked files to their versioned state. This ensures that the workspace is in the same state as if you cloned and checked out in a brand-new empty directory, and ensures that your build is not affected by the files generated by the previous build.
deleteUntrackedNestedRepositories
(optional)
.git
directories.
boolean
$class: 'CloneOption'
shallow
boolean
noTags
boolean
reference
String
timeout
int
depth
(optional)
int
honorRefspec
(optional)
boolean
$class: 'CodeCommitURLHelper'
credentialId
OPTIONAL: Select the credentials to use.
If not specified, defaults to the DefaultAWSCredentialsProviderChain behaviour - *FROM THE JENKINS INSTANCE*
In the latter case, usage of IAM Role Profiles seems not to work, thus relying on environment variables / system properties or the ~/.aws/credentials file, thus not recommended.
String
repositoryName
String
$class: 'DisableRemotePoll'
$class: 'ExcludeFromChangeSet'
$class: 'ExcludeFromPoll'
$class: 'GitLFSPull'
$class: 'GitSCMChecksExtension'
verboseConsoleLog
(optional)
boolean
$class: 'GitSCMStatusChecksExtension'
name
(optional)
String
skip
(optional)
boolean
skipProgressUpdates
(optional)
boolean
suppressLogs
(optional)
boolean
unstableBuildNeutral
(optional)
boolean
$class: 'GitTagMessageExtension'
useMostRecentTag
(optional)
boolean
$class: 'IgnoreNotifyCommit'
$class: 'LocalBranch'
If selected, and its value is an empty string or "**", then the branch name is computed from the remote branch without the origin. In that case, a remote branch origin/master will be checked out to a local branch named master, and a remote branch origin/develop/new-feature will be checked out to a local branch named develop/newfeature.
Please note that this has not been tested with submodules.
localBranch
String
$class: 'MessageExclusion'
excludedMessage
.*\[maven-release-plugin\].*The example above illustrates that if only revisions with "[maven-release-plugin]" message in first comment line have been committed to the SCM a build will not occur. You can create more complex patterns using embedded flag expressions.
(?s).*FOO.*This example will search FOO message in all comment lines.
String
$class: 'PathRestriction'
includedRegions
myapp/src/main/web/.*\.html myapp/src/main/web/.*\.jpeg myapp/src/main/web/.*\.gifThe example above illustrates that a build will only occur, if html/jpeg/gif files have been committed to the SCM. Exclusions take precedence over inclusions, if there is an overlap between included and excluded regions.
String
excludedRegions
myapp/src/main/web/.*\.html myapp/src/main/web/.*\.jpeg myapp/src/main/web/.*\.gifThe example above illustrates that if only html/jpeg/gif files have been committed to the SCM a build will not occur.
String
$class: 'PerBuildTag'
$class: 'PreBuildMerge'
options
mergeTarget
master
.
String
fastForwardMode
(optional)
FF
, FF_ONLY
, NO_FF
mergeRemote
(optional)
origin
, that contains the branch you specify below. If left blank, it'll default to the name of the first repository configured above.
String
mergeStrategy
(optional)
DEFAULT
, RESOLVE
, RECURSIVE
, OCTOPUS
, OURS
, SUBTREE
, RECURSIVE_THEIRS
pretestedIntegration
gitIntegrationStrategy
accumulated
shortCommitMessage
(optional)
boolean
ffonly
shortCommitMessage
(optional)
boolean
squash
integrationBranch
The branch name must match your integration branch name. No trailing slash.
git checkout -B <Branch name> <Repository name>/<Branch name> git merge --squash <Branch matched by git> git commit -C <Branch matched by git>
git checkout -B <Branch name> <Repository name>/<Branch name> git merge -m <commitMsg> <Branch matched by git> --no-ff
Changes are only ever pushed when the build results is SUCCESS
git push <Repository name> <Branch name>
String
repoName
The repository name. In git the repository is always the name of the remote. So if you have specified a repository name in your Git configuration. You need to specify the exact same name here, otherwise no integration will be performed. We do the merge based on this.
No trailing slash on repository name.
Remember to specify this when working with NAMED repositories in Git
String
$class: 'PruneStaleBranch'
pruneTags
pruneTags
boolean
$class: 'RelativeTargetDirectory'
relativeTargetDir
This extension should not be used in Jenkins Pipeline (either declarative or scripted). Jenkins Pipeline already provides standard techniques for checkout to a subdirectory. Use ws and dir in Jenkins Pipeline rather than this extension.
String
$class: 'ScmName'
Unique name for this SCM. Needed when using Git within the Multi SCM plugin.
name
String
$class: 'SparseCheckoutPaths'
Specify the paths that you'd like to sparse checkout. This may be used for saving space (Think about a reference repository). Be sure to use a recent version of Git, at least above 1.7.10
sparseCheckoutPaths
path
String
$class: 'SubmoduleOption'
disableSubmodules
boolean
recursiveSubmodules
boolean
trackingSubmodules
boolean
reference
git init --bare git remote add SubProject1 https://gitrepo.com/subproject1 git remote add SubProject2 https://gitrepo.com/subproject2 git fetch --all
String
timeout
int
parentCredentials
boolean
depth
(optional)
int
shallow
(optional)
boolean
threads
(optional)
int
$class: 'UserExclusion'
excludedUsers
auto_build_userThe example above illustrates that if only revisions by "auto_build_user" have been committed to the SCM a build will not occur.
String
$class: 'UserIdentity'
name
If given, "GIT_COMMITTER_NAME=[this]" and "GIT_AUTHOR_NAME=[this]" are set for builds. This overrides whatever is in the global settings.
String
email
If given, "GIT_COMMITTER_EMAIL=[this]" and "GIT_AUTHOR_EMAIL=[this]" are set for builds. This overrides whatever is in the global settings.
String
$class: 'WipeWorkspace'
gitTool
String
projectName
Enter the name of the Bitbucket Server project containing the repository you want Jenkins to build from. To find a project, start typing. If it doesn't appear in the search results, the credentials that you've chosen may not have read access to it and you'll need to provide different credentials.
To get Jenkins to build from a personal repository, enter a tilde (~
) followed by repository owner's username. For example, ~jsmith.
String
repositoryName
Enter the Bitbucket Server repository you want Jenkins to build from. To find a repository, start typing. If it doesn't appear in the search results, the credentials that you've chosen may not have read access to it and you'll need to provide different credentials.
To get Jenkins to build from a personal repository, enter its slug. This is the URL-friendly version of the repository name. For example, a repository called my example repo will have the slug my-example-repo, and you can see this in its URL, https://bitbucketserver.mycompany.com/myproject/my-example-repo.
String
serverId
Choose the Bitbucket Server instance containing the repository you want Jenkins to build from. If you can't find your instance, check this plugin's configuration and try again.
String
mirrorName
Choose the location that Jenkins should clone from when running this build. This can be the primary server or a mirror if one is available. To see available mirrors, first choose a Bitbucket Server project and repository.
String
$class: 'BlameSubversionSCM'
if it is false and the build is not triggered by upstream job,
the plugin will not collect any svn info from upstream job.
else the plugin will collect svn info from latest upstream job
alwaysCollectSVNInfo
boolean
$class: 'CCUCMScm'
loadModule
String
newest
boolean
mode
$class: 'PollChildMode'
levelToPoll
String
component
(optional)
String
createBaseline
(optional)
Check this if you want create a baseline after a completed deliver.
This is only applicable for child and sibling poll mode.
boolean
newest
(optional)
boolean
$class: 'PollRebaseMode'
levelToPoll
String
component
(optional)
String
createBaseline
(optional)
boolean
excludeList
(optional)
String
$class: 'PollSelfMode'
levelToPoll
String
component
(optional)
String
newest
(optional)
boolean
$class: 'PollSiblingMode'
levelToPoll
String
component
(optional)
String
createBaseline
(optional)
Check this if you want create a baseline after a completed deliver.
This is only applicable for child and sibling poll mode.
boolean
newest
(optional)
boolean
useHyperLinkForPolling
(optional)
boolean
$class: 'PollSubscribeMode'
levelToPoll
String
componentsToMonitor
componentSelection
String
jobsToMonitor
jobname
String
ignores
String
jobName
(optional)
String
cascadePromotion
(optional)
boolean
component
(optional)
String
newest
(optional)
boolean
stream
String
treatUnstable
String
nameTemplate
String
forceDeliver
boolean
recommend
boolean
makeTag
boolean
setDescription
boolean
buildProject
String
removeViewPrivateFiles
boolean
trimmedChangeSet
boolean
discard
boolean
$class: 'CVSSCM'
repositories
cvsRoot
String
passwordRequired
boolean
password
String
repositoryItems
location
$class: 'BranchRepositoryLocation'
branchName
String
useHeadIfNotFound
boolean
$class: 'HeadRepositoryLocation'
$class: 'TagRepositoryLocation'
tagName
String
useHeadIfNotFound
boolean
modules
remoteName
String
localName
String
projectsetFileName
String
excludedRegions
src/main/web/.*\.html src/main/web/.*\.jpeg src/main/web/.*\.gifThe example above illustrates that if only html/jpeg/gif files have been committed to the SCM a build will not occur. More information on regular expressions can be found here.
pattern
String
compressionLevel
int
repositoryBrowser
$class: 'FishEyeCVS'
url
String
$class: 'OpenGrok'
url
String
$class: 'ViewCVS'
url
String
canUseUpdate
boolean
legacy
If you have multiple modules to check out, this option is forced (otherwise they'll overlap.)
This affects other path specifiers, such as artifact archivers --- you now specify "build/foo.jar" instead of "foo/build/foo.jar".
boolean
skipChangeLog
boolean
pruneEmptyDirectories
boolean
disableCvsQuiet
boolean
cleanOnFailedUpdate
boolean
forceCleanCopy
boolean
checkoutCurrentTimestamp
The build quiet period is designed to assist with CVS checkouts by waiting for a specific period of time without commits. Normally you want the checkout to reflect the time when the quiet period was exited successfully. Select this option if you need to re-enable the legacy behaviour of Jenkins, i.e. using the time that the build started checking out as the timestamp for the checkout operation. Note: enabling this option can result in the quiet period being defeated especially in those cases where the build is not able to start immediately after exiting the quiet period.
boolean
$class: 'ClearCaseSCM'
branch
String
label
String
extractConfigSpec
boolean
configSpecFileName
String
refreshConfigSpec
boolean
refreshConfigSpecCommand
String
configSpec
String
viewTag
String
useupdate
boolean
extractLoadRules
boolean
loadRules
String
useOtherLoadRulesForPolling
boolean
loadRulesForPolling
String
usedynamicview
boolean
viewdrive
String
mkviewoptionalparam
String
filterOutDestroySubBranchEvent
boolean
doNotUpdateConfigSpec
boolean
rmviewonrename
boolean
excludedRegions
String
multiSitePollBuffer
String
useTimeRule
boolean
createDynView
boolean
viewPath
String
changeset
ALL
, BRANCH
, NONE
, UPDT
viewStorage
Three strategies are currently available to manage view storage location.
$class: 'DefaultViewStorage'
$class: 'ServerViewStorage'
assignedLabelString
Label expression used to populate view storage location dropdown.
String
server
The view storage location that will be passed to the -stgloc option.
The list of available servers is retrieved using cleartool lsstgloc -view
Note that auto is always available.
String
$class: 'SpecificViewStorage'
winStorageDir
String
unixStorageDir
String
$class: 'ClearCaseUcmBaselineSCM'
$class: 'ClearCaseUcmSCM'
stream
String
loadrules
String
viewTag
String
usedynamicview
boolean
viewdrive
String
mkviewoptionalparam
String
filterOutDestroySubBranchEvent
boolean
useUpdate
boolean
rmviewonrename
boolean
excludedRegions
String
multiSitePollBuffer
String
overrideBranchName
String
createDynView
boolean
freezeCode
boolean
recreateView
boolean
allocateViewName
boolean
viewPath
String
useManualLoadRules
boolean
changeset
ALL
, BRANCH
, NONE
, UPDT
viewStorage
Three strategies are currently available to manage view storage location.
$class: 'DefaultViewStorage'
$class: 'ServerViewStorage'
assignedLabelString
Label expression used to populate view storage location dropdown.
String
server
The view storage location that will be passed to the -stgloc option.
The list of available servers is retrieved using cleartool lsstgloc -view
Note that auto is always available.
String
$class: 'SpecificViewStorage'
winStorageDir
String
unixStorageDir
String
buildFoundationBaseline
If checked, instead of creating a view on the current stream, the job will look up the current foundation baselines for the given stream and work in readonly on these baselines. If polling is enabled, the build will be triggered every time a new foundation baseline is detected on the given stream.
boolean
$class: 'CloneWorkspaceSCM'
parentJobName
String
criteria
String
$class: 'CmvcSCM'
family
String
become
String
releases
String
checkoutScript
String
trackViewReportWhereClause
String
$class: 'ConfigurationRotator'
acrs
$class: 'ClearCaseUCM'
pvobName
String
contribute
Contribute data to a global database. Defined in the Compatibility Action Storage Plugin.
boolean
targets
baselineName
String
level
INITIAL
, BUILT
, TESTED
, RELEASED
, REJECTED
fixed
boolean
useNewest
(optional)
boolean
$class: 'Git'
targets
name
String
repository
String
branch
String
commitId
String
fixed
boolean
useNewest
(optional)
boolean
$class: 'CvsProjectset'
repositories
cvsRoot
String
passwordRequired
boolean
password
String
repositoryItems
location
$class: 'BranchRepositoryLocation'
branchName
String
useHeadIfNotFound
boolean
$class: 'HeadRepositoryLocation'
$class: 'TagRepositoryLocation'
tagName
String
useHeadIfNotFound
boolean
modules
remoteName
String
localName
String
projectsetFileName
String
excludedRegions
src/main/web/.*\.html src/main/web/.*\.jpeg src/main/web/.*\.gifThe example above illustrates that if only html/jpeg/gif files have been committed to the SCM a build will not occur. More information on regular expressions can be found here.
pattern
String
compressionLevel
int
repositoryBrowser
$class: 'FishEyeCVS'
url
String
$class: 'OpenGrok'
url
String
$class: 'ViewCVS'
url
String
canUseUpdate
boolean
username
String
password
String
browser
$class: 'FishEyeCVS'
url
String
$class: 'OpenGrok'
url
String
$class: 'ViewCVS'
url
String
skipChangeLog
boolean
pruneEmptyDirectories
boolean
disableCvsQuiet
boolean
cleanOnFailedUpdate
boolean
forceCleanCopy
boolean
$class: 'DarcsScm'
source
String
localDir
String
clean
boolean
browser
$class: 'DarcsWeb'
url
String
repo
String
$class: 'Darcsden'
url
String
$class: 'DimensionsSCM'
project
String
credentialsType
String
userName
String
password
String
pluginServer
String
userServer
String
keystoreServer
String
pluginDatabase
String
userDatabase
String
keystoreDatabase
String
keystorePath
String
certificateAlias
String
credentialsId
String
certificatePassword
String
keystorePassword
String
certificatePath
String
remoteCertificatePassword
String
secureAgentAuth
boolean
canJobDelete
(optional)
boolean
canJobExpand
(optional)
boolean
canJobForce
(optional)
boolean
canJobNoMetadata
(optional)
boolean
canJobNoTouch
(optional)
boolean
canJobRevert
(optional)
boolean
canJobUpdate
(optional)
boolean
eol
(optional)
String
folders
(optional)
value
String
pathsToExclude
(optional)
value
String
permissions
(optional)
String
timeZone
(optional)
String
webUrl
(optional)
String
$class: 'DrushMakefileSCM'
makefile
Specify the content of the Makefile. Support for YAML Makefiles depends on the version of Drush you have installed.
This example will generate a vanilla Drupal 7.38:
api=2 core=7.x projects[drupal][version]=7.38
String
root
String
$class: 'EndevorConfiguration'
connectionId
String
filterPattern
String
fileExtension
String
credentialsId
String
targetFolder
String
filesystem
path
The file path for the source code.
e.g. \\Server1\project1\src or c:\myproject\src
Note for distributed build environment, please make sure the path is accessible on remote node(s)
String
clearWorkspace
If true, the system will delete all existing files/sub-folders in workspace before checking-out. Poll changes will not be affected by this setting.
boolean
copyHidden
If true, the system will copy hidden files and folders as well. Default is false.
boolean
filterSettings
includeFilter
boolean
selectors
You can apply wildcard filter(s) when detecting changes and copying files. By default, the system will filter out hidden files, on Unix, that means files/folder starting with ".", on Windows, that means files/folders with "hidden" attribute. You may want to filter out, e.g. files with ".tmp" extension.
Note: filters are applied on both sides, source and destination (i.e. the workspace). E.g. if you filter out ".tmp" files, all ".tmp" files currently in workspace will not be removed.
wildcard
ANT style wildcard.
To include just *.java, set filter type to "Include" and type add "*.java" (without quote) in the wildcard. To exclude *.exe" and all JUnit test cases, set filter type to "Exclude" and add two wildcard, one for "*.dll" and one for "*Test*"
To exclude a directory, set filter to "**/dir_to_exclude/**"
Note: (1) the wildcard is case insensitive, (2) all backslashes (\) will be replaced with slashes (/)
String
$class: 'FeatureBranchAwareMercurialSCM'
installation
String
source
String
branch
String
modules
String
subdir
my/sources
(use forward slashes). If changing this entry, you probably want to clean the workspace first.
String
browser
$class: 'FishEye'
url
String
$class: 'GoogleCode'
url
String
$class: 'HgWeb'
url
String
$class: 'Kallithea'
url
String
$class: 'KilnHG'
url
String
$class: 'RhodeCode'
url
String
$class: 'RhodeCodeLegacy'
url
String
$class: 'ScmManager'
url
http://YOURSCMMANAGER/scm/repo/NAMESPACE/NAME/
).
String
clean
boolean
branchPattern
String
$class: 'GeneXusServerSCM'
gxInstallationId
String
serverURL
String
credentialsId
Credentials to use when authenticating to the GeneXus Server.
Select the credentials you want to use or click "Add" to enter a new user/password pair.
String
kbName
String
kbVersion
Name of the Version that will be selected when creating a local copy of the Knowledge Base.
If you leave it blank the 'Trunk' version will be selected by default.
String
localKbPath
Path to the local Knowledge Base to use as working copy.
If you leave it blank the default ${WORKSPACE}\KBname
will apply.
String
localKbVersion
Name of the Version in the local Knowledge Base that is linked to the Version in the server.
If you leave it blank the 'Trunk' version will be selected by default.
String
kbDbServerInstance
String
kbDbCredentialsId
Credentials to use when to connecting to SQL Server.
Select "none" for Windows Authentication.
String
kbDbName
Name of the SQL Server database used for the local Knowledge Base.
Leave it blank to use the default database name.
String
kbDbInSameFolder
Create the database files in the same folder as the Knowledge Base when checking out. Default is 'true
'.
If kbDbInSameFolder
is true or not set, then the database files will be created in the same folder as the Knowledge Base. If kbDbInSameFolder
is false, then the database files will be created in the default folder configured for the SQL Server at kbDbServerInstance (optional)
.
boolean
$class: 'GitSCM'
The git plugin provides fundamental git operations for Jenkins projects. It can poll, fetch, checkout, and merge contents of git repositories.
The git plugin provides an SCM implementation to be used with the Pipeline SCM checkout
step. The Pipeline Syntax Snippet Generator guides the user to select git plugin checkout options and provides online help for each of the options.
userRemoteConfigs
${SUPER_PROJECT_URL}/${SUBMODULE}
, rather than relying on information from .gitmodules.url
git clone
command.
String
name
origin
, to uniquely identify this repository among other remote repositories. This is the same "name" that you use in your git remote
command. If left empty, Jenkins will generate unique names for you.
You normally want to specify this when you have multiple remote repositories.
String
refspec
git fetch
, which retrieves all the branch heads as remotes/REPOSITORYNAME/BRANCHNAME
. This default behaviour is OK for most cases.
In other words, the default refspec is "+refs/heads/*:refs/remotes/REPOSITORYNAME/*" where REPOSITORYNAME
is the value you specify in the above "name of repository" textbox.
When do you want to modify this value? A good example is when you want to just retrieve one branch. For example, +refs/heads/master:refs/remotes/origin/master
would only retrieve the master branch and nothing else.
The plugin uses a default refspec for its initial fetch, unless the "Advanced Clone Option" is set to honor refspec. This keeps compatibility with previous behavior, and allows the job definition to decide if the refspec should be honored on initial clone.
Multiple refspecs can be entered by separating them with a space character. +refs/heads/master:refs/remotes/origin/master +refs/heads/develop:refs/remotes/origin/develop
retrieves the master branch and the develop branch and nothing else.
See the refspec definition in Git user manual for more details.
String
credentialsId
String
branches
name
Specify the branches if you'd like to track a specific branch in a repository. If left blank, all branches will be examined for changes and built.
The safest way is to use the refs/heads/<branchName>
syntax. This way the expected branch is unambiguous.
If your branch name has a /
in it make sure to use the full reference above. When not presented with a full path the plugin will only use the part of the string right of the last slash. Meaning foo/bar
will actually match bar
.
If you use a wildcard branch specifier, with a slash (e.g. release/
), you'll need to specify the origin repository in the branch names to make sure changes are picked up. So e.g. origin/release/
Possible options:
<branchName>
refs/heads/<branchName>
.master
, feature1
, ... refs/heads/<branchName>
refs/heads/master
, refs/heads/feature1/master
, ... <remoteRepoName>/<branchName>
refs/heads/<branchName>
.origin/master
remotes/<remoteRepoName>/<branchName>
remotes/origin/master
refs/remotes/<remoteRepoName>/<branchName>
refs/remotes/origin/master
<tagName>
refs/tags/<tagName>
instead.git-2.3.0
refs/tags/<tagName>
refs/tags/git-2.3.0
<commitId>
5062ac843f2b947733e6a3b105977056821bd352
, 5062ac84
, ... ${ENV_VARIABLE}
${TREEISH}
, refs/tags/${TAGNAME}
, ... <Wildcards>
REPOSITORYNAME/BRANCH
. In addition, BRANCH
is recognized as a shorthand of */BRANCH
, '*' is recognized as a wildcard, and '**' is recognized as wildcard that includes the separator '/'. Therefore, origin/branches*
would match origin/branches-foo
but not origin/branches/foo
, while origin/branches**
would match both origin/branches-foo
and origin/branches/foo
. :<regular expression>
:regexp
. Regular expression syntax in branches to build will only build those branches whose names match the regular expression.:^(?!(origin/prefix)).*
origin
or origin/master
or origin/feature
origin/prefix
or origin/prefix_123
or origin/prefix-abc
:origin/release-\d{8}
origin/release-20150101
origin/release-2015010
or origin/release-201501011
or origin/release-20150101-something
:^(?!origin/master$|origin/develop$).*
origin/branch1
or origin/branch-2
or origin/master123
or origin/develop-123
origin/master
or origin/develop
String
browser
$class: 'AssemblaWeb'
repoUrl
String
$class: 'BacklogGitRepositoryBrowser'
repoName
String
repoUrl
String
bitbucketServer
repoUrl
String
$class: 'BitbucketWeb'
repoUrl
String
$class: 'CGit'
repoUrl
String
$class: 'FisheyeGitRepositoryBrowser'
repoUrl
String
$class: 'GitBlitRepositoryBrowser'
repoUrl
String
projectName
String
$class: 'GitBucketBrowser'
url
String
$class: 'GitLab'
repoUrl
String
version
(optional)
String
$class: 'GitLabBrowser'
https://gitLab.example.com
then the URL for bob's skunkworks project might be https://gitLab.example.com/bob/skunkworks
.
projectUrl
https://gitLab.example.com
then the URL for bob's skunkworks project might be https://gitLab.example.com/bob/skunkworks
String
$class: 'GitList'
repoUrl
String
$class: 'GitWeb'
repoUrl
String
$class: 'GiteaBrowser'
repoUrl
https://gitea.example.com
then the URL for bob's skunkworks project repository might be https://gitea.example.com/bob/skunkworks
String
$class: 'GithubWeb'
repoUrl
String
$class: 'Gitiles'
repoUrl
String
$class: 'GitoriousWeb'
repoUrl
String
$class: 'GogsGit'
repoUrl
String
$class: 'KilnGit'
repoUrl
String
$class: 'Phabricator'
repoUrl
String
repo
String
$class: 'RedmineWeb'
repoUrl
String
$class: 'RhodeCode'
repoUrl
String
$class: 'ScmManagerGitRepositoryBrowser'
repoUrl
String
$class: 'Stash'
repoUrl
String
$class: 'TFS2013GitRepositoryBrowser'
repoUrl
If TFS is also used as the repository server, this can usually be left blank.
String
$class: 'TracGitRepositoryBrowser'
$class: 'TuleapBrowser'
repositoryUrl
String
$class: 'ViewGitWeb'
repoUrl
String
projectName
String
gitTool
Absolute path to the git executable.
This is different from other Jenkins tool definitions. Rather than providing the directory that contains the executable, you must provide the complete path to the executable. Setting '/usr/bin/git
' would be correct, while setting '/usr/bin/
' is not correct.
String
extensions
Extensions add new behavior or modify existing plugin behavior for different uses. Extensions help users more precisely tune plugin behavior to meet their needs.
Extensions include:
$class: 'AuthorInChangelog'
$class: 'BuildChooserSetting'
This extension point in Jenkins is used by many other plugins to control the job to build specific commits. When you activate those plugins, you may see them installing a custom strategy here.
buildChooser
$class: 'AlternativeBuildChooser'
$class: 'AncestryBuildChooser'
maximumAgeInDays
int
ancestorCommitSha1
String
$class: 'DefaultBuildChooser'
$class: 'DeflakeGitBuildChooser'
$class: 'GerritTriggerBuildChooser'
$class: 'InverseBuildChooser'
$class: 'BuildSingleRevisionOnly'
$class: 'ChangelogToBranch'
options
compareRemote
origin
, that contains the branch you specify below.
String
compareTarget
String
$class: 'CheckoutOption'
timeout
int
$class: 'CleanBeforeCheckout'
.gitignore
. It also resets all tracked files to their versioned state. This ensures that the workspace is in the same state as if you cloned and checked out in a brand-new empty directory, and ensures that your build is not affected by the files generated by the previous build.
deleteUntrackedNestedRepositories
(optional)
.git
directories.
boolean
$class: 'CleanCheckout'
.gitignore
. It also resets all tracked files to their versioned state. This ensures that the workspace is in the same state as if you cloned and checked out in a brand-new empty directory, and ensures that your build is not affected by the files generated by the previous build.
deleteUntrackedNestedRepositories
(optional)
.git
directories.
boolean
$class: 'CloneOption'
shallow
boolean
noTags
boolean
reference
String
timeout
int
depth
(optional)
int
honorRefspec
(optional)
boolean
$class: 'CodeCommitURLHelper'
credentialId
OPTIONAL: Select the credentials to use.
If not specified, defaults to the DefaultAWSCredentialsProviderChain behaviour - *FROM THE JENKINS INSTANCE*
In the latter case, usage of IAM Role Profiles seems not to work, thus relying on environment variables / system properties or the ~/.aws/credentials file, thus not recommended.
String
repositoryName
String
$class: 'DisableRemotePoll'
$class: 'ExcludeFromChangeSet'
$class: 'ExcludeFromPoll'
$class: 'GitLFSPull'
$class: 'GitSCMChecksExtension'
verboseConsoleLog
(optional)
boolean
$class: 'GitSCMStatusChecksExtension'
name
(optional)
String
skip
(optional)
boolean
skipProgressUpdates
(optional)
boolean
suppressLogs
(optional)
boolean
unstableBuildNeutral
(optional)
boolean
$class: 'GitTagMessageExtension'
useMostRecentTag
(optional)
boolean
$class: 'IgnoreNotifyCommit'
$class: 'LocalBranch'
If selected, and its value is an empty string or "**", then the branch name is computed from the remote branch without the origin. In that case, a remote branch origin/master will be checked out to a local branch named master, and a remote branch origin/develop/new-feature will be checked out to a local branch named develop/newfeature.
Please note that this has not been tested with submodules.
localBranch
String
$class: 'MessageExclusion'
excludedMessage
.*\[maven-release-plugin\].*The example above illustrates that if only revisions with "[maven-release-plugin]" message in first comment line have been committed to the SCM a build will not occur. You can create more complex patterns using embedded flag expressions.
(?s).*FOO.*This example will search FOO message in all comment lines.
String
$class: 'PathRestriction'
includedRegions
myapp/src/main/web/.*\.html myapp/src/main/web/.*\.jpeg myapp/src/main/web/.*\.gifThe example above illustrates that a build will only occur, if html/jpeg/gif files have been committed to the SCM. Exclusions take precedence over inclusions, if there is an overlap between included and excluded regions.
String
excludedRegions
myapp/src/main/web/.*\.html myapp/src/main/web/.*\.jpeg myapp/src/main/web/.*\.gifThe example above illustrates that if only html/jpeg/gif files have been committed to the SCM a build will not occur.
String
$class: 'PerBuildTag'
$class: 'PreBuildMerge'
options
mergeTarget
master
.
String
fastForwardMode
(optional)
FF
, FF_ONLY
, NO_FF
mergeRemote
(optional)
origin
, that contains the branch you specify below. If left blank, it'll default to the name of the first repository configured above.
String
mergeStrategy
(optional)
DEFAULT
, RESOLVE
, RECURSIVE
, OCTOPUS
, OURS
, SUBTREE
, RECURSIVE_THEIRS
pretestedIntegration
gitIntegrationStrategy
accumulated
shortCommitMessage
(optional)
boolean
ffonly
shortCommitMessage
(optional)
boolean
squash
integrationBranch
The branch name must match your integration branch name. No trailing slash.
git checkout -B <Branch name> <Repository name>/<Branch name> git merge --squash <Branch matched by git> git commit -C <Branch matched by git>
git checkout -B <Branch name> <Repository name>/<Branch name> git merge -m <commitMsg> <Branch matched by git> --no-ff
Changes are only ever pushed when the build results is SUCCESS
git push <Repository name> <Branch name>
String
repoName
The repository name. In git the repository is always the name of the remote. So if you have specified a repository name in your Git configuration. You need to specify the exact same name here, otherwise no integration will be performed. We do the merge based on this.
No trailing slash on repository name.
Remember to specify this when working with NAMED repositories in Git
String
$class: 'PruneStaleBranch'
pruneTags
pruneTags
boolean
$class: 'RelativeTargetDirectory'
relativeTargetDir
This extension should not be used in Jenkins Pipeline (either declarative or scripted). Jenkins Pipeline already provides standard techniques for checkout to a subdirectory. Use ws and dir in Jenkins Pipeline rather than this extension.
String
$class: 'ScmName'
Unique name for this SCM. Needed when using Git within the Multi SCM plugin.
name
String
$class: 'SparseCheckoutPaths'
Specify the paths that you'd like to sparse checkout. This may be used for saving space (Think about a reference repository). Be sure to use a recent version of Git, at least above 1.7.10
sparseCheckoutPaths
path
String
$class: 'SubmoduleOption'
disableSubmodules
boolean
recursiveSubmodules
boolean
trackingSubmodules
boolean
reference
git init --bare git remote add SubProject1 https://gitrepo.com/subproject1 git remote add SubProject2 https://gitrepo.com/subproject2 git fetch --all
String
timeout
int
parentCredentials
boolean
depth
(optional)
int
shallow
(optional)
boolean
threads
(optional)
int
$class: 'UserExclusion'
excludedUsers
auto_build_userThe example above illustrates that if only revisions by "auto_build_user" have been committed to the SCM a build will not occur.
String
$class: 'UserIdentity'
name
If given, "GIT_COMMITTER_NAME=[this]" and "GIT_AUTHOR_NAME=[this]" are set for builds. This overrides whatever is in the global settings.
String
email
If given, "GIT_COMMITTER_EMAIL=[this]" and "GIT_AUTHOR_EMAIL=[this]" are set for builds. This overrides whatever is in the global settings.
String
$class: 'WipeWorkspace'
doGenerateSubmoduleConfigurations
(optional)
Removed facility that was intended to test combinations of git submodule versions. Removed in git plugin 4.6.0. Ignores the user provided value and always uses false
as its value.
boolean
submoduleCfg
(optional)
Removed facility that was intended to test combinations of git submodule versions. Removed in git plugin 4.6.0. Ignores the user provided value(s) and always uses empty values.
submoduleName
Removed in git plugin 4.6.0.
String
branches
Removed in git plugin 4.6.0.
String
$class: 'HarvestSCM'
broker
String
passwordFile
String
userId
String
password
String
projectName
String
state
String
viewPath
String
clientPath
String
processName
String
recursiveSearch
String
useSynchronize
boolean
extraOptions
String
$class: 'IntegritySCM'
serverConfig
String
configPath
String
configurationName
String
CPBasedMode
(optional)
boolean
alternateWorkspace
(optional)
String
browser
(optional)
$class: 'IntegrityWebUI'
url
String
checkoutThreadPoolSize
(optional)
int
checkoutThreadTimeout
(optional)
int
checkpointBeforeBuild
(optional)
boolean
checkpointLabel
(optional)
String
cleanCopy
(optional)
boolean
deleteNonMembers
(optional)
boolean
excludeList
(optional)
String
fetchChangedWorkspaceFiles
(optional)
boolean
includeList
(optional)
String
lineTerminator
(optional)
String
localClient
(optional)
boolean
password
(optional)
String
restoreTimestamp
(optional)
boolean
sandboxScope
(optional)
String
skipAuthorInfo
(optional)
boolean
userName
(optional)
String
$class: 'IspwConfiguration'
connectionId
String
credentialsId
String
serverConfig
String
serverStream
String
serverApplication
String
serverLevel
String
levelOption
String
componentType
String
folderName
String
ispwDownloadAll
boolean
targetFolder
String
ispwDownloadIncl
boolean
ispwDownloadWithCompileOnly
boolean
$class: 'IspwContainerConfiguration'
connectionId
String
credentialsId
String
serverConfig
String
containerName
String
containerType
String
serverLevel
String
componentType
String
ispwDownloadAll
boolean
targetFolder
String
ispwDownloadIncl
boolean
$class: 'MercurialSCM'
source
String
browser
(optional)
$class: 'FishEye'
url
String
$class: 'GoogleCode'
url
String
$class: 'HgWeb'
url
String
$class: 'Kallithea'
url
String
$class: 'KilnHG'
url
String
$class: 'RhodeCode'
url
String
$class: 'RhodeCodeLegacy'
url
String
$class: 'ScmManager'
url
http://YOURSCMMANAGER/scm/repo/NAMESPACE/NAME/
).
String
clean
(optional)
boolean
credentialsId
(optional)
String
disableChangeLog
(optional)
boolean
installation
(optional)
String
modules
(optional)
String
revision
(optional)
default
branch.)
String
revisionType
(optional)
BRANCH
, TAG
, CHANGESET
, REVSET
subdir
(optional)
my/sources
(use forward slashes). If changing this entry, you probably want to clean the workspace first.
String
$class: 'MergeBotUpdater'
$class: 'MultiSCM'
scmList
$class: 'AWSCodePipelineSCM'
name
String
clearWorkspace
boolean
region
String
awsAccessKey
In order to integrate with AWS CodePipeline, you must authorize access to the pipeline and its related artifacts. If you installed Jenkins on a supported Amazon EC2 instance type, such as Amazon Linux, you can install the AWS CLI and configure a profile with the required credentials. This is the preferred method. In all other cases, you can store AWS credentials in these fields. You should securely configure your Jenkins instance to use HTTPS so that these credentials are not sent unencrypted. For more information, see AWS CodePipeline Integration for Other Products and Services.
String
awsSecretKey
>In order to integrate with AWS CodePipeline, you must authorize access to the pipeline and its related artifacts. If you installed Jenkins on a supported Amazon EC2 instance type, such as Amazon Linux, you can install the AWS CLI and configure a profile with the required credentials. This is the preferred method. In all other cases, you can store AWS credentials in these fields. You should securely configure your Jenkins instance to use HTTPS so that these credentials are not sent unencrypted. For more information, see AWS CodePipeline Integration for Other Products and Services.
String
proxyHost
You might need a proxy host address if you are hosting Jenkins on a private network. The proxy name can be an IP address or DNS address. The AWS CodePipeline Plugin for Jenkins requires internet access. If access is not configured, you might see errors in the AWS CodePipeline Polling Log.
String
proxyPort
You might need a proxy port for your proxy host address if you are hosting Jenkins on a private network. The proxy port is a number, might be on port 8080, 3128, or 8443, depending on your network protocols and security settings. If access is not configured, you might see errors in the AWS CodePipeline Polling Log.
String
category
This is the category of the action type in AWS CodePipeline, and is usually either Build or Test. To see an example usage, see Install and Configure the AWS CodePipeline Plugin for Jenkins.
String
provider
This is the provider name of the action type in AWS CodePipeline. You must provide this exact string when adding an action for Jenkins in AWS CodePipeline. To see an example usage, see Install and Configure the AWS CodePipeline Plugin for Jenkins.
String
version
Leave the default as 1.
String
accurev
depot
String
stream
String
serverName
(optional)
String
serverUUID
(optional)
String
wspaceORreftree
(optional)
String
accurevTool
(optional)
String
cleanreftree
(optional)
boolean
directoryOffset
(optional)
String
dontPopContent
(optional)
boolean
filterForPollSCM
(optional)
String
ignoreStreamParent
(optional)
boolean
reftree
(optional)
String
snapshotNameFormat
(optional)
String
subPath
(optional)
String
subPathOnly
(optional)
boolean
synctime
(optional)
boolean
useSnapshot
(optional)
boolean
workspace
(optional)
String
$class: 'BazaarSCM'
source
String
cleantree
boolean
browser
$class: 'Loggerhead'
url
String
$class: 'OpenGrok'
url
String
rootModule
String
checkout
boolean
$class: 'BitKeeperSCM'
parent
String
localRepository
String
usePull
boolean
quiet
boolean
BbS
id
String
branches
name
Specify the branches if you'd like to track a specific branch in a repository. If left blank, all branches will be examined for changes and built.
The safest way is to use the refs/heads/<branchName>
syntax. This way the expected branch is unambiguous.
If your branch name has a /
in it make sure to use the full reference above. When not presented with a full path the plugin will only use the part of the string right of the last slash. Meaning foo/bar
will actually match bar
.
If you use a wildcard branch specifier, with a slash (e.g. release/
), you'll need to specify the origin repository in the branch names to make sure changes are picked up. So e.g. origin/release/
Possible options:
<branchName>
refs/heads/<branchName>
.master
, feature1
, ... refs/heads/<branchName>
refs/heads/master
, refs/heads/feature1/master
, ... <remoteRepoName>/<branchName>
refs/heads/<branchName>
.origin/master
remotes/<remoteRepoName>/<branchName>
remotes/origin/master
refs/remotes/<remoteRepoName>/<branchName>
refs/remotes/origin/master
<tagName>
refs/tags/<tagName>
instead.git-2.3.0
refs/tags/<tagName>
refs/tags/git-2.3.0
<commitId>
5062ac843f2b947733e6a3b105977056821bd352
, 5062ac84
, ... ${ENV_VARIABLE}
${TREEISH}
, refs/tags/${TAGNAME}
, ... <Wildcards>
REPOSITORYNAME/BRANCH
. In addition, BRANCH
is recognized as a shorthand of */BRANCH
, '*' is recognized as a wildcard, and '**' is recognized as wildcard that includes the separator '/'. Therefore, origin/branches*
would match origin/branches-foo
but not origin/branches/foo
, while origin/branches**
would match both origin/branches-foo
and origin/branches/foo
. :<regular expression>
:regexp
. Regular expression syntax in branches to build will only build those branches whose names match the regular expression.:^(?!(origin/prefix)).*
origin
or origin/master
or origin/feature
origin/prefix
or origin/prefix_123
or origin/prefix-abc
:origin/release-\d{8}
origin/release-20150101
origin/release-2015010
or origin/release-201501011
or origin/release-20150101-something
:^(?!origin/master$|origin/develop$).*
origin/branch1
or origin/branch-2
or origin/master123
or origin/develop-123
origin/master
or origin/develop
String
credentialsId
When running a job, Jenkins requires credentials to authenticate with Bitbucket Server. For example, to checkout the source code for builds. To do this, it needs credentials with access to the projects and repositories you want it to build from.
You can provide Jenkins with credentials here by:
In addition, you can provide Jenkins with SSH credentials below. If you do, Jenkins will use them for clone operations instead of the credentials you select here.
String
sshCredentialsId
If specified, Jenkins will use these credentials to check out the source code for builds. If no SSH credentials are specified, Jenkins will use the basic credentials instead.
To provide Jenkins with SSH credentials, you can:
String
extensions
$class: 'AuthorInChangelog'
$class: 'BuildChooserSetting'
This extension point in Jenkins is used by many other plugins to control the job to build specific commits. When you activate those plugins, you may see them installing a custom strategy here.
buildChooser
$class: 'AlternativeBuildChooser'
$class: 'AncestryBuildChooser'
maximumAgeInDays
int
ancestorCommitSha1
String
$class: 'DefaultBuildChooser'
$class: 'DeflakeGitBuildChooser'
$class: 'GerritTriggerBuildChooser'
$class: 'InverseBuildChooser'
$class: 'BuildSingleRevisionOnly'
$class: 'ChangelogToBranch'
options
compareRemote
origin
, that contains the branch you specify below.
String
compareTarget
String
$class: 'CheckoutOption'
timeout
int
$class: 'CleanBeforeCheckout'
.gitignore
. It also resets all tracked files to their versioned state. This ensures that the workspace is in the same state as if you cloned and checked out in a brand-new empty directory, and ensures that your build is not affected by the files generated by the previous build.
deleteUntrackedNestedRepositories
(optional)
.git
directories.
boolean
$class: 'CleanCheckout'
.gitignore
. It also resets all tracked files to their versioned state. This ensures that the workspace is in the same state as if you cloned and checked out in a brand-new empty directory, and ensures that your build is not affected by the files generated by the previous build.
deleteUntrackedNestedRepositories
(optional)
.git
directories.
boolean
$class: 'CloneOption'
shallow
boolean
noTags
boolean
reference
String
timeout
int
depth
(optional)
int
honorRefspec
(optional)
boolean
$class: 'CodeCommitURLHelper'
credentialId
OPTIONAL: Select the credentials to use.
If not specified, defaults to the DefaultAWSCredentialsProviderChain behaviour - *FROM THE JENKINS INSTANCE*
In the latter case, usage of IAM Role Profiles seems not to work, thus relying on environment variables / system properties or the ~/.aws/credentials file, thus not recommended.
String
repositoryName
String
$class: 'DisableRemotePoll'
$class: 'ExcludeFromChangeSet'
$class: 'ExcludeFromPoll'
$class: 'GitLFSPull'
$class: 'GitSCMChecksExtension'
verboseConsoleLog
(optional)
boolean
$class: 'GitSCMStatusChecksExtension'
name
(optional)
String
skip
(optional)
boolean
skipProgressUpdates
(optional)
boolean
suppressLogs
(optional)
boolean
unstableBuildNeutral
(optional)
boolean
$class: 'GitTagMessageExtension'
useMostRecentTag
(optional)
boolean
$class: 'IgnoreNotifyCommit'
$class: 'LocalBranch'
If selected, and its value is an empty string or "**", then the branch name is computed from the remote branch without the origin. In that case, a remote branch origin/master will be checked out to a local branch named master, and a remote branch origin/develop/new-feature will be checked out to a local branch named develop/newfeature.
Please note that this has not been tested with submodules.
localBranch
String
$class: 'MessageExclusion'
excludedMessage
.*\[maven-release-plugin\].*The example above illustrates that if only revisions with "[maven-release-plugin]" message in first comment line have been committed to the SCM a build will not occur. You can create more complex patterns using embedded flag expressions.
(?s).*FOO.*This example will search FOO message in all comment lines.
String
$class: 'PathRestriction'
includedRegions
myapp/src/main/web/.*\.html myapp/src/main/web/.*\.jpeg myapp/src/main/web/.*\.gifThe example above illustrates that a build will only occur, if html/jpeg/gif files have been committed to the SCM. Exclusions take precedence over inclusions, if there is an overlap between included and excluded regions.
String
excludedRegions
myapp/src/main/web/.*\.html myapp/src/main/web/.*\.jpeg myapp/src/main/web/.*\.gifThe example above illustrates that if only html/jpeg/gif files have been committed to the SCM a build will not occur.
String
$class: 'PerBuildTag'
$class: 'PreBuildMerge'
options
mergeTarget
master
.
String
fastForwardMode
(optional)
FF
, FF_ONLY
, NO_FF
mergeRemote
(optional)
origin
, that contains the branch you specify below. If left blank, it'll default to the name of the first repository configured above.
String
mergeStrategy
(optional)
DEFAULT
, RESOLVE
, RECURSIVE
, OCTOPUS
, OURS
, SUBTREE
, RECURSIVE_THEIRS
pretestedIntegration
gitIntegrationStrategy
accumulated
shortCommitMessage
(optional)
boolean
ffonly
shortCommitMessage
(optional)
boolean
squash
integrationBranch
The branch name must match your integration branch name. No trailing slash.
git checkout -B <Branch name> <Repository name>/<Branch name> git merge --squash <Branch matched by git> git commit -C <Branch matched by git>
git checkout -B <Branch name> <Repository name>/<Branch name> git merge -m <commitMsg> <Branch matched by git> --no-ff
Changes are only ever pushed when the build results is SUCCESS
git push <Repository name> <Branch name>
String
repoName
The repository name. In git the repository is always the name of the remote. So if you have specified a repository name in your Git configuration. You need to specify the exact same name here, otherwise no integration will be performed. We do the merge based on this.
No trailing slash on repository name.
Remember to specify this when working with NAMED repositories in Git
String
$class: 'PruneStaleBranch'
pruneTags
pruneTags
boolean
$class: 'RelativeTargetDirectory'
relativeTargetDir
This extension should not be used in Jenkins Pipeline (either declarative or scripted). Jenkins Pipeline already provides standard techniques for checkout to a subdirectory. Use ws and dir in Jenkins Pipeline rather than this extension.
String
$class: 'ScmName'
Unique name for this SCM. Needed when using Git within the Multi SCM plugin.
name
String
$class: 'SparseCheckoutPaths'
Specify the paths that you'd like to sparse checkout. This may be used for saving space (Think about a reference repository). Be sure to use a recent version of Git, at least above 1.7.10
sparseCheckoutPaths
path
String
$class: 'SubmoduleOption'
disableSubmodules
boolean
recursiveSubmodules
boolean
trackingSubmodules
boolean
reference
git init --bare git remote add SubProject1 https://gitrepo.com/subproject1 git remote add SubProject2 https://gitrepo.com/subproject2 git fetch --all
String
timeout
int
parentCredentials
boolean
depth
(optional)
int
shallow
(optional)
boolean
threads
(optional)
int
$class: 'UserExclusion'
excludedUsers
auto_build_userThe example above illustrates that if only revisions by "auto_build_user" have been committed to the SCM a build will not occur.
String
$class: 'UserIdentity'
name
If given, "GIT_COMMITTER_NAME=[this]" and "GIT_AUTHOR_NAME=[this]" are set for builds. This overrides whatever is in the global settings.
String
email
If given, "GIT_COMMITTER_EMAIL=[this]" and "GIT_AUTHOR_EMAIL=[this]" are set for builds. This overrides whatever is in the global settings.
String
$class: 'WipeWorkspace'
gitTool
String
projectName
Enter the name of the Bitbucket Server project containing the repository you want Jenkins to build from. To find a project, start typing. If it doesn't appear in the search results, the credentials that you've chosen may not have read access to it and you'll need to provide different credentials.
To get Jenkins to build from a personal repository, enter a tilde (~
) followed by repository owner's username. For example, ~jsmith.
String
repositoryName
Enter the Bitbucket Server repository you want Jenkins to build from. To find a repository, start typing. If it doesn't appear in the search results, the credentials that you've chosen may not have read access to it and you'll need to provide different credentials.
To get Jenkins to build from a personal repository, enter its slug. This is the URL-friendly version of the repository name. For example, a repository called my example repo will have the slug my-example-repo, and you can see this in its URL, https://bitbucketserver.mycompany.com/myproject/my-example-repo.
String
serverId
Choose the Bitbucket Server instance containing the repository you want Jenkins to build from. If you can't find your instance, check this plugin's configuration and try again.
String
mirrorName
Choose the location that Jenkins should clone from when running this build. This can be the primary server or a mirror if one is available. To see available mirrors, first choose a Bitbucket Server project and repository.
String
$class: 'BlameSubversionSCM'
if it is false and the build is not triggered by upstream job,
the plugin will not collect any svn info from upstream job.
else the plugin will collect svn info from latest upstream job
alwaysCollectSVNInfo
boolean
$class: 'CCUCMScm'
loadModule
String
newest
boolean
mode
$class: 'PollChildMode'
levelToPoll
String
component
(optional)
String
createBaseline
(optional)
Check this if you want create a baseline after a completed deliver.
This is only applicable for child and sibling poll mode.
boolean
newest
(optional)
boolean
$class: 'PollRebaseMode'
levelToPoll
String
component
(optional)
String
createBaseline
(optional)
boolean
excludeList
(optional)
String
$class: 'PollSelfMode'
levelToPoll
String
component
(optional)
String
newest
(optional)
boolean
$class: 'PollSiblingMode'
levelToPoll
String
component
(optional)
String
createBaseline
(optional)
Check this if you want create a baseline after a completed deliver.
This is only applicable for child and sibling poll mode.
boolean
newest
(optional)
boolean
useHyperLinkForPolling
(optional)
boolean
$class: 'PollSubscribeMode'
levelToPoll
String
componentsToMonitor
componentSelection
String
jobsToMonitor
jobname
String
ignores
String
jobName
(optional)
String
cascadePromotion
(optional)
boolean
component
(optional)
String
newest
(optional)
boolean
stream
String
treatUnstable
String
nameTemplate
String
forceDeliver
boolean
recommend
boolean
makeTag
boolean
setDescription
boolean
buildProject
String
removeViewPrivateFiles
boolean
trimmedChangeSet
boolean
discard
boolean
$class: 'CVSSCM'
repositories
cvsRoot
String
passwordRequired
boolean
password
String
repositoryItems
location
$class: 'BranchRepositoryLocation'
branchName
String
useHeadIfNotFound
boolean
$class: 'HeadRepositoryLocation'
$class: 'TagRepositoryLocation'
tagName
String
useHeadIfNotFound
boolean
modules
remoteName
String
localName
String
projectsetFileName
String
excludedRegions
src/main/web/.*\.html src/main/web/.*\.jpeg src/main/web/.*\.gifThe example above illustrates that if only html/jpeg/gif files have been committed to the SCM a build will not occur. More information on regular expressions can be found here.
pattern
String
compressionLevel
int
repositoryBrowser
$class: 'FishEyeCVS'
url
String
$class: 'OpenGrok'
url
String
$class: 'ViewCVS'
url
String
canUseUpdate
boolean
legacy
If you have multiple modules to check out, this option is forced (otherwise they'll overlap.)
This affects other path specifiers, such as artifact archivers --- you now specify "build/foo.jar" instead of "foo/build/foo.jar".
boolean
skipChangeLog
boolean
pruneEmptyDirectories
boolean
disableCvsQuiet
boolean
cleanOnFailedUpdate
boolean
forceCleanCopy
boolean
checkoutCurrentTimestamp
The build quiet period is designed to assist with CVS checkouts by waiting for a specific period of time without commits. Normally you want the checkout to reflect the time when the quiet period was exited successfully. Select this option if you need to re-enable the legacy behaviour of Jenkins, i.e. using the time that the build started checking out as the timestamp for the checkout operation. Note: enabling this option can result in the quiet period being defeated especially in those cases where the build is not able to start immediately after exiting the quiet period.
boolean
$class: 'ClearCaseSCM'
branch
String
label
String
extractConfigSpec
boolean
configSpecFileName
String
refreshConfigSpec
boolean
refreshConfigSpecCommand
String
configSpec
String
viewTag
String
useupdate
boolean
extractLoadRules
boolean
loadRules
String
useOtherLoadRulesForPolling
boolean
loadRulesForPolling
String
usedynamicview
boolean
viewdrive
String
mkviewoptionalparam
String
filterOutDestroySubBranchEvent
boolean
doNotUpdateConfigSpec
boolean
rmviewonrename
boolean
excludedRegions
String
multiSitePollBuffer
String
useTimeRule
boolean
createDynView
boolean
viewPath
String
changeset
ALL
, BRANCH
, NONE
, UPDT
viewStorage
Three strategies are currently available to manage view storage location.
$class: 'DefaultViewStorage'
$class: 'ServerViewStorage'
assignedLabelString
Label expression used to populate view storage location dropdown.
String
server
The view storage location that will be passed to the -stgloc option.
The list of available servers is retrieved using cleartool lsstgloc -view
Note that auto is always available.
String
$class: 'SpecificViewStorage'
winStorageDir
String
unixStorageDir
String
$class: 'ClearCaseUcmBaselineSCM'
$class: 'ClearCaseUcmSCM'
stream
String
loadrules
String
viewTag
String
usedynamicview
boolean
viewdrive
String
mkviewoptionalparam
String
filterOutDestroySubBranchEvent
boolean
useUpdate
boolean
rmviewonrename
boolean
excludedRegions
String
multiSitePollBuffer
String
overrideBranchName
String
createDynView
boolean
freezeCode
boolean
recreateView
boolean
allocateViewName
boolean
viewPath
String
useManualLoadRules
boolean
changeset
ALL
, BRANCH
, NONE
, UPDT
viewStorage
Three strategies are currently available to manage view storage location.
$class: 'DefaultViewStorage'
$class: 'ServerViewStorage'
assignedLabelString
Label expression used to populate view storage location dropdown.
String
server
The view storage location that will be passed to the -stgloc option.
The list of available servers is retrieved using cleartool lsstgloc -view
Note that auto is always available.
String
$class: 'SpecificViewStorage'
winStorageDir
String
unixStorageDir
String
buildFoundationBaseline
If checked, instead of creating a view on the current stream, the job will look up the current foundation baselines for the given stream and work in readonly on these baselines. If polling is enabled, the build will be triggered every time a new foundation baseline is detected on the given stream.
boolean
$class: 'CloneWorkspaceSCM'
parentJobName
String
criteria
String
$class: 'CmvcSCM'
family
String
become
String
releases
String
checkoutScript
String
trackViewReportWhereClause
String
$class: 'ConfigurationRotator'
acrs
$class: 'ClearCaseUCM'
pvobName
String
contribute
Contribute data to a global database. Defined in the Compatibility Action Storage Plugin.
boolean
targets
baselineName
String
level
INITIAL
, BUILT
, TESTED
, RELEASED
, REJECTED
fixed
boolean
useNewest
(optional)
boolean
$class: 'Git'
targets
name
String
repository
String
branch
String
commitId
String
fixed
boolean
useNewest
(optional)
boolean
$class: 'CvsProjectset'
repositories
cvsRoot
String
passwordRequired
boolean
password
String
repositoryItems
location
$class: 'BranchRepositoryLocation'
branchName
String
useHeadIfNotFound
boolean
$class: 'HeadRepositoryLocation'
$class: 'TagRepositoryLocation'
tagName
String
useHeadIfNotFound
boolean
modules
remoteName
String
localName
String
projectsetFileName
String
excludedRegions
src/main/web/.*\.html src/main/web/.*\.jpeg src/main/web/.*\.gifThe example above illustrates that if only html/jpeg/gif files have been committed to the SCM a build will not occur. More information on regular expressions can be found here.
pattern
String
compressionLevel
int
repositoryBrowser
$class: 'FishEyeCVS'
url
String
$class: 'OpenGrok'
url
String
$class: 'ViewCVS'
url
String
canUseUpdate
boolean
username
String
password
String
browser
$class: 'FishEyeCVS'
url
String
$class: 'OpenGrok'
url
String
$class: 'ViewCVS'
url
String
skipChangeLog
boolean
pruneEmptyDirectories
boolean
disableCvsQuiet
boolean
cleanOnFailedUpdate
boolean
forceCleanCopy
boolean
$class: 'DarcsScm'
source
String
localDir
String
clean
boolean
browser
$class: 'DarcsWeb'
url
String
repo
String
$class: 'Darcsden'
url
String
$class: 'DimensionsSCM'
project
String
credentialsType
String
userName
String
password
String
pluginServer
String
userServer
String
keystoreServer
String
pluginDatabase
String
userDatabase
String
keystoreDatabase
String
keystorePath
String
certificateAlias
String
credentialsId
String
certificatePassword
String
keystorePassword
String
certificatePath
String
remoteCertificatePassword
String
secureAgentAuth
boolean
canJobDelete
(optional)
boolean
canJobExpand
(optional)
boolean
canJobForce
(optional)
boolean
canJobNoMetadata
(optional)
boolean
canJobNoTouch
(optional)
boolean
canJobRevert
(optional)
boolean
canJobUpdate
(optional)
boolean
eol
(optional)
String
folders
(optional)
value
String
pathsToExclude
(optional)
value
String
permissions
(optional)
String
timeZone
(optional)
String
webUrl
(optional)
String
$class: 'DrushMakefileSCM'
makefile
Specify the content of the Makefile. Support for YAML Makefiles depends on the version of Drush you have installed.
This example will generate a vanilla Drupal 7.38:
api=2 core=7.x projects[drupal][version]=7.38
String
root
String
$class: 'EndevorConfiguration'
connectionId
String
filterPattern
String
fileExtension
String
credentialsId
String
targetFolder
String
filesystem
path
The file path for the source code.
e.g. \\Server1\project1\src or c:\myproject\src
Note for distributed build environment, please make sure the path is accessible on remote node(s)
String
clearWorkspace
If true, the system will delete all existing files/sub-folders in workspace before checking-out. Poll changes will not be affected by this setting.
boolean
copyHidden
If true, the system will copy hidden files and folders as well. Default is false.
boolean
filterSettings
includeFilter
boolean
selectors
You can apply wildcard filter(s) when detecting changes and copying files. By default, the system will filter out hidden files, on Unix, that means files/folder starting with ".", on Windows, that means files/folders with "hidden" attribute. You may want to filter out, e.g. files with ".tmp" extension.
Note: filters are applied on both sides, source and destination (i.e. the workspace). E.g. if you filter out ".tmp" files, all ".tmp" files currently in workspace will not be removed.
wildcard
ANT style wildcard.
To include just *.java, set filter type to "Include" and type add "*.java" (without quote) in the wildcard. To exclude *.exe" and all JUnit test cases, set filter type to "Exclude" and add two wildcard, one for "*.dll" and one for "*Test*"
To exclude a directory, set filter to "**/dir_to_exclude/**"
Note: (1) the wildcard is case insensitive, (2) all backslashes (\) will be replaced with slashes (/)
String
$class: 'FeatureBranchAwareMercurialSCM'
installation
String
source
String
branch
String
modules
String
subdir
my/sources
(use forward slashes). If changing this entry, you probably want to clean the workspace first.
String
browser
$class: 'FishEye'
url
String
$class: 'GoogleCode'
url
String
$class: 'HgWeb'
url
String
$class: 'Kallithea'
url
String
$class: 'KilnHG'
url
String
$class: 'RhodeCode'
url
String
$class: 'RhodeCodeLegacy'
url
String
$class: 'ScmManager'
url
http://YOURSCMMANAGER/scm/repo/NAMESPACE/NAME/
).
String
clean
boolean
branchPattern
String
$class: 'GeneXusServerSCM'
gxInstallationId
String
serverURL
String
credentialsId
Credentials to use when authenticating to the GeneXus Server.
Select the credentials you want to use or click "Add" to enter a new user/password pair.
String
kbName
String
kbVersion
Name of the Version that will be selected when creating a local copy of the Knowledge Base.
If you leave it blank the 'Trunk' version will be selected by default.
String
localKbPath
Path to the local Knowledge Base to use as working copy.
If you leave it blank the default ${WORKSPACE}\KBname
will apply.
String
localKbVersion
Name of the Version in the local Knowledge Base that is linked to the Version in the server.
If you leave it blank the 'Trunk' version will be selected by default.
String
kbDbServerInstance
String
kbDbCredentialsId
Credentials to use when to connecting to SQL Server.
Select "none" for Windows Authentication.
String
kbDbName
Name of the SQL Server database used for the local Knowledge Base.
Leave it blank to use the default database name.
String
kbDbInSameFolder
Create the database files in the same folder as the Knowledge Base when checking out. Default is 'true
'.
If kbDbInSameFolder
is true or not set, then the database files will be created in the same folder as the Knowledge Base. If kbDbInSameFolder
is false, then the database files will be created in the default folder configured for the SQL Server at kbDbServerInstance (optional)
.
boolean
$class: 'GitSCM'
The git plugin provides fundamental git operations for Jenkins projects. It can poll, fetch, checkout, and merge contents of git repositories.
The git plugin provides an SCM implementation to be used with the Pipeline SCM checkout
step. The Pipeline Syntax Snippet Generator guides the user to select git plugin checkout options and provides online help for each of the options.
userRemoteConfigs
${SUPER_PROJECT_URL}/${SUBMODULE}
, rather than relying on information from .gitmodules.url
git clone
command.
String
name
origin
, to uniquely identify this repository among other remote repositories. This is the same "name" that you use in your git remote
command. If left empty, Jenkins will generate unique names for you.
You normally want to specify this when you have multiple remote repositories.
String
refspec
git fetch
, which retrieves all the branch heads as remotes/REPOSITORYNAME/BRANCHNAME
. This default behaviour is OK for most cases.
In other words, the default refspec is "+refs/heads/*:refs/remotes/REPOSITORYNAME/*" where REPOSITORYNAME
is the value you specify in the above "name of repository" textbox.
When do you want to modify this value? A good example is when you want to just retrieve one branch. For example, +refs/heads/master:refs/remotes/origin/master
would only retrieve the master branch and nothing else.
The plugin uses a default refspec for its initial fetch, unless the "Advanced Clone Option" is set to honor refspec. This keeps compatibility with previous behavior, and allows the job definition to decide if the refspec should be honored on initial clone.
Multiple refspecs can be entered by separating them with a space character. +refs/heads/master:refs/remotes/origin/master +refs/heads/develop:refs/remotes/origin/develop
retrieves the master branch and the develop branch and nothing else.
See the refspec definition in Git user manual for more details.
String
credentialsId
String
branches
name
Specify the branches if you'd like to track a specific branch in a repository. If left blank, all branches will be examined for changes and built.
The safest way is to use the refs/heads/<branchName>
syntax. This way the expected branch is unambiguous.
If your branch name has a /
in it make sure to use the full reference above. When not presented with a full path the plugin will only use the part of the string right of the last slash. Meaning foo/bar
will actually match bar
.
If you use a wildcard branch specifier, with a slash (e.g. release/
), you'll need to specify the origin repository in the branch names to make sure changes are picked up. So e.g. origin/release/
Possible options:
<branchName>
refs/heads/<branchName>
.master
, feature1
, ... refs/heads/<branchName>
refs/heads/master
, refs/heads/feature1/master
, ... <remoteRepoName>/<branchName>
refs/heads/<branchName>
.origin/master
remotes/<remoteRepoName>/<branchName>
remotes/origin/master
refs/remotes/<remoteRepoName>/<branchName>
refs/remotes/origin/master
<tagName>
refs/tags/<tagName>
instead.git-2.3.0
refs/tags/<tagName>
refs/tags/git-2.3.0
<commitId>
5062ac843f2b947733e6a3b105977056821bd352
, 5062ac84
, ... ${ENV_VARIABLE}
${TREEISH}
, refs/tags/${TAGNAME}
, ... <Wildcards>
REPOSITORYNAME/BRANCH
. In addition, BRANCH
is recognized as a shorthand of */BRANCH
, '*' is recognized as a wildcard, and '**' is recognized as wildcard that includes the separator '/'. Therefore, origin/branches*
would match origin/branches-foo
but not origin/branches/foo
, while origin/branches**
would match both origin/branches-foo
and origin/branches/foo
. :<regular expression>
:regexp
. Regular expression syntax in branches to build will only build those branches whose names match the regular expression.:^(?!(origin/prefix)).*
origin
or origin/master
or origin/feature
origin/prefix
or origin/prefix_123
or origin/prefix-abc
:origin/release-\d{8}
origin/release-20150101
origin/release-2015010
or origin/release-201501011
or origin/release-20150101-something
:^(?!origin/master$|origin/develop$).*
origin/branch1
or origin/branch-2
or origin/master123
or origin/develop-123
origin/master
or origin/develop
String
browser
$class: 'AssemblaWeb'
repoUrl
String
$class: 'BacklogGitRepositoryBrowser'
repoName
String
repoUrl
String
bitbucketServer
repoUrl
String
$class: 'BitbucketWeb'
repoUrl
String
$class: 'CGit'
repoUrl
String
$class: 'FisheyeGitRepositoryBrowser'
repoUrl
String
$class: 'GitBlitRepositoryBrowser'
repoUrl
String
projectName
String
$class: 'GitBucketBrowser'
url
String
$class: 'GitLab'
repoUrl
String
version
(optional)
String
$class: 'GitLabBrowser'
https://gitLab.example.com
then the URL for bob's skunkworks project might be https://gitLab.example.com/bob/skunkworks
.
projectUrl
https://gitLab.example.com
then the URL for bob's skunkworks project might be https://gitLab.example.com/bob/skunkworks
String
$class: 'GitList'
repoUrl
String
$class: 'GitWeb'
repoUrl
String
$class: 'GiteaBrowser'
repoUrl
https://gitea.example.com
then the URL for bob's skunkworks project repository might be https://gitea.example.com/bob/skunkworks
String
$class: 'GithubWeb'
repoUrl
String
$class: 'Gitiles'
repoUrl
String
$class: 'GitoriousWeb'
repoUrl
String
$class: 'GogsGit'
repoUrl
String
$class: 'KilnGit'
repoUrl
String
$class: 'Phabricator'
repoUrl
String
repo
String
$class: 'RedmineWeb'
repoUrl
String
$class: 'RhodeCode'
repoUrl
String
$class: 'ScmManagerGitRepositoryBrowser'
repoUrl
String
$class: 'Stash'
repoUrl
String
$class: 'TFS2013GitRepositoryBrowser'
repoUrl
If TFS is also used as the repository server, this can usually be left blank.
String
$class: 'TracGitRepositoryBrowser'
$class: 'TuleapBrowser'
repositoryUrl
String
$class: 'ViewGitWeb'
repoUrl
String
projectName
String
gitTool
Absolute path to the git executable.
This is different from other Jenkins tool definitions. Rather than providing the directory that contains the executable, you must provide the complete path to the executable. Setting '/usr/bin/git
' would be correct, while setting '/usr/bin/
' is not correct.
String
extensions
Extensions add new behavior or modify existing plugin behavior for different uses. Extensions help users more precisely tune plugin behavior to meet their needs.
Extensions include:
$class: 'AuthorInChangelog'
$class: 'BuildChooserSetting'
This extension point in Jenkins is used by many other plugins to control the job to build specific commits. When you activate those plugins, you may see them installing a custom strategy here.
buildChooser
$class: 'AlternativeBuildChooser'
$class: 'AncestryBuildChooser'
maximumAgeInDays
int
ancestorCommitSha1
String
$class: 'DefaultBuildChooser'
$class: 'DeflakeGitBuildChooser'
$class: 'GerritTriggerBuildChooser'
$class: 'InverseBuildChooser'
$class: 'BuildSingleRevisionOnly'
$class: 'ChangelogToBranch'
options
compareRemote
origin
, that contains the branch you specify below.
String
compareTarget
String
$class: 'CheckoutOption'
timeout
int
$class: 'CleanBeforeCheckout'
.gitignore
. It also resets all tracked files to their versioned state. This ensures that the workspace is in the same state as if you cloned and checked out in a brand-new empty directory, and ensures that your build is not affected by the files generated by the previous build.
deleteUntrackedNestedRepositories
(optional)
.git
directories.
boolean
$class: 'CleanCheckout'
.gitignore
. It also resets all tracked files to their versioned state. This ensures that the workspace is in the same state as if you cloned and checked out in a brand-new empty directory, and ensures that your build is not affected by the files generated by the previous build.
deleteUntrackedNestedRepositories
(optional)
.git
directories.
boolean
$class: 'CloneOption'
shallow
boolean
noTags
boolean
reference
String
timeout
int
depth
(optional)
int
honorRefspec
(optional)
boolean
$class: 'CodeCommitURLHelper'
credentialId
OPTIONAL: Select the credentials to use.
If not specified, defaults to the DefaultAWSCredentialsProviderChain behaviour - *FROM THE JENKINS INSTANCE*
In the latter case, usage of IAM Role Profiles seems not to work, thus relying on environment variables / system properties or the ~/.aws/credentials file, thus not recommended.
String
repositoryName
String
$class: 'DisableRemotePoll'
$class: 'ExcludeFromChangeSet'
$class: 'ExcludeFromPoll'
$class: 'GitLFSPull'
$class: 'GitSCMChecksExtension'
verboseConsoleLog
(optional)
boolean
$class: 'GitSCMStatusChecksExtension'
name
(optional)
String
skip
(optional)
boolean
skipProgressUpdates
(optional)
boolean
suppressLogs
(optional)
boolean
unstableBuildNeutral
(optional)
boolean
$class: 'GitTagMessageExtension'
useMostRecentTag
(optional)
boolean
$class: 'IgnoreNotifyCommit'
$class: 'LocalBranch'
If selected, and its value is an empty string or "**", then the branch name is computed from the remote branch without the origin. In that case, a remote branch origin/master will be checked out to a local branch named master, and a remote branch origin/develop/new-feature will be checked out to a local branch named develop/newfeature.
Please note that this has not been tested with submodules.
localBranch
String
$class: 'MessageExclusion'
excludedMessage
.*\[maven-release-plugin\].*The example above illustrates that if only revisions with "[maven-release-plugin]" message in first comment line have been committed to the SCM a build will not occur. You can create more complex patterns using embedded flag expressions.
(?s).*FOO.*This example will search FOO message in all comment lines.
String
$class: 'PathRestriction'
includedRegions
myapp/src/main/web/.*\.html myapp/src/main/web/.*\.jpeg myapp/src/main/web/.*\.gifThe example above illustrates that a build will only occur, if html/jpeg/gif files have been committed to the SCM. Exclusions take precedence over inclusions, if there is an overlap between included and excluded regions.
String
excludedRegions
myapp/src/main/web/.*\.html myapp/src/main/web/.*\.jpeg myapp/src/main/web/.*\.gifThe example above illustrates that if only html/jpeg/gif files have been committed to the SCM a build will not occur.
String
$class: 'PerBuildTag'
$class: 'PreBuildMerge'
options
mergeTarget
master
.
String
fastForwardMode
(optional)
FF
, FF_ONLY
, NO_FF
mergeRemote
(optional)
origin
, that contains the branch you specify below. If left blank, it'll default to the name of the first repository configured above.
String
mergeStrategy
(optional)
DEFAULT
, RESOLVE
, RECURSIVE
, OCTOPUS
, OURS
, SUBTREE
, RECURSIVE_THEIRS
pretestedIntegration
gitIntegrationStrategy
accumulated
shortCommitMessage
(optional)
boolean
ffonly
shortCommitMessage
(optional)
boolean
squash
integrationBranch
The branch name must match your integration branch name. No trailing slash.
git checkout -B <Branch name> <Repository name>/<Branch name> git merge --squash <Branch matched by git> git commit -C <Branch matched by git>
git checkout -B <Branch name> <Repository name>/<Branch name> git merge -m <commitMsg> <Branch matched by git> --no-ff
Changes are only ever pushed when the build results is SUCCESS
git push <Repository name> <Branch name>
String
repoName
The repository name. In git the repository is always the name of the remote. So if you have specified a repository name in your Git configuration. You need to specify the exact same name here, otherwise no integration will be performed. We do the merge based on this.
No trailing slash on repository name.
Remember to specify this when working with NAMED repositories in Git
String
$class: 'PruneStaleBranch'
pruneTags
pruneTags
boolean
$class: 'RelativeTargetDirectory'
relativeTargetDir
This extension should not be used in Jenkins Pipeline (either declarative or scripted). Jenkins Pipeline already provides standard techniques for checkout to a subdirectory. Use ws and dir in Jenkins Pipeline rather than this extension.
String
$class: 'ScmName'
Unique name for this SCM. Needed when using Git within the Multi SCM plugin.
name
String
$class: 'SparseCheckoutPaths'
Specify the paths that you'd like to sparse checkout. This may be used for saving space (Think about a reference repository). Be sure to use a recent version of Git, at least above 1.7.10
sparseCheckoutPaths
path
String
$class: 'SubmoduleOption'
disableSubmodules
boolean
recursiveSubmodules
boolean
trackingSubmodules
boolean
reference
git init --bare git remote add SubProject1 https://gitrepo.com/subproject1 git remote add SubProject2 https://gitrepo.com/subproject2 git fetch --all
String
timeout
int
parentCredentials
boolean
depth
(optional)
int
shallow
(optional)
boolean
threads
(optional)
int
$class: 'UserExclusion'
excludedUsers
auto_build_userThe example above illustrates that if only revisions by "auto_build_user" have been committed to the SCM a build will not occur.
String
$class: 'UserIdentity'
name
If given, "GIT_COMMITTER_NAME=[this]" and "GIT_AUTHOR_NAME=[this]" are set for builds. This overrides whatever is in the global settings.
String
email
If given, "GIT_COMMITTER_EMAIL=[this]" and "GIT_AUTHOR_EMAIL=[this]" are set for builds. This overrides whatever is in the global settings.
String
$class: 'WipeWorkspace'
doGenerateSubmoduleConfigurations
(optional)
Removed facility that was intended to test combinations of git submodule versions. Removed in git plugin 4.6.0. Ignores the user provided value and always uses false
as its value.
boolean
submoduleCfg
(optional)
Removed facility that was intended to test combinations of git submodule versions. Removed in git plugin 4.6.0. Ignores the user provided value(s) and always uses empty values.
submoduleName
Removed in git plugin 4.6.0.
String
branches
Removed in git plugin 4.6.0.
String
$class: 'HarvestSCM'
broker
String
passwordFile
String
userId
String
password
String
projectName
String
state
String
viewPath
String
clientPath
String
processName
String
recursiveSearch
String
useSynchronize
boolean
extraOptions
String
$class: 'IntegritySCM'
serverConfig
String
configPath
String
configurationName
String
CPBasedMode
(optional)
boolean
alternateWorkspace
(optional)
String
browser
(optional)
$class: 'IntegrityWebUI'
url
String
checkoutThreadPoolSize
(optional)
int
checkoutThreadTimeout
(optional)
int
checkpointBeforeBuild
(optional)
boolean
checkpointLabel
(optional)
String
cleanCopy
(optional)
boolean
deleteNonMembers
(optional)
boolean
excludeList
(optional)
String
fetchChangedWorkspaceFiles
(optional)
boolean
includeList
(optional)
String
lineTerminator
(optional)
String
localClient
(optional)
boolean
password
(optional)
String
restoreTimestamp
(optional)
boolean
sandboxScope
(optional)
String
skipAuthorInfo
(optional)
boolean
userName
(optional)
String
$class: 'IspwConfiguration'
connectionId
String
credentialsId
String
serverConfig
String
serverStream
String
serverApplication
String
serverLevel
String
levelOption
String
componentType
String
folderName
String
ispwDownloadAll
boolean
targetFolder
String
ispwDownloadIncl
boolean
ispwDownloadWithCompileOnly
boolean
$class: 'IspwContainerConfiguration'
connectionId
String
credentialsId
String
serverConfig
String
containerName
String
containerType
String
serverLevel
String
componentType
String
ispwDownloadAll
boolean
targetFolder
String
ispwDownloadIncl
boolean
$class: 'MercurialSCM'
source
String
browser
(optional)
$class: 'FishEye'
url
String
$class: 'GoogleCode'
url
String
$class: 'HgWeb'
url
String
$class: 'Kallithea'
url
String
$class: 'KilnHG'
url
String
$class: 'RhodeCode'
url
String
$class: 'RhodeCodeLegacy'
url
String
$class: 'ScmManager'
url
http://YOURSCMMANAGER/scm/repo/NAMESPACE/NAME/
).
String
clean
(optional)
boolean
credentialsId
(optional)
String
disableChangeLog
(optional)
boolean
installation
(optional)
String
modules
(optional)
String
revision
(optional)
default
branch.)
String
revisionType
(optional)
BRANCH
, TAG
, CHANGESET
, REVSET
subdir
(optional)
my/sources
(use forward slashes). If changing this entry, you probably want to clean the workspace first.
String
$class: 'MergeBotUpdater'
$class: 'MultiSCM'
none
$class: 'OpenShiftImageStreams'
imageStreamName
String
tag
String
apiURL
String
namespace
String
authToken
String
verbose
String
$class: 'PdsConfiguration'
connectionId
String
filterPattern
String
fileExtension
String
credentialsId
String
targetFolder
String
perforce
credential
Select the appropriate credential for the Perforce connection. Perforce Credentials are defined in the Jenkins Credentials plugin here.
There are two types:
String
workspace
Select the appropriate Perforce workspace behaviour from the list. Not all modes will suit all Jenkins Job build types.
There are five types:
manualSpec
charset
The character set used by Jenkins when syncing files from the Perforce server. This should be set to 'none' unless connected to a Unicode enabled Perforce server.
String
pinHost
boolean
name
Specify the name of the Perforce workspace to be used as the Jenkins build workspace. If the workspace does not yet exist, the configuration will be saved in Jenkins; the workspace is created only when it is to be used. If the workspace exists and you are connected to a Perforce server the auto-text fill should list suitable workspaces; updates are only applied when the workspace is used.
String
spec
allwrite
boolean
clobber
boolean
compress
boolean
locked
boolean
modtime
boolean
rmdir
boolean
streamName
String
line
Set line-ending character(s) for client text files.
linefeed: UNIX style.
carriage return: Macintosh style. (obsolete)
carriage return-linefeed: Windows style.
hybrid: writes UNIX style but reads UNIX, Mac or Windows style.
String
view
Lines to map depot files into the client workspace.
The variable ${P4_CLIENT} will expand to the client name, for example, a simple mapping:
//depot/... //${P4_CLIENT}/...
Maps files in the depot to files in your client workspace. Defines the files that you want in your client workspace and specifies where you want them to reside. The default view maps all depot files onto the client. See 'p4 help views' for view syntax. A new view takes effect on the next 'p4 sync'.
To support migration from the old Perforce plugin, a View Mapping can be inserted from a file in Perforce. Add the depot path to the "View Mappings" field Prefix "@" (this only applies to the "Manual" Workspace behaviour).
String
changeView
String
type
Type of client: writeable/readonly/partitioned/graph
By default all clients are 'writeable', certain clients are short lived and perform long sync and build cycles. Over time these build clients can fragment the 'db.have' table which is used to track what files a client has synced. Setting a type of 'readonly' gives the client its own personal 'db.have' database table. A 'readonly' client cannot 'edit' or 'submit' files, however for build automation this is not usually a requirement and the performance tradeoff is worth considering if your build automation is causing issues with the 'db.have' table. This option requires that an administrator has first configured the 'client.readonly.dir' setting. If it is necessary to submit changes as part of your build, you may specify a 'partitioned' client: like a 'reaonly' client, this type also has a separate 'db.have' table under the 'client.readonly.dir' directory, but allows journalled 'edit' and 'submit' of files.
String
serverID
String
backup
Client's participation in backup enable/disable. If not specified backup of a writable client defaults to enabled.
boolean
cleanup
boolean
syncID
(optional)
String
specFileSpec
charset
The character set used by Jenkins when syncing files from the Perforce server. This should be set to 'none' unless connected to a Unicode enabled Perforce server.
String
pinHost
boolean
name
Specify the name of the Perforce workspace to be used as the Jenkins build workspace. If the workspace does not yet exist, the configuration will be saved in Jenkins; the workspace is created only when it is to be used. If the workspace exists and you are connected to a Perforce server the auto-text fill should list suitable workspaces; updates are only applied when the workspace is used.
String
specPath
String
syncID
(optional)
String
staticSpec
charset
The character set used by Jenkins when syncing files from the Perforce server. This should be set to 'none' unless connected to a Unicode enabled Perforce server.
String
pinHost
boolean
name
Specify the name of an existing workspace in Perforce to be used as the Jenkins build workspace. If connected to a Perforce server the auto-text fill should list suitable workspaces
String
syncID
(optional)
String
streamSpec
charset
The character set used by Jenkins when syncing files from the Perforce server. This should be set to 'none' unless connected to a Unicode enabled Perforce server.
String
pinHost
boolean
streamName
Specify the full Perforce depot path for the given stream. If connected to a Perforce server the auto-text fill should list possible streams.
For example: //stream-depot/main-streamString
format
Jenklin slave nodes must each use a unique Perforce workspace. The format string configures the workspace name by substituting the specified variables: (at least one variable must be used)
Variables can be taken from the Jenkins Environment or Parameterized builds
String
syncID
(optional)
String
templateSpec
charset
The character set used by Jenkins when syncing files from the Perforce server. This should be set to 'none' unless connected to a Unicode enabled Perforce server.
String
pinHost
boolean
templateName
Specify the name of an existing workspace in Perforce used to create or update a Jenkins build workspace. If connected to a Perforce server the auto-text fill should list suitable workspaces
String
format
Jenklin slave nodes must each use a unique Perforce workspace. The format string configures the workspace name by substituting the specified variables: (at least one variable must be used)
Variables can be taken from the Jenkins Environment or Parameterized builds
String
syncID
(optional)
String
filter
latest
latestChange
boolean
pathFilter
path
Changes can be filtered to not trigger a build; if all the files within a change match the specified path, the build is filtered.
For example, with a Filter of " //depot/main/tests
":
Case A (change will be filtered):
Files:
//depot/main/tests/index.xml
//depot/main/tests/001/test.xml
//depot/main/tests/002/test.xml
Case B (change will not be filtered, as build.xml is outside of the filter):
Files:
//depot/main/src/build.xml
//depot/main/tests/004/test.xml
//depot/main/tests/005/test.xml
This is not Perforce syntax. Use of ... and * patterns are not supported. Only paths to directories are supported.
String
viewPattern
patternText
Changes can be filtered to not trigger a build; if none of the files within a change match a Java pattern (regular expression) listed, the build is filtered.
For example, with the following regular expressions: //depot/main/tests.*
//depot/main/src/.*\.cpp
//depot/main/build/.*(?:\.rb|\.py|\.bat|Jenkinsfile)
//depot/main/lib/(?!Lib1|Lib2).*
Case A (change will not be filtered, as these files match our first pattern on "tests"):
Files:
//depot/main/tests/CONTRIUBTING.md
//depot/main/tests/001/index.xml
Case B (Be careful with incomplete file paths! Change will NOT be filtered,
as this file matches a pattern which was likely intended as describing a "tests/" directory.)
Files:
//depot/main/tests.doc
Case C (change will NOT be filtered, as all files match our fourth pattern looking for script files in 'build/'):
Files:
//depot/main/build/rbs/deploy_server.rb
//depot/main/build/deploy/deploy.bat
//depot/main/build/Jenkinsfile
Case D (change will be filtered, as no file matches our second pattern for ".cpp" files under "main/src"):
Files:
//depot/main/src/howto.doc
//depot/main/src/oldmain.c
//depot/main/src/art/splash.bmp
//depot/main/src/bt/funnelcake.php
Case E (change will be filtered. Lib1 is included in a negative lookahead, and thus is excluded.)
Files:
//depot/main/lib/Lib1/build.xml
String
caseSensitive
boolean
incremental
perChange
When enabled, only the one, oldest changelist returned by polling is built.
If P4_INCREMENTAL
environment variable (or build parameter) is set to "false", polling per change is ignored and all changelists are built.
boolean
userFilter
user
Changes can be filtered to not trigger a build; if the owner of a change matches the specified name, the build is filtered.
String
viewFilter
viewMask
Changes can be filtered to not trigger a build; if none of the files within a change are contained in the view mask, the build is filtered.
For example, with a View Mask Filter of: //depot/main/tests
-//depot/main/tests/001
Case A (change will not be filtered, as index.xml is in the view mask):
Files:
//depot/main/tests/index.xml
//depot/main/tests/001/test.xml
Case B (change will not be filtered, as index.xml is in the view mask):
Files:
//depot/main/test/index.xml
//depot/main/src/build.xml
Case C (change will be filtered, as no file is in the view mask):
Files:
//depot/main/src/build.xml
Case D (change will be filtered, as no file is in the view mask):
Files:
//depot/main/src/build.xml
//depot/main/tests/001/test.xml
String
populate
Perforce will populate the workspace with the file revisions needed for the build. The different options effect the way the workspace is cleaned and the file revisions are updated.
There are three options:
autoClean
replace
Perforce will check out and overwrite any depot files which are either missing from workspace, or have been modified locally.
boolean
delete
Perforce will delete any local files that are not in the depot.
boolean
tidy
boolean
modtime
boolean
quiet
Enables the -q flag for all applicable Perforce operations. Summary details will still be displayed.
boolean
pin
When a build is triggered by Polling, Build Now or an external Action, the workspace will sync only to the specified label. Any other specified change or label will be ignored.
Supports variable expansion e.g. ${VAR}. If 'now' is used, or a variable that expands to 'now', then the latest change is used (within the scope of the workspace view).
String
parallel
enable
boolean
path
String
threads
String
minfiles
String
minbytes
String
previewOnly
quiet
Enables the -q flag for all applicable Perforce operations. Summary details will still be displayed.
boolean
pin
String
flushOnly
quiet
boolean
pin
When a build is triggered by Polling, Build Now or an external Action, the workspace will flush only to the specified label or changelist number. Any other specified change or label will be ignored.
Supports variable expansion e.g. ${VAR}. If 'now' is used, or a variable that expands to 'now', then the latest change is used (within the scope of the workspace view).
String
forceClean
have
boolean
quiet
Enables the -q flag for all applicable Perforce operations. Summary details will still be displayed.
boolean
pin
When a build is triggered by Polling, Build Now or an external Action, the workspace will sync only to the specified label. Any other specified change or label will be ignored.
Supports variable expansion e.g. ${VAR}. If 'now' is used, or a variable that expands to 'now', then the latest change is used (within the scope of the workspace view).
String
parallel
enable
boolean
path
String
threads
String
minfiles
String
minbytes
String
graphClean
quiet
Enables the -q flag for all applicable Perforce operations. Summary details will still be displayed.
boolean
pin
When a build is triggered by Polling, Build Now or an external Action, the workspace will sync only to the specified label. Any other specified change or label will be ignored.
Supports variable expansion e.g. ${VAR}. If 'now' is used, or a variable that expands to 'now', then the latest change is used (within the scope of the workspace view).
String
parallel
enable
boolean
path
String
threads
String
minfiles
String
minbytes
String
syncOnly
revert
boolean
have
boolean
force
boolean
modtime
boolean
quiet
Enables the -q flag for all applicable Perforce operations. Summary details will still be displayed.
boolean
pin
When a build is triggered by Polling, Build Now or an external Action, the workspace will sync only to the specified label. Any other specified change or label will be ignored.
Supports variable expansion e.g. ${VAR}. If 'now' is used, or a variable that expands to 'now', then the latest change is used (within the scope of the workspace view).
String
parallel
enable
boolean
path
String
threads
String
minfiles
String
minbytes
String
browser
fishEye
url
String
rootModule
String
openGrok
url
String
depotPath
String
projectName
String
p4Web
url
String
swarm
url
String
$class: 'PlasticSCM'
selector
String
cleanup
MINIMAL
, STANDARD
, FULL
, DELETE
workingMode
NONE
, UP
, LDAP
credentialsId
String
useMultipleWorkspaces
boolean
additionalWorkspaces
selector
String
cleanup
MINIMAL
, STANDARD
, FULL
, DELETE
directory
String
pollOnController
boolean
directory
String
$class: 'ProxySCM'
projectName
String
$class: 'PvcsScm'
projectRoot
String
archiveRoot
String
changeLogPrefixFudge
String
moduleDir
String
loginId
String
pvcsWorkspace
String
promotionGroup
String
versionLabel
String
cleanCopy
boolean
$class: 'RTCScm'
overrideGlobal
The build toolkit location and Jazz Repository connection can be defined globally or overridden. If not defined globally, it must be overridden.
boolean
buildTool
The RTC build toolkit to use when performing builds. The toolkits available are defined in the system configuration (with the other tools like Ant and Java). The build toolkit is also necessary on the Master for polling and validating the job configuration unless the "Avoid using build toolkit on Master" option is enabled.
String
serverURI
The Jazz Repository connection URI for the Rational Team Concert (RTC) server
String
timeout
The timeout period in seconds for Jazz repository requests made during the build.
int
userId
The build user id. Either credentials or a user id and password information should be supplied.
String
password
The Jazz Repository password for the build user. The use of a password is not secure, it can be easily discovered by anyone with access to this page. Credentials, a password file or a password should be supplied.
class hudson.util.Secret
passwordFile
The path to the file containing the obfuscated Jazz Repository password for the build user. Credentials, a password file or a password should be supplied.
String
credentialsId
Credentials to use for the build user. A user name and password credential for the Jazz Repository should be configured.
String
buildType
value
String
buildDefinition
String
buildWorkspace
String
buildSnapshot
String
buildStream
String
acceptBeforeLoad
(optional)
boolean
addLinksToWorkItems
(optional)
boolean
buildSnapshotContext
(optional)
snapshotOwnerType
String
processAreaOfOwningStream
String
owningStream
String
owningWorkspace
String
clearLoadDirectory
(optional)
boolean
componentLoadConfig
(optional)
String
componentsToExclude
(optional)
String
createFoldersForComponents
(optional)
boolean
currentSnapshotOwnerType
(optional)
String
customizedSnapshotName
(optional)
String
generateChangelogWithGoodBuild
(optional)
boolean
loadDirectory
(optional)
String
loadPolicy
(optional)
String
overrideDefaultSnapshotName
(optional)
boolean
pathToLoadRuleFile
(optional)
String
pollingOnly
(optional)
boolean
pollingOnlyData
(optional)
snapshotUUID
String
processArea
(optional)
String
useDynamicLoadRules
(optional)
boolean
avoidUsingToolkit
Where possible avoid using the Build toolkit when performing tasks on the Master. This is still in the experimental stage. You will require an RTC 5.0 server which provides some of the services used.
The Build toolkit will not be used when polling RTC and terminating the RTC Build. The toolkit is still required though. It is used for other configuration tasks on the Master (i.e. validating the connection to RTC, the build definition or workspace). It is also used for checkout tasks typically performed on agent nodes.
boolean
$class: 'SCLMSCM'
server
String
port
int
credentialsId
String
JESINTERFACELEVEL1
boolean
FTPActiveMode
boolean
project
String
alternate
String
group
String
types
String
custJobStep
boolean
JobStep
String
custJobHeader
boolean
JobHeader
String
$class: 'ShellScriptSCM'
checkoutShell
String
pollingShell
String
useCheckoutForPolling
boolean
$class: 'SimpleClearCaseSCM'
loadRules
/vobs/structure/package/product/subproduct
/vobs/structure/package/product/anothersubproduct.
String
viewname
String
branch
String
filter
boolean
$class: 'StoreSCM'
scriptName
String
repositoryName
String
pundles
pundleType
PACKAGE
, BUNDLE
name
String
versionRegex
String
minimumBlessingLevel
String
generateParcelBuilderInputFile
boolean
parcelBuilderInputFilename
String
$class: 'SubversionSCM'
locations
remote
String
credentialsId
String
local
.
) may be used to check out the project directly into the workspace rather than into a subdirectory.
String
depthOption
String
ignoreExternalsOption
svn:externals
to gain read access to the entire Subversion repository. This can happen if you follow the normal practice of giving Jenkins credentials with read access to the entire Subversion repository. You will also need to provide the credentials to use when checking/polling out the svn:externals using the Additional Credentials option.
boolean
cancelProcessOnExternalsFail
boolean
workspaceUpdater
$class: 'CheckoutUpdater'
$class: 'NoopUpdater'
$class: 'UpdateUpdater'
$class: 'UpdateWithCleanUpdater'
$class: 'UpdateWithRevertUpdater'
browser
$class: 'Assembla'
spaceName
String
$class: 'BacklogRepositoryBrowser'
url
When no value is set, project of "Backlog URL" set above is used.
String
$class: 'CollabNetSVN'
url
String
$class: 'FishEyeSVN'
url
String
rootModule
String
$class: 'Phabricator'
url
String
repo
String
$class: 'PolarionRepositoryBrowser'
url
String
location
String
$class: 'RedmineRepositoryBrowser'
repositoryId
String
$class: 'SVNWeb'
url
String
$class: 'ScmManagerSvnRepositoryBrowser'
repoUrl
String
$class: 'Sventon'
url
String
repositoryInstance
String
$class: 'Sventon2'
url
String
repositoryInstance
String
$class: 'TeamForge'
connectionFactory
url
This should be the URL of your CollabNet TeamForge site. It should be of the form 'https://forge.collab.net'.
String
username
The user who will upload the files.
String
password
The password for the user specified above. If incorrectly given, the login to the CollabNet TeamForge server will fail.
String
project
String
repo
String
$class: 'TracRepositoryBrowser'
$class: 'ViewSVN'
url
String
$class: 'ViewVCRepositoryBrowser'
url
String
location
String
$class: 'VisualSVN'
url
String
$class: 'WebSVN'
url
String
excludedRegions
/trunk/myapp/src/main/web/.*\.html /trunk/myapp/src/main/web/.*\.jpeg /trunk/myapp/src/main/web/.*\.gifThe example above illustrates that if only html/jpeg/gif files have been committed to the SCM a build will not occur. More information on regular expressions can be found here.
String
excludedUsers
auto_build_userThe example above illustrates that if only revisions by "auto_build_user" have been committed to the SCM a build will not occur.
String
excludedRevprop
String
excludedCommitMessages
String
includedRegions
/trunk/myapp/c/library1/.* /trunk/myapp/c/library2/.*If /trunk/myapp is checked out, the build will only occur when there are changes to either the c/library1 and c/library2 subtrees. If there are also excluded regions specified, then a file is not ignored when it is in the included list and not in the excluded list. More information on regular expressions can be found here.
String
ignoreDirPropChanges
boolean
filterChangelog
boolean
additionalCredentials
If there are additional credentials required in order to obtain a complete checkout of the source, they can be provided here.
The realm is how the repository self-identifies to a client. It usually has the following format:
<proto://host:port> Realm Name
proto
is the protocol, e.g. http
or svn
.host
is the host how it's accessed by Jenkins, e.g. as IP address 192.168.1.100
, host name svnserver
, or host name and domain svn.example.org
.port
is the port, even if not explicitly specified. By default, this is 80
for HTTP, 443
for HTTPS, 3690 for the svn
protocol.Realm Name
is how the repository self-identifies. Common options include VisualSVN Server
, Subversion Authentication
or the UUID of the repository.To find out the realm, you could do any of the following:
Realm Name
(see above) in the authentication dialog.svn
program.
svn info https://svnserver/repo
and it will tell you the realm when asking you to enter a password, e.g.: Authentication realm: <svn://svnserver:3690> VisualSVN Server.~/.subversion/auth/svn/simple
; it will be two lines below the line svn:realmstring
.svn+ssh
protocol, the realm has the format username@svn+ssh://host:port
– note that the username is before the svn+ssh://
(unlike the URL used for normal SVN operations), and that there are no angle brackets and no realm name. For this protocol the default port is 22.Make sure to enter the realm exactly as shown, starting with a <
(except for repositories accessed via svn+ssh
– see above).
realm
<scheme://hostname(:port)> name
, while for servers accessed via svn+ssh
it is of the format (username@)svn+ssh://hostname(:port)
.
String
credentialsId
String
quietOperation
Mimics subversion command line --quiet
parameter for check out / update operations to help keep the output shorter. Prints nothing, or only summary information.
boolean
$class: 'SurroundSCM'
server
String
serverPort
String
branch
String
repository
String
credentialsId
String
rsaKey
(optional)
rsaKeyFileId
(optional)
String
rsaKeyFilePath
(optional)
String
rsaKeyType
(optional)
NoKey
, Path
, ID
rsaKeyValue
(optional)
String
rsaKeyFileId
(optional)
String
rsaKeyFilePath
(optional)
String
rsaKeyPath
(optional)
String
$class: 'SynergySCM'
project
String
database
String
release
String
purpose
String
username
String
password
String
engine
String
oldProject
String
baseline
String
oldBaseline
String
ccmHome
String
remoteClient
boolean
detectConflict
boolean
replaceSubprojects
boolean
checkForUpdateWarnings
boolean
leaveSessionOpen
boolean
maintainWorkarea
boolean
checkTaskModifiedObjects
boolean
$class: 'VaultSCM'
serverName
String
path
String
userName
String
password
String
repositoryName
String
vaultName
String
sslEnabled
boolean
useNonWorkingFolder
boolean
merge
String
fileTime
String
makeWritableEnabled
boolean
verboseEnabled
boolean
$class: 'hudson.plugins.gradle_repo.RepoScm'
repositoryUrl
String
branch
String
$class: 'hudson.plugins.repo.RepoScm'
The repo plugin provides Repo as an SCM tools in Jenkins.
The repo plugin provides an SCM implementation to be used with the Pipeline SCM checkout
step. The Pipeline Syntax Snippet Generator guides the user to select repo plugin checkout options and provides online help for each of the options.
manifestRepositoryUrl
The URL of the manifest. This is passed to repo as repo init -u url
.
String
cleanFirst
(optional)
When this is checked the first thing to do will be a
repo forall -c "git clean -fdx"
boolean
currentBranch
(optional)
Fetch only the current branch from server. Increases the speed of the repo sync operation. This is passed to repo as repo init --current-branch
and repo sync -c
.
boolean
depth
(optional)
Specify the depth in history to sync from the source. The default is to sync all of the history. Use 1 to just sync the most recent commit. This is passed to repo as repo init --depth=n
.
int
destinationDir
(optional)
The sub-directory of the workspace where the source should be synced. The default is the root of the workspace.
String
extraEnvVars
(optional)
java.util.Map<java.lang.String, java.lang.String>
fetchSubmodules
(optional)
Fetch submodules for from server. This is passed to repo as repo sync --fetch-submodules
.
boolean
forceSync
(optional)
Overwrite an existing git directory if it needs to point to a different object directory. WARNING: this may cause loss of data. This is passed to repo as repo sync --force-sync
.
boolean
ignoreProjects
(optional)
String
jobs
(optional)
Specify the number of projects to fetch simultaneously. The default is 1. This is passed to repo as repo sync --jobs=n
.
int
localManifest
(optional)
The contents of .repo/local_manifests/local.xml
. This is written prior to calling sync. The default is to not use a local.xml
file.
The contents may be given here literally, as XML; see the example below. Such literal content must start with the string <?xml
. Alternatively, the content may be given as an URL, in which case the file pointed by the URL is used. If the content does not start with the <?xml
prefix, it is assumed to be an URL.
An example
<?xml version="1.0" encoding="UTF-8"?> <manifest> <project path="external/project" name="org/project" remote="github" revision="master" /> </manifest>
String
manifestBranch
(optional)
The branch of the manifest to use. This is passed to repo as repo init -b branchname
. Repo will default to master if a branch name isn't provided.
String
manifestFile
(optional)
The initial manifest file to use while initializing the repo. This is passed to repo as repo init -m manifestFile
. If a manifest file is not specified, repo uses the default of "default.xml".
String
manifestGroup
(optional)
Restricts manifest projects to ones tagged with provided group name. This is passed to repo as repo init -g groupName
. If a group name is not provided, the -g
option is not passed to repo and it will default to fetching projects that are tagged with 'default'.
String
manifestPlatform
(optional)
Restrict manifest projects to ones with a specified platform group [auto|all|none|linux|darwin|...]
This is passed to repo as repo init -P platformName
. If a platform is not provided, the -p
option is not passed to repo and it will default to auto
and ony fetch projects which needed for current system.
String
manifestSubmodules
(optional)
Sync any submodules associated with the manifest repo. This is passed to repo as repo init --submodules
.
boolean
mirrorDir
(optional)
The location of the mirror directory to reference when initialising the repository. This is passed to repo as repo sync --reference=DIR
. This speeds up fetching code and isn't used by default.
String
noCloneBundle
(optional)
When this is checked --no-clone-bundle
is used when running the repo init
and repo sync
commands.
boolean
noTags
(optional)
Don't fetch tags. This is passed to repo as repo init --no-tags
and repo sync --no-tags
.
boolean
quiet
(optional)
Make repo more quiet. This is passed to repo as repo sync -q
.
boolean
repoBranch
(optional)
Use a specific branch for pulling repo itself. By default this is empty, and repo will be using its default branch (i.e. stable)
String
repoUrl
(optional)
Pull repo itself from this git repository. By default this is empty, and repo will be pulled from its default git url (i.e. googles)
String
resetFirst
(optional)
When this is checked the first thing to do will be a
repo forall -c "git reset --hard"
boolean
showAllChanges
(optional)
When this is checked --first-parent
is no longer passed to git log
when determining changesets.
boolean
trace
(optional)
Trace git command execution. This is passed to repo as repo --trace <subcommand>
.
boolean
worktree
(optional)
Use `git worktree` for checkouts (At least, Git version 2.15 is required to avoid dangerous gc bugs). Usefull under Windows because it no longer require symlinks at all.
boolean
none
$class: 'OpenShiftImageStreams'
imageStreamName
String
tag
String
apiURL
String
namespace
String
authToken
String
verbose
String
$class: 'PdsConfiguration'
connectionId
String
filterPattern
String
fileExtension
String
credentialsId
String
targetFolder
String
perforce
credential
Select the appropriate credential for the Perforce connection. Perforce Credentials are defined in the Jenkins Credentials plugin here.
There are two types:
String
workspace
Select the appropriate Perforce workspace behaviour from the list. Not all modes will suit all Jenkins Job build types.
There are five types:
manualSpec
charset
The character set used by Jenkins when syncing files from the Perforce server. This should be set to 'none' unless connected to a Unicode enabled Perforce server.
String
pinHost
boolean
name
Specify the name of the Perforce workspace to be used as the Jenkins build workspace. If the workspace does not yet exist, the configuration will be saved in Jenkins; the workspace is created only when it is to be used. If the workspace exists and you are connected to a Perforce server the auto-text fill should list suitable workspaces; updates are only applied when the workspace is used.
String
spec
allwrite
boolean
clobber
boolean
compress
boolean
locked
boolean
modtime
boolean
rmdir
boolean
streamName
String
line
Set line-ending character(s) for client text files.
linefeed: UNIX style.
carriage return: Macintosh style. (obsolete)
carriage return-linefeed: Windows style.
hybrid: writes UNIX style but reads UNIX, Mac or Windows style.
String
view
Lines to map depot files into the client workspace.
The variable ${P4_CLIENT} will expand to the client name, for example, a simple mapping:
//depot/... //${P4_CLIENT}/...
Maps files in the depot to files in your client workspace. Defines the files that you want in your client workspace and specifies where you want them to reside. The default view maps all depot files onto the client. See 'p4 help views' for view syntax. A new view takes effect on the next 'p4 sync'.
To support migration from the old Perforce plugin, a View Mapping can be inserted from a file in Perforce. Add the depot path to the "View Mappings" field Prefix "@" (this only applies to the "Manual" Workspace behaviour).
String
changeView
String
type
Type of client: writeable/readonly/partitioned/graph
By default all clients are 'writeable', certain clients are short lived and perform long sync and build cycles. Over time these build clients can fragment the 'db.have' table which is used to track what files a client has synced. Setting a type of 'readonly' gives the client its own personal 'db.have' database table. A 'readonly' client cannot 'edit' or 'submit' files, however for build automation this is not usually a requirement and the performance tradeoff is worth considering if your build automation is causing issues with the 'db.have' table. This option requires that an administrator has first configured the 'client.readonly.dir' setting. If it is necessary to submit changes as part of your build, you may specify a 'partitioned' client: like a 'reaonly' client, this type also has a separate 'db.have' table under the 'client.readonly.dir' directory, but allows journalled 'edit' and 'submit' of files.
String
serverID
String
backup
Client's participation in backup enable/disable. If not specified backup of a writable client defaults to enabled.
boolean
cleanup
boolean
syncID
(optional)
String
specFileSpec
charset
The character set used by Jenkins when syncing files from the Perforce server. This should be set to 'none' unless connected to a Unicode enabled Perforce server.
String
pinHost
boolean
name
Specify the name of the Perforce workspace to be used as the Jenkins build workspace. If the workspace does not yet exist, the configuration will be saved in Jenkins; the workspace is created only when it is to be used. If the workspace exists and you are connected to a Perforce server the auto-text fill should list suitable workspaces; updates are only applied when the workspace is used.
String
specPath
String
syncID
(optional)
String
staticSpec
charset
The character set used by Jenkins when syncing files from the Perforce server. This should be set to 'none' unless connected to a Unicode enabled Perforce server.
String
pinHost
boolean
name
Specify the name of an existing workspace in Perforce to be used as the Jenkins build workspace. If connected to a Perforce server the auto-text fill should list suitable workspaces
String
syncID
(optional)
String
streamSpec
charset
The character set used by Jenkins when syncing files from the Perforce server. This should be set to 'none' unless connected to a Unicode enabled Perforce server.
String
pinHost
boolean
streamName
Specify the full Perforce depot path for the given stream. If connected to a Perforce server the auto-text fill should list possible streams.
For example: //stream-depot/main-streamString
format
Jenklin slave nodes must each use a unique Perforce workspace. The format string configures the workspace name by substituting the specified variables: (at least one variable must be used)
Variables can be taken from the Jenkins Environment or Parameterized builds
String
syncID
(optional)
String
templateSpec
charset
The character set used by Jenkins when syncing files from the Perforce server. This should be set to 'none' unless connected to a Unicode enabled Perforce server.
String
pinHost
boolean
templateName
Specify the name of an existing workspace in Perforce used to create or update a Jenkins build workspace. If connected to a Perforce server the auto-text fill should list suitable workspaces
String
format
Jenklin slave nodes must each use a unique Perforce workspace. The format string configures the workspace name by substituting the specified variables: (at least one variable must be used)
Variables can be taken from the Jenkins Environment or Parameterized builds
String
syncID
(optional)
String
filter
latest
latestChange
boolean
pathFilter
path
Changes can be filtered to not trigger a build; if all the files within a change match the specified path, the build is filtered.
For example, with a Filter of " //depot/main/tests
":
Case A (change will be filtered):
Files:
//depot/main/tests/index.xml
//depot/main/tests/001/test.xml
//depot/main/tests/002/test.xml
Case B (change will not be filtered, as build.xml is outside of the filter):
Files:
//depot/main/src/build.xml
//depot/main/tests/004/test.xml
//depot/main/tests/005/test.xml
This is not Perforce syntax. Use of ... and * patterns are not supported. Only paths to directories are supported.
String
viewPattern
patternText
Changes can be filtered to not trigger a build; if none of the files within a change match a Java pattern (regular expression) listed, the build is filtered.
For example, with the following regular expressions: //depot/main/tests.*
//depot/main/src/.*\.cpp
//depot/main/build/.*(?:\.rb|\.py|\.bat|Jenkinsfile)
//depot/main/lib/(?!Lib1|Lib2).*
Case A (change will not be filtered, as these files match our first pattern on "tests"):
Files:
//depot/main/tests/CONTRIUBTING.md
//depot/main/tests/001/index.xml
Case B (Be careful with incomplete file paths! Change will NOT be filtered,
as this file matches a pattern which was likely intended as describing a "tests/" directory.)
Files:
//depot/main/tests.doc
Case C (change will NOT be filtered, as all files match our fourth pattern looking for script files in 'build/'):
Files:
//depot/main/build/rbs/deploy_server.rb
//depot/main/build/deploy/deploy.bat
//depot/main/build/Jenkinsfile
Case D (change will be filtered, as no file matches our second pattern for ".cpp" files under "main/src"):
Files:
//depot/main/src/howto.doc
//depot/main/src/oldmain.c
//depot/main/src/art/splash.bmp
//depot/main/src/bt/funnelcake.php
Case E (change will be filtered. Lib1 is included in a negative lookahead, and thus is excluded.)
Files:
//depot/main/lib/Lib1/build.xml
String
caseSensitive
boolean
incremental
perChange
When enabled, only the one, oldest changelist returned by polling is built.
If P4_INCREMENTAL
environment variable (or build parameter) is set to "false", polling per change is ignored and all changelists are built.
boolean
userFilter
user
Changes can be filtered to not trigger a build; if the owner of a change matches the specified name, the build is filtered.
String
viewFilter
viewMask
Changes can be filtered to not trigger a build; if none of the files within a change are contained in the view mask, the build is filtered.
For example, with a View Mask Filter of: //depot/main/tests
-//depot/main/tests/001
Case A (change will not be filtered, as index.xml is in the view mask):
Files:
//depot/main/tests/index.xml
//depot/main/tests/001/test.xml
Case B (change will not be filtered, as index.xml is in the view mask):
Files:
//depot/main/test/index.xml
//depot/main/src/build.xml
Case C (change will be filtered, as no file is in the view mask):
Files:
//depot/main/src/build.xml
Case D (change will be filtered, as no file is in the view mask):
Files:
//depot/main/src/build.xml
//depot/main/tests/001/test.xml
String
populate
Perforce will populate the workspace with the file revisions needed for the build. The different options effect the way the workspace is cleaned and the file revisions are updated.
There are three options:
autoClean
replace
Perforce will check out and overwrite any depot files which are either missing from workspace, or have been modified locally.
boolean
delete
Perforce will delete any local files that are not in the depot.
boolean
tidy
boolean
modtime
boolean
quiet
Enables the -q flag for all applicable Perforce operations. Summary details will still be displayed.
boolean
pin
When a build is triggered by Polling, Build Now or an external Action, the workspace will sync only to the specified label. Any other specified change or label will be ignored.
Supports variable expansion e.g. ${VAR}. If 'now' is used, or a variable that expands to 'now', then the latest change is used (within the scope of the workspace view).
String
parallel
enable
boolean
path
String
threads
String
minfiles
String
minbytes
String
previewOnly
quiet
Enables the -q flag for all applicable Perforce operations. Summary details will still be displayed.
boolean
pin
String
flushOnly
quiet
boolean
pin
When a build is triggered by Polling, Build Now or an external Action, the workspace will flush only to the specified label or changelist number. Any other specified change or label will be ignored.
Supports variable expansion e.g. ${VAR}. If 'now' is used, or a variable that expands to 'now', then the latest change is used (within the scope of the workspace view).
String
forceClean
have
boolean
quiet
Enables the -q flag for all applicable Perforce operations. Summary details will still be displayed.
boolean
pin
When a build is triggered by Polling, Build Now or an external Action, the workspace will sync only to the specified label. Any other specified change or label will be ignored.
Supports variable expansion e.g. ${VAR}. If 'now' is used, or a variable that expands to 'now', then the latest change is used (within the scope of the workspace view).
String
parallel
enable
boolean
path
String
threads
String
minfiles
String
minbytes
String
graphClean
quiet
Enables the -q flag for all applicable Perforce operations. Summary details will still be displayed.
boolean
pin
When a build is triggered by Polling, Build Now or an external Action, the workspace will sync only to the specified label. Any other specified change or label will be ignored.
Supports variable expansion e.g. ${VAR}. If 'now' is used, or a variable that expands to 'now', then the latest change is used (within the scope of the workspace view).
String
parallel
enable
boolean
path
String
threads
String
minfiles
String
minbytes
String
syncOnly
revert
boolean
have
boolean
force
boolean
modtime
boolean
quiet
Enables the -q flag for all applicable Perforce operations. Summary details will still be displayed.
boolean
pin
When a build is triggered by Polling, Build Now or an external Action, the workspace will sync only to the specified label. Any other specified change or label will be ignored.
Supports variable expansion e.g. ${VAR}. If 'now' is used, or a variable that expands to 'now', then the latest change is used (within the scope of the workspace view).
String
parallel
enable
boolean
path
String
threads
String
minfiles
String
minbytes
String
browser
fishEye
url
String
rootModule
String
openGrok
url
String
depotPath
String
projectName
String
p4Web
url
String
swarm
url
String
$class: 'PlasticSCM'
selector
String
cleanup
MINIMAL
, STANDARD
, FULL
, DELETE
workingMode
NONE
, UP
, LDAP
credentialsId
String
useMultipleWorkspaces
boolean
additionalWorkspaces
selector
String
cleanup
MINIMAL
, STANDARD
, FULL
, DELETE
directory
String
pollOnController
boolean
directory
String
$class: 'ProxySCM'
projectName
String
$class: 'PvcsScm'
projectRoot
String
archiveRoot
String
changeLogPrefixFudge
String
moduleDir
String
loginId
String
pvcsWorkspace
String
promotionGroup
String
versionLabel
String
cleanCopy
boolean
$class: 'RTCScm'
overrideGlobal
The build toolkit location and Jazz Repository connection can be defined globally or overridden. If not defined globally, it must be overridden.
boolean
buildTool
The RTC build toolkit to use when performing builds. The toolkits available are defined in the system configuration (with the other tools like Ant and Java). The build toolkit is also necessary on the Master for polling and validating the job configuration unless the "Avoid using build toolkit on Master" option is enabled.
String
serverURI
The Jazz Repository connection URI for the Rational Team Concert (RTC) server
String
timeout
The timeout period in seconds for Jazz repository requests made during the build.
int
userId
The build user id. Either credentials or a user id and password information should be supplied.
String
password
The Jazz Repository password for the build user. The use of a password is not secure, it can be easily discovered by anyone with access to this page. Credentials, a password file or a password should be supplied.
class hudson.util.Secret
passwordFile
The path to the file containing the obfuscated Jazz Repository password for the build user. Credentials, a password file or a password should be supplied.
String
credentialsId
Credentials to use for the build user. A user name and password credential for the Jazz Repository should be configured.
String
buildType
value
String
buildDefinition
String
buildWorkspace
String
buildSnapshot
String
buildStream
String
acceptBeforeLoad
(optional)
boolean
addLinksToWorkItems
(optional)
boolean
buildSnapshotContext
(optional)
snapshotOwnerType
String
processAreaOfOwningStream
String
owningStream
String
owningWorkspace
String
clearLoadDirectory
(optional)
boolean
componentLoadConfig
(optional)
String
componentsToExclude
(optional)
String
createFoldersForComponents
(optional)
boolean
currentSnapshotOwnerType
(optional)
String
customizedSnapshotName
(optional)
String
generateChangelogWithGoodBuild
(optional)
boolean
loadDirectory
(optional)
String
loadPolicy
(optional)
String
overrideDefaultSnapshotName
(optional)
boolean
pathToLoadRuleFile
(optional)
String
pollingOnly
(optional)
boolean
pollingOnlyData
(optional)
snapshotUUID
String
processArea
(optional)
String
useDynamicLoadRules
(optional)
boolean
avoidUsingToolkit
Where possible avoid using the Build toolkit when performing tasks on the Master. This is still in the experimental stage. You will require an RTC 5.0 server which provides some of the services used.
The Build toolkit will not be used when polling RTC and terminating the RTC Build. The toolkit is still required though. It is used for other configuration tasks on the Master (i.e. validating the connection to RTC, the build definition or workspace). It is also used for checkout tasks typically performed on agent nodes.
boolean
$class: 'SCLMSCM'
server
String
port
int
credentialsId
String
JESINTERFACELEVEL1
boolean
FTPActiveMode
boolean
project
String
alternate
String
group
String
types
String
custJobStep
boolean
JobStep
String
custJobHeader
boolean
JobHeader
String
$class: 'ShellScriptSCM'
checkoutShell
String
pollingShell
String
useCheckoutForPolling
boolean
$class: 'SimpleClearCaseSCM'
loadRules
/vobs/structure/package/product/subproduct
/vobs/structure/package/product/anothersubproduct.
String
viewname
String
branch
String
filter
boolean
$class: 'StoreSCM'
scriptName
String
repositoryName
String
pundles
pundleType
PACKAGE
, BUNDLE
name
String
versionRegex
String
minimumBlessingLevel
String
generateParcelBuilderInputFile
boolean
parcelBuilderInputFilename
String
$class: 'SubversionSCM'
locations
remote
String
credentialsId
String
local
.
) may be used to check out the project directly into the workspace rather than into a subdirectory.
String
depthOption
String
ignoreExternalsOption
svn:externals
to gain read access to the entire Subversion repository. This can happen if you follow the normal practice of giving Jenkins credentials with read access to the entire Subversion repository. You will also need to provide the credentials to use when checking/polling out the svn:externals using the Additional Credentials option.
boolean
cancelProcessOnExternalsFail
boolean
workspaceUpdater
$class: 'CheckoutUpdater'
$class: 'NoopUpdater'
$class: 'UpdateUpdater'
$class: 'UpdateWithCleanUpdater'
$class: 'UpdateWithRevertUpdater'
browser
$class: 'Assembla'
spaceName
String
$class: 'BacklogRepositoryBrowser'
url
When no value is set, project of "Backlog URL" set above is used.
String
$class: 'CollabNetSVN'
url
String
$class: 'FishEyeSVN'
url
String
rootModule
String
$class: 'Phabricator'
url
String
repo
String
$class: 'PolarionRepositoryBrowser'
url
String
location
String
$class: 'RedmineRepositoryBrowser'
repositoryId
String
$class: 'SVNWeb'
url
String
$class: 'ScmManagerSvnRepositoryBrowser'
repoUrl
String
$class: 'Sventon'
url
String
repositoryInstance
String
$class: 'Sventon2'
url
String
repositoryInstance
String
$class: 'TeamForge'
connectionFactory
url
This should be the URL of your CollabNet TeamForge site. It should be of the form 'https://forge.collab.net'.
String
username
The user who will upload the files.
String
password
The password for the user specified above. If incorrectly given, the login to the CollabNet TeamForge server will fail.
String
project
String
repo
String
$class: 'TracRepositoryBrowser'
$class: 'ViewSVN'
url
String
$class: 'ViewVCRepositoryBrowser'
url
String
location
String
$class: 'VisualSVN'
url
String
$class: 'WebSVN'
url
String
excludedRegions
/trunk/myapp/src/main/web/.*\.html /trunk/myapp/src/main/web/.*\.jpeg /trunk/myapp/src/main/web/.*\.gifThe example above illustrates that if only html/jpeg/gif files have been committed to the SCM a build will not occur. More information on regular expressions can be found here.
String
excludedUsers
auto_build_userThe example above illustrates that if only revisions by "auto_build_user" have been committed to the SCM a build will not occur.
String
excludedRevprop
String
excludedCommitMessages
String
includedRegions
/trunk/myapp/c/library1/.* /trunk/myapp/c/library2/.*If /trunk/myapp is checked out, the build will only occur when there are changes to either the c/library1 and c/library2 subtrees. If there are also excluded regions specified, then a file is not ignored when it is in the included list and not in the excluded list. More information on regular expressions can be found here.
String
ignoreDirPropChanges
boolean
filterChangelog
boolean
additionalCredentials
If there are additional credentials required in order to obtain a complete checkout of the source, they can be provided here.
The realm is how the repository self-identifies to a client. It usually has the following format:
<proto://host:port> Realm Name
proto
is the protocol, e.g. http
or svn
.host
is the host how it's accessed by Jenkins, e.g. as IP address 192.168.1.100
, host name svnserver
, or host name and domain svn.example.org
.port
is the port, even if not explicitly specified. By default, this is 80
for HTTP, 443
for HTTPS, 3690 for the svn
protocol.Realm Name
is how the repository self-identifies. Common options include VisualSVN Server
, Subversion Authentication
or the UUID of the repository.To find out the realm, you could do any of the following:
Realm Name
(see above) in the authentication dialog.svn
program.
svn info https://svnserver/repo
and it will tell you the realm when asking you to enter a password, e.g.: Authentication realm: <svn://svnserver:3690> VisualSVN Server.~/.subversion/auth/svn/simple
; it will be two lines below the line svn:realmstring
.svn+ssh
protocol, the realm has the format username@svn+ssh://host:port
– note that the username is before the svn+ssh://
(unlike the URL used for normal SVN operations), and that there are no angle brackets and no realm name. For this protocol the default port is 22.Make sure to enter the realm exactly as shown, starting with a <
(except for repositories accessed via svn+ssh
– see above).
realm
<scheme://hostname(:port)> name
, while for servers accessed via svn+ssh
it is of the format (username@)svn+ssh://hostname(:port)
.
String
credentialsId
String
quietOperation
Mimics subversion command line --quiet
parameter for check out / update operations to help keep the output shorter. Prints nothing, or only summary information.
boolean
$class: 'SurroundSCM'
server
String
serverPort
String
branch
String
repository
String
credentialsId
String
rsaKey
(optional)
rsaKeyFileId
(optional)
String
rsaKeyFilePath
(optional)
String
rsaKeyType
(optional)
NoKey
, Path
, ID
rsaKeyValue
(optional)
String
rsaKeyFileId
(optional)
String
rsaKeyFilePath
(optional)
String
rsaKeyPath
(optional)
String
$class: 'SynergySCM'
project
String
database
String
release
String
purpose
String
username
String
password
String
engine
String
oldProject
String
baseline
String
oldBaseline
String
ccmHome
String
remoteClient
boolean
detectConflict
boolean
replaceSubprojects
boolean
checkForUpdateWarnings
boolean
leaveSessionOpen
boolean
maintainWorkarea
boolean
checkTaskModifiedObjects
boolean
$class: 'VaultSCM'
serverName
String
path
String
userName
String
password
String
repositoryName
String
vaultName
String
sslEnabled
boolean
useNonWorkingFolder
boolean
merge
String
fileTime
String
makeWritableEnabled
boolean
verboseEnabled
boolean
$class: 'hudson.plugins.gradle_repo.RepoScm'
repositoryUrl
String
branch
String
$class: 'hudson.plugins.repo.RepoScm'
The repo plugin provides Repo as an SCM tools in Jenkins.
The repo plugin provides an SCM implementation to be used with the Pipeline SCM checkout
step. The Pipeline Syntax Snippet Generator guides the user to select repo plugin checkout options and provides online help for each of the options.
manifestRepositoryUrl
The URL of the manifest. This is passed to repo as repo init -u url
.
String
cleanFirst
(optional)
When this is checked the first thing to do will be a
repo forall -c "git clean -fdx"
boolean
currentBranch
(optional)
Fetch only the current branch from server. Increases the speed of the repo sync operation. This is passed to repo as repo init --current-branch
and repo sync -c
.
boolean
depth
(optional)
Specify the depth in history to sync from the source. The default is to sync all of the history. Use 1 to just sync the most recent commit. This is passed to repo as repo init --depth=n
.
int
destinationDir
(optional)
The sub-directory of the workspace where the source should be synced. The default is the root of the workspace.
String
extraEnvVars
(optional)
java.util.Map<java.lang.String, java.lang.String>
fetchSubmodules
(optional)
Fetch submodules for from server. This is passed to repo as repo sync --fetch-submodules
.
boolean
forceSync
(optional)
Overwrite an existing git directory if it needs to point to a different object directory. WARNING: this may cause loss of data. This is passed to repo as repo sync --force-sync
.
boolean
ignoreProjects
(optional)
String
jobs
(optional)
Specify the number of projects to fetch simultaneously. The default is 1. This is passed to repo as repo sync --jobs=n
.
int
localManifest
(optional)
The contents of .repo/local_manifests/local.xml
. This is written prior to calling sync. The default is to not use a local.xml
file.
The contents may be given here literally, as XML; see the example below. Such literal content must start with the string <?xml
. Alternatively, the content may be given as an URL, in which case the file pointed by the URL is used. If the content does not start with the <?xml
prefix, it is assumed to be an URL.
An example
<?xml version="1.0" encoding="UTF-8"?> <manifest> <project path="external/project" name="org/project" remote="github" revision="master" /> </manifest>
String
manifestBranch
(optional)
The branch of the manifest to use. This is passed to repo as repo init -b branchname
. Repo will default to master if a branch name isn't provided.
String
manifestFile
(optional)
The initial manifest file to use while initializing the repo. This is passed to repo as repo init -m manifestFile
. If a manifest file is not specified, repo uses the default of "default.xml".
String
manifestGroup
(optional)
Restricts manifest projects to ones tagged with provided group name. This is passed to repo as repo init -g groupName
. If a group name is not provided, the -g
option is not passed to repo and it will default to fetching projects that are tagged with 'default'.
String
manifestPlatform
(optional)
Restrict manifest projects to ones with a specified platform group [auto|all|none|linux|darwin|...]
This is passed to repo as repo init -P platformName
. If a platform is not provided, the -p
option is not passed to repo and it will default to auto
and ony fetch projects which needed for current system.
String
manifestSubmodules
(optional)
Sync any submodules associated with the manifest repo. This is passed to repo as repo init --submodules
.
boolean
mirrorDir
(optional)
The location of the mirror directory to reference when initialising the repository. This is passed to repo as repo sync --reference=DIR
. This speeds up fetching code and isn't used by default.
String
noCloneBundle
(optional)
When this is checked --no-clone-bundle
is used when running the repo init
and repo sync
commands.
boolean
noTags
(optional)
Don't fetch tags. This is passed to repo as repo init --no-tags
and repo sync --no-tags
.
boolean
quiet
(optional)
Make repo more quiet. This is passed to repo as repo sync -q
.
boolean
repoBranch
(optional)
Use a specific branch for pulling repo itself. By default this is empty, and repo will be using its default branch (i.e. stable)
String
repoUrl
(optional)
Pull repo itself from this git repository. By default this is empty, and repo will be pulled from its default git url (i.e. googles)
String
resetFirst
(optional)
When this is checked the first thing to do will be a
repo forall -c "git reset --hard"
boolean
showAllChanges
(optional)
When this is checked --first-parent
is no longer passed to git log
when determining changesets.
boolean
trace
(optional)
Trace git command execution. This is passed to repo as repo --trace <subcommand>
.
boolean
worktree
(optional)
Use `git worktree` for checkouts (At least, Git version 2.15 is required to avoid dangerous gc bugs). Usefull under Windows because it no longer require symlinks at all.
boolean
changelog
(optional)
If 'Include in changelog' is enabled for an SCM source, then when a build occurs, the changes from that SCM source will be included in the changelog.
If 'Include in changelog' is disabled, then when a build occurs, the changes from this SCM source will not be included in the changelog.
boolean
poll
(optional)
If 'Include in polling' is enabled or 'Include in changelog' is enabled, then when polling occurs, the job will be started if changes are detected from this SCM source.
If 'Include in polling' is disabled and 'Include in changelog' is disabled, then when polling occurs, changes that are detected from this repository will be ignored.
boolean
Please submit your feedback about this page through this quick form.
Alternatively, if you don't wish to complete the quick form, you can simply indicate if you found this page helpful?
See existing feedback here.