Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Many project configuration options are available to the templates screen. This page seeks to list all of the available methods and enough information to use them in your templates. 

General Project Methods

Code Block
languagegroovy
Project.setProjectPath(String pProjectPath)
Project.setProjectName(String pProjectName)
Project.setDeployPriority(Integer pDeployPriority)
Project.setDeployPriorityScope(String pDeployPriorityScope)
Project.setDescription(String pDescription)
Project.addProperty(String pPropertyName, Object pPropertyValue)
Project.setActive(String pActive)
Project.setActive(boolean pActive)

Workflow Methods

Code Block
languagegroovy
Project.setBuildWorkflowName(String pBuildWorkflowName)
Project.setDeployWorkflowName(String pDeployWorkflowName)

Instance Methods

Code Block
languagegroovy
Project.setBuildInstanceName(String pBuildInstanceName)
Project.addDeployInstances(String... pDeployInstances) Project.addDeployInstances(String pDeployInstances) Project.addDeployInstances(String pDeployInstances, String pDelimiter) Project.addDeployInstanceName(String pDeployInstanceName)

SCM Methods

SCM Type

Info

PERF (Perforce) support was added in 4.0.2.

Code Block
titleSetting the SCM Type for the Projects
Project.setSCMType("SCM Type")
Valid Strings for the "SCM Type" are SVN, GIT, TFS, CVS, PERF


Or, use one of these methods instead:
Project.setSVNForSCM()
Project.setGITForSCM()
Project.setTFVCForSCM()
Project.setCVSForSCM()
Project.setPERFForSCM()

Stream Settings

Add additional project streams if necessary. These streams are what the int pSequenceNumber in the SCM details section below refer to.


Code Block
languagegroovy
Project.createStreamFromMainStream(String pStreamName)

Project.createStream(String pStreamName, String pVersionSyntaxScript)
Project.createStream(String pStreamName, String pVersionSyntaxScript, String pDescription)
Project.createStream(String pStreamName, String pVersionSyntaxScript, String pDescription, String pAttribute1, String pAttribute2, String pAttribute3) 

SCM Details

Next, configure the SCM details for your selected SCM Type. Choose one of the methods that contains the options that you need to configure for your projects from the list.

If SCM Defaults are setup under Administration → Defaults, these may be unnecessary.

SCM TypeSupported Methods
SVN
Code Block
Project.addSVNConfig(int pSequenceNumber, String pInstanceName)
Project.addSVNConfig(int pSequenceNumber, String pInstanceName, String pTrunkPathScript, String pBranchPathScript, String pTagPathScript, String pCheckoutDirectory)
GIT
Code Block
Project.addGITConfig(int pSequenceNumber, String pInstanceName)
Project.addGITConfig(int pSequenceNumber, String pInstanceName, String pBranchPathScript, String pTagPathScript, String pCheckoutDirectory, String pSparseCheckoutFoldersScript)
TFVC
Code Block
Project.addTFVCConfig(int pSequenceNumber, String pInstanceName)
Project.addTFVCConfig(int pSequenceNumber, String pInstanceName, String pMainPathScript, String pBranchPathScript, String pLabelNameScript, String pCheckoutFolderScript)
PERF
Perforce support was added in FlexDeploy 4.0.2

Code Block
Project.addPERFConfig(int pSequenceNumber, String pInstanceName)
Project.addPERFConfig(int pSequenceNumber, String pInstanceName, String pMainPathScript, String pBranchPathScript, String pLabelNameScript, String pCheckoutFolderScript)
CVS
Code Block
Project.addCVSConfig(int pSequenceNumber, String pInstanceName)
Project.addCVSConfig(int pSequenceNumber, String pInstanceName, String pModuleNameScript, String pBranchNameScript, String pTagScript, String pCheckoutFolderScript)



Continuous Integration Methods


Code Block
languagegroovy
//These methods add Continuous Integration into your project.
putYourVariableNameHere = Project.addPollSCMTrigger(int pIntervalMinutes, String pStreamName, String pEnvironmentName)
putYourVariableNameHere = Project.addScheduledBuildTrigger(String pCronExpression, String pStreamName, String pEnvironment)
putYourVariableNameHere = Project.addScheduledDeployTrigger(String pCronExpression, String pStreamName, String pEnvironment)
putYourVariableNameHere = Project.addPostBuildTrigger(String pStreamName, String pEnvironment)

// The following methods are available on the object returned from the methods above so inputs and Flexfields can be added to the trigger.
putYourVariableNameHere.addFlexField(String pFlexFieldName, String pValue)
putYourVariableNameHere.addInput(String pInputName, String pValue) 

//For example, to add a Poll SCM trigger with a FlexField and an input, you would write code like this. trigger1 is a variable, its name isn't important, but must match.
trigger1 = Project.addPollSCMTrigger(5, "trunk", "DEV01")
trigger1.addFlexField("Change_Number", "Built by CI Poll SCM")
trigger1.addInput("input", "Built by CI Poll SCM")