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.
Script Variables
Variable Name | Description |
---|---|
Project | Project being created. This corresponds to one row in input CSV file and will eventually create one single Project. |
<Custom Inputs> | Inputs defined on Template. |
General Project Methods
Method | Required | Description |
---|---|---|
Project.setProjectPath(String pProjectPath) | Yes | |
Project.setProjectName(String pProjectName) | Yes | |
Project.setDeployPriority(Integer pDeployPriority) | No | |
Project.setDeployPriorityScope(String pDeployPriorityScope) | No | |
Project.setDescription(String pDescription) | No | |
Project.addProperty(String pPropertyName, Object pPropertyValue) | No | |
Project.setActive(boolean pActive) | No |
Workflow Methods
Method | Required | Description |
---|---|---|
Project.setBuildWorkflowName(String pBuildWorkflowName) | Yes | |
Project.setDeployWorkflowName(String pDeployWorkflowName) | Yes |
Instance Methods
All these methods take instance Codes, not Names as the methods suggest.
Method | Required | Description |
---|---|---|
Project.setBuildInstanceName(String pBuildInstanceName) | Yes | Set Build Instance Code to be used for Project. |
Project.addDeployInstances(String pDeployInstances) | Yes | Set one or more Deploy Instance Code to be used for Project. Use comma (,) if you are passing more than one Deploy instance codes or call method more than once with single value. |
SCM Methods
SCM Type
Setting the SCM Type for the Projects
Project.setSCMType("SCM Type") // Valid Strings for the "SCM Type" are SVN, GIT, TFS, CVS, PERF, CCUCM, PVCS // Or, use one of these methods instead: Project.setSVNForSCM() Project.setGITForSCM() Project.setTFVCForSCM() Project.setCVSForSCM() Project.setPERFForSCM() Project.setCCUCMForSCM() Project.setPVCSForSCM()
Stream Settings
Add additional project streams if necessary. These streams are what the int pSequenceNumber
in the SCM details section below refer to.
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 Type | Supported Methods |
---|---|
SVN | Project.addSVNConfig(int pSequenceNumber, String pInstanceCode) Project.addSVNConfig(int pSequenceNumber, String pInstanceCode, String pTrunkPathScript, String pBranchPathScript, String pTagPathScript, String pCheckoutDirectory) |
GIT | Project.addGITConfig(int pSequenceNumber, String pInstanceCode) Project.addGITConfig(int pSequenceNumber, String pInstanceCode, String pBranchPathScript, String pTagPathScript, String pCheckoutDirectory, String pSparseCheckoutFoldersScript) |
TFVC | Project.addTFVCConfig(int pSequenceNumber, String pInstanceCode) Project.addTFVCConfig(int pSequenceNumber, String pInstanceCode, String pMainPathScript, String pBranchPathScript, String pLabelNameScript, String pCheckoutFolderScript) |
PERF | Project.addPERFConfig(int pSequenceNumber, String pInstanceCode) Project.addPERFConfig(int pSequenceNumber, String pInstanceCode, String pMainPathScript, String pBranchPathScript, String pLabelNameScript, String pCheckoutFolderScript) |
CVS | Project.addCVSConfig(int pSequenceNumber, String pInstanceCode) Project.addCVSConfig(int pSequenceNumber, String pInstanceCode, String pModuleNameScript, String pBranchNameScript, String pTagScript, String pCheckoutFolderScript) |
CCUCM | Project.addCCUCMConfig(int pSequenceNumber, String pInstanceCode) Project.addCCUCMConfig(int pSequenceNumber, String pInstanceCode, String pProjectVobScript, String pVobPathsScript, String pStreamScript, String pLabelNameScript, String pCheckoutFolderScript) |
PVCS | Project.addPVCSConfig(int pSequenceNumber, String pInstanceCode) Project.addPVCSConfig(int pSequenceNumber, String pInstanceCode, String pProjectPathScript, String pPromotionGroupScript, String pUsingPGScript, String pBranchPathScript, String pLabelNameScript, String pCheckoutFolderScript) |
Continuous Integration Methods
//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")