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
The AWS region must be the same to the region where your action runs in CodePipeline. Examples: "us-east-1", "cn-north-1", "us-gov-west-1". To list all supported regions, see AWS CodePipeline endpoints and quotas.
awsAccessKey : String
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.
awsSecretKey : String
>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.
proxyHost : String
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.
proxyPort : String
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.
category : String
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.
provider : String
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.
version : String
Leave the default as 1.
accurev
depot : String
stream : String
serverName : String
(optional)
serverUUID : String
(optional)
wspaceORreftree : String
(optional)
accurevTool : String
(optional)
cleanreftree : boolean
(optional)
directoryOffset : String
(optional)
dontPopContent : boolean
(optional)
filterForPollSCM : String
(optional)
ignoreStreamParent : boolean
(optional)
reftree : String
(optional)
snapshotNameFormat : String
(optional)
subPath : String
(optional)
subPathOnly : boolean
(optional)
synctime : boolean
(optional)
useSnapshot : boolean
(optional)
workspace : String
(optional)
$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 : String
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
credentialsId : String
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.
sshCredentialsId : String
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:
extensions
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'
buildSingleRevisionOnly
changelogToBranch
options
compareRemote : String
origin
, that contains the branch you specify below.
compareTarget : String
checkoutOption
timeout : int
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 : boolean
(optional)
.git
directories.
cleanAfterCheckout
.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 : boolean
(optional)
.git
directories.
cloneOption
shallow : boolean
noTags : boolean
reference : String
timeout : int
depth : int
(optional)
honorRefspec : boolean
(optional)
$class: 'CodeCommitURLHelper'
credentialId : String
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.
repositoryName : String
$class: 'DisableRemotePoll'
$class: 'ExcludeFromChangeSet'
$class: 'ExcludeFromPoll'
lfs
$class: 'GitSCMChecksExtension'
verboseConsoleLog : boolean
(optional)
$class: 'GitSCMStatusChecksExtension'
name : String
(optional)
skip : boolean
(optional)
skipProgressUpdates : boolean
(optional)
suppressLogs : boolean
(optional)
unstableBuildNeutral : boolean
(optional)
$class: 'GitTagMessageExtension'
useMostRecentTag : boolean
(optional)
$class: 'IgnoreNotifyCommit'
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 : String
.*\[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.
$class: 'PathRestriction'
includedRegions : String
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.
excludedRegions : String
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.
perBuildTag
$class: 'PreBuildMerge'
options
mergeTarget : String
master
.
fastForwardMode
(optional)
FF
, FF_ONLY
, NO_FF
mergeRemote : String
(optional)
origin
, that contains the branch you specify below. If left blank, it'll default to the name of the first repository configured above.
mergeStrategy
(optional)
DEFAULT
, RESOLVE
, RECURSIVE
, OCTOPUS
, OURS
, SUBTREE
, RECURSIVE_THEIRS
pretestedIntegration
gitIntegrationStrategy
accumulated
shortCommitMessage : boolean
(optional)
ffonly
shortCommitMessage : boolean
(optional)
squash
integrationBranch : String
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>
repoName : String
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
pruneStaleBranch
pruneTags
pruneTags : boolean
$class: 'RelativeTargetDirectory'
relativeTargetDir : String
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.
$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
submodule
depth : int
(optional)
disableSubmodules : boolean
(optional)
parentCredentials : boolean
(optional)
recursiveSubmodules : boolean
(optional)
reference : String
(optional)
git init --bare git remote add SubProject1 https://gitrepo.com/subproject1 git remote add SubProject2 https://gitrepo.com/subproject2 git fetch --all
shallow : boolean
(optional)
threads : int
(optional)
timeout : int
(optional)
trackingSubmodules : boolean
(optional)
$class: 'UserExclusion'
excludedUsers : String
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.
$class: 'UserIdentity'
name : String
If given, "GIT_COMMITTER_NAME=[this]" and "GIT_AUTHOR_NAME=[this]" are set for builds. This overrides whatever is in the global settings.
email : String
If given, "GIT_COMMITTER_EMAIL=[this]" and "GIT_AUTHOR_EMAIL=[this]" are set for builds. This overrides whatever is in the global settings.
$class: 'WipeWorkspace'
gitTool : String
projectName : String
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.
repositoryName : String
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.
serverId : String
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.
mirrorName : String
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.
$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'
$class: 'CVSSCM'
$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 : String
Label expression used to populate view storage location dropdown.
server : String
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.
$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 : String
Label expression used to populate view storage location dropdown.
server : String
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.
$class: 'SpecificViewStorage'
winStorageDir : String
unixStorageDir : String
buildFoundationBaseline : boolean
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.
$class: 'CloneWorkspaceSCM'
parentJobName : String
criteria : String
$class: 'CmvcSCM'
family : String
become : String
releases : String
checkoutScript : String
trackViewReportWhereClause : String
$class: 'CvsProjectset'
$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 : boolean
(optional)
canJobExpand : boolean
(optional)
canJobForce : boolean
(optional)
canJobNoMetadata : boolean
(optional)
canJobNoTouch : boolean
(optional)
canJobRevert : boolean
(optional)
canJobUpdate : boolean
(optional)
eol : String
(optional)
folders
(optional)
value : String
pathsToExclude
(optional)
value : String
permissions : String
(optional)
timeZone : String
(optional)
webUrl : String
(optional)
$class: 'DrushMakefileSCM'
makefile : String
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
root : String
$class: 'EndevorConfiguration'
connectionId : String
filterPattern : String
fileExtension : String
credentialsId : String
targetFolder : String
filesystem
path : String
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)
clearWorkspace : boolean
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.
copyHidden : boolean
If true, the system will copy hidden files and folders as well. Default is false.
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 : String
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 (/)
$class: 'FeatureBranchAwareMercurialSCM'
installation : String
source : String
branch : String
modules : String
subdir : String
my/sources
(use forward slashes). If changing this entry, you probably want to clean the workspace first.
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 : String
http://YOURSCMMANAGER/scm/repo/NAMESPACE/NAME/
).
clean : boolean
branchPattern : String
$class: 'GeneXusServerSCM'
gxInstallationId : String
GeneXus installation to use when creating (or updating) a local copy of a Knowledge Base from a GeneXus Server.
Select "(Custom)" if you want to specify a custom GeneXus path for this project (see Advanced Options).
The options that appear here are those you may configure in Jenkins "Global Tool Configuration" for GeneXus.
gxCustomPath : String
Custom path to a GeneXus installation to use when creating (or updating) a local copy of Knowledge Base from a GeneXus Server. This custom path is used when the "Custom" option is selected for the GeneXus Installation
msbuildCustomPath : String
Custom path to the MSBuild installation to use when creating (or updating) a local copy of Knowledge Base from a GeneXus Server.
serverURL : String
credentialsId : String
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.
kbName : String
kbVersion : String
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.
localKbPath : String
Path to the local Knowledge Base to use as working copy.
If you leave it blank the default ${WORKSPACE}\KBname
will apply.
localKbVersion : String
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.
kbDbServerInstance : String
kbDbCredentialsId : String
Credentials to use when to connecting to SQL Server.
Select "none" for Windows Authentication.
kbDbName : String
Name of the SQL Server database used for the local Knowledge Base.
Leave it blank to use the default database name.
kbDbInSameFolder : boolean
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)
.
scmGit
$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 : boolean
(optional)
alternateWorkspace : String
(optional)
browser
(optional)
$class: 'IntegrityWebUI'
url : String
checkoutThreadPoolSize : int
(optional)
checkoutThreadTimeout : int
(optional)
checkpointBeforeBuild : boolean
(optional)
checkpointLabel : String
(optional)
cleanCopy : boolean
(optional)
deleteNonMembers : boolean
(optional)
excludeList : String
(optional)
fetchChangedWorkspaceFiles : boolean
(optional)
includeList : String
(optional)
lineTerminator : String
(optional)
localClient : boolean
(optional)
password : String
(optional)
restoreTimestamp : boolean
(optional)
sandboxScope : String
(optional)
skipAuthorInfo : boolean
(optional)
userName : String
(optional)
$class: 'IspwConfiguration'
connectionId : String
credentialsId : String
serverConfig : String
serverStream : String
serverApplication : String
serverSubAppl : 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'
$class: 'MergebotScm'
cleanup
MINIMAL
, STANDARD
, FULL
, DELETE
workingMode
NONE
, UP
, LDAP
credentialsId : String
specAttributeName : String
$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 : String
Select the appropriate credential for the Perforce connection. Perforce Credentials are defined in the Jenkins Credentials plugin here.
There are two types:
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 : String
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.
pinHost : boolean
name : String
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.
spec
allwrite : boolean
clobber : boolean
compress : boolean
locked : boolean
modtime : boolean
rmdir : boolean
streamName : String
line : String
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.
view : String
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).
changeView : String
type : String
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.
serverID : String
backup : boolean
Client's participation in backup enable/disable. If not specified backup of a writable client defaults to enabled.
streamAtChange : String
(optional)
When specified, the client view is generated from the stream specification version at or before the change number.
cleanup : boolean
syncID : String
(optional)
specFileSpec
charset : String
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.
pinHost : boolean
name : String
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.
specPath : String
syncID : String
(optional)
staticSpec
charset : String
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.
pinHost : boolean
name : String
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
syncID : String
(optional)
streamSpec
charset : String
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.
pinHost : boolean
streamName : String
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-streamformat : String
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
streamAtChange : String
(optional)
When specified, the client view is generated from the stream specification version at or before the change number.
syncID : String
(optional)
templateSpec
charset : String
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.
pinHost : boolean
templateName : String
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
format : String
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
syncID : String
(optional)
filter
latest
latestChange : boolean
latestWithPin
latestWithPin : boolean
When enabled, in case of a pinned checkout, polling ignores the pin or the label specified in the checkout step and polls till the latest change.
pathFilter
path : String
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.
viewPattern
patternText : String
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
caseSensitive : boolean
incremental
perChange : boolean
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.
userFilter
user : String
Changes can be filtered to not trigger a build; if the owner of a change matches the specified name, the build is filtered.
viewFilter
viewMask : String
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
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 : boolean
Perforce will check out and overwrite any depot files which are either missing from workspace, or have been modified locally.
delete : boolean
Perforce will delete any local files that are not in the depot.
tidy : boolean
modtime : boolean
quiet : boolean
Enables the -q flag for all applicable Perforce operations. Summary details will still be displayed.
pin : String
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).
parallel
enable : boolean
path : String
threads : String
minfiles : String
minbytes : String
previewOnly
quiet : boolean
Enables the -q flag for all applicable Perforce operations. Summary details will still be displayed.
pin : String
flushOnly
quiet : boolean
pin : String
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).
forceClean
have : boolean
quiet : boolean
Enables the -q flag for all applicable Perforce operations. Summary details will still be displayed.
pin : String
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).
parallel
enable : boolean
path : String
threads : String
minfiles : String
minbytes : String
graphClean
quiet : boolean
Enables the -q flag for all applicable Perforce operations. Summary details will still be displayed.
pin : String
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).
parallel
enable : boolean
path : String
threads : String
minfiles : String
minbytes : String
syncOnly
revert : boolean
have : boolean
force : boolean
modtime : boolean
quiet : boolean
Enables the -q flag for all applicable Perforce operations. Summary details will still be displayed.
pin : String
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).
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'
$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 : String
/vobs/structure/package/product/subproduct
/vobs/structure/package/product/anothersubproduct.
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'
$class: 'SurroundSCM'
server : String
serverPort : String
branch : String
repository : String
credentialsId : String
rsaKey
(optional)
rsaKeyFileId : String
(optional)
rsaKeyFilePath : String
(optional)
rsaKeyType
(optional)
NoKey
, Path
, ID
rsaKeyValue : String
(optional)
rsaKeyFileId : String
(optional)
rsaKeyFilePath : String
(optional)
rsaKeyPath : String
(optional)
$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'
changelog : boolean
(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.
poll : boolean
(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.
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.