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 | Set Project path. For example. FlexDeploy/SOA/HR. In this example, SOA folder will be created if it does not exist and HR application will be created if it does not exist. You must make sure that you are defining last element in Project Path consistently as Application. For example, along with above example FlexDeploy/SOA/HR, if you used path as FlexDeploy/SOA/HR/Application, you will have issues. |
Project.setProjectName(String |
...
pProjectName) |
...
Yes | Set Project Name. | |
Project.setDeployPriority(Integer |
...
pDeployPriority) |
...
Yes | Set Project Priority. If not supplied 1 is used. | |
Project.setDeployPriorityScope(String |
...
pDeployPriorityScope) |
...
Yes | Defaults to Application. Possible values are Application, Folder, Global. | |
Project.setDescription(String |
...
pDescription) | Yes | |
Project.setProjectClassification(String pClassification) | No | Classification for this project. Possible values are Standard, PartialDeployments, Container, Utility. Default is Standard. |
Project.setProjectType(String) | No | Required if partial deployment project. Examples are GENERAL, EBS, PARTIAL_FILE, PARTIAL_JDBC, OracleForms, ORACLE_DB, ORACLE_BI, ORACLE_APEX, MFT, SALESFORCE, UTILITY, MDS, SAP, OSB, GENERIC |
Project.addProperty(String |
...
pPropertyName, Object pPropertyValue) | No | This depends on type of Project being created. For example,
| |||||
Project.addProperty(String pPropertyName, Object pPropertyValue, boolean pExpression) | No | Same as above method, except you can specify whether Property Value is expression or not by using boolean parameter. | |||||
Project.setActive(boolean |
...
pActive) | No | Default would be true. |
Project.setWebhooksEnabled(boolean pWebhookEnabled) | No | Enables or disables webhook enabled flag for project. This was added in 5.3.0.2 |
Project.setProjectBuildSequence(Long pSequenceNumber) | No | @since 5.4.0.2 Set the initial value for the ProjectBuildSequence variable which can be used in stream syntax scripts. Defaults to 1 if not set. |
Change default stream name. | No | This must be done prior to adding any Stream. Project.getStreams(). get ( 0 ).setStreamName( "master" ); |
Workflow Methods
...
Method |
---|
...
Required |
---|
...
Description |
---|
Project.setBuildWorkflowName(String |
...
pBuildWorkflowName) |
...
Yes | Set Build Workflow name to be used by Project. | |
Project.setDeployWorkflowName(String |
...
pDeployWorkflowName) | Yes | Set Deploy Workflow name to be used by Project. |
Instance Methods
Code Block | ||
---|---|---|
| ||
Tip | ||
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 (,) as separator for passing more than one Instance code. |
...
You can also call this method more than once with individual value of Instance code. For example, Project.addDeployInstances( |
...
"SOA1,SOA2"); OR Project.addDeployInstances( |
...
SCM Methods
SCM Type
Info |
---|
PERF (Perforce) support was added in 4.0.2, and updated in 4.0.3. CCUCM (ClearCase) support was added in 4.0.3 |
Code Block | ||
---|---|---|
| ||
Project.setSCMType("SCM Type")
Valid Strings for the "SCM Type" are SVN, GIT, TFS, CVS, PERF, CCUCM
Or, use one of these methods instead:
Project.setSVNForSCM()
Project.setGITForSCM()
Project.setTFVCForSCM()
Project.setCVSForSCM()
Project.setPERFForSCM()
Project.setCCUCMForSCM() |
"SOA1"); Project.addDeployInstances("SOA2"); |
Source Control Configuration Methods
SCM Type
Use one of the two options shown below.
Method | Required | Description |
---|---|---|
Project.setSCMType(pSCMType) | No | Set SCM Type or use Project Defaults. Possible values are CVS, FILE, GIT, NONE, PERF, PVCS, SVN, TFVC, OIC. |
Method | Required | Description |
---|---|---|
Project.setSVNForSCM() | No | Call to use Subversion for Project. |
Project.setGITForSCM() | No | Call to use Git for Project. |
Project.setTFVCForSCM() | No | Call to use Microsoft TFVC for Project. |
Project.setCVSForSCM() | No | Call to use CVS for Project. |
Project.setPERFForSCM() | No | Call to use Perforce for Project. |
Project.setPVCSForSCM() | No | Call to use PVCS for Project. |
Project.setFILEForSCM() | No | Call to use File System SCM type for project. |
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 | ||
---|---|---|
| ||
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) Project.createStream(String pStreamName, String pVersionSyntaxScript, String pDescription, String pAttribute1, String pAttribute2, String pAttribute3, Long pSequenceNumber) |
Method | Required | Description |
---|---|---|
Project.createStreamFromMainStream(String pStreamName) | No | Create a copy of the main stream with a new name. The main stream is generated from default configurations. For example, Project.createStreamFromMainStream("branch1") |
Project.createStream(String pStreamName, String pVersionSyntaxScript) | No | Create an additional stream based on the inputs. Description, Attribute1, Attribute2 and Attribute3 will be defaulted to blank entries. For example, Project.createStream("branch1", "\"1.0") |
Project.createStream(String pStreamName, String pVersionSyntaxScript, String pDescription) | No | Create an additional stream based on the inputs. Attribute1, Attribute2 and Attribute3 will be default to blank entries. For example, Project.createStream("branch1", "\"1.0", "March release") |
Project.createStream(String pStreamName, String pVersionSyntaxScript, String pDescription, String pAttribute1, String pAttribute2, String pAttribute3) | No | Create an additional stream based on the inputs. The attribute values can be further utilized in different path scripts during SCM configurations below. For example, Project.createStream("branch1", "\"1.0", "March release","attr1","", "") |
@since 5.4.0.2 Project.createStream(String pStreamName, String pVersionSyntaxScript, String pDescription, String pAttribute1, String pAttribute2, String pAttribute3, Long pSequenceNumber) | No | Create an additional stream based on the inputs. The attribute values can be further utilized in different path scripts during SCM configurations below. For example, Project.createStream("branch1", "\"1.0", "March release","attr1","", "", 10) |
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 pInstanceName) Project.addSVNConfig(1,"SVNPROD") Project.addSVNConfig(1,"SVNPROD","\"/trunk/\" + ProjectName","\"/branches/\" + StreamName + \"/\" + ProjectName","","") Create a SVN configuration for the project based on a pre-configured SCM instance code for SVN. The sequence number allows you to create multiple configurations per project (sequencing starts at 1). The values for Trunk Path Script, Branch Path Script, Tag Path Script and Checkout Directory will be populated from the Project SVN Setup Defaults. For example, Project.addSVNConfig(int pSequenceNumber, String pInstanceName, String pTrunkPathScript, String pBranchPathScript, String pTagPathScript, String pCheckoutDirectory) Create a SVN configuration for the project based on a pre-configured SCM instance code for SVN. The sequence number allows you to create multiple configurations per project (sequencing starts at 1). The values for Trunk Path Script, Branch Path Script, Tag Path Script and Checkout Directory provided on the method will overwrite the values from the Project SVN Setup Defaults. Passing in an empty string will not override the given default value. ProjectName and StreamName are available variables within project configuration that can be used to make generic formulas. For example, | |||
GIT |
|
|
Project.addGITConfig(int pSequenceNumber, String pInstanceName) Create a GIT configuration for the project based on a pre-configured SCM instance code for GIT. The sequence number allows you to create multiple configurations per project (sequencing starts at 1). The values for Branch Path Script, Tag Path Script, Checkout Directory and Sparse Checkout Folders Script will be populated from the Project GIT Setup Defaults. For example, Project.addGITConfig(1,"GITPROD") Project.addGITConfig(int pSequenceNumber, String pInstanceName, String pBranchPathScript, String pTagPathScript, String pCheckoutDirectory, String pSparseCheckoutFoldersScript) Create a GIT configuration for the project based on a pre-configured SCM instance code for GIT. The sequence number allows you to create multiple configurations per project (sequencing starts at 1). The values for Branch Path Script, Tag Path Script, Checkout Directory and Sparse Checkout Folders Script provided on the method will overwrite the values from the Project GIT Setup Defaults. Passing in an empty string will not override the given default value. ProjectName and StreamName are available variables within project configuration that can be used to make generic formulas. For example, Project.addGITConfig(1,"GITPROD","StreamName","ProjectVersion","ProjectName","") | |||
TFVC |
|
|
|
Project.addTFVCConfig(int pSequenceNumber, String pInstanceName) Create a TFVC configuration for the project based on a pre-configured SCM instance code for TFVC. The sequence number allows you to create multiple configurations per project (sequencing starts at 1). The values for Main Path Script, Branch Path Script, Label Name Script and Checkout Folder Script will be populated from the Project TFVC Setup Defaults. For example, Project.addTFVCConfig(1,"TFVCPROD") Project.addTFVCConfig(int pSequenceNumber, String pInstanceName, String pMainPathScript, String pBranchPathScript, String pLabelNameScript, String pCheckoutFolderScript) Create a TFVC configuration for the project based on a pre-configured SCM instance code for TFVC. The sequence number allows you to create multiple configurations per project (sequencing starts at 1). The values for Main Path Script, Branch Path Script, Label Name Script and Checkout Folder Script provided on the method will overwrite the values from the Project TFVC Setup Defaults. Passing in an empty string will not override the given default value. ProjectName and StreamName are available variables within project configuration that can be used to make generic formulas. For example, Project.addTFVCConfig(1,"TFVCPROD","\"\\\$/\" + ProjectName + \"/main\"","\"\\\$/\" + ProjectName + \"/\" + StreamAttribute1","ProjectName + ProjectVersion","") | |||
PERF |
|
|
Project.addPERFConfig(int pSequenceNumber, String pInstanceName) Create a PERF configuration for the project based on a pre-configured SCM instance code for PERF. The sequence number allows you to create multiple configurations per project (sequencing starts at 1). The values for Main Path Script, Branch Path Script, Label Name Script and Checkout Folder Script will be populated from the Project PERF Setup Defaults. For example, Project.addPERFConfig(1,"PERFPROD") Project.addPERFConfig(int pSequenceNumber, String pInstanceName, String pMainPathScript, String pBranchPathScript, String pLabelNameScript, String pCheckoutFolderScript) Create a PERF configuration for the project based on a pre-configured SCM instance code for PERF. The sequence number allows you to create multiple configurations per project (sequencing starts at 1). The values for Main Path Script, Branch Path Script, Label Name Script and Checkout Folder Script provided on the method will overwrite the values from the Project PERF Setup Defaults. Passing in an empty string will not override the given default value. ProjectName and StreamName are available variables within project configuration that can be used to make generic formulas. For example, Project.addPERFConfig(1,"PERFPROD","\"//StreamsDepot/\" + ProjectName","\"//StreamsDepot/\" + ProjectName","ProjectName + \"-\" + ProjectVersion","") | |||
CVS |
|
|
|
Project.addCVSConfig(int pSequenceNumber, String pInstanceName) Create a CVS configuration for the project based on a pre-configured SCM instance code for CVS. The sequence number allows you to create multiple configurations per project (sequencing starts at 1). The values for Module Name Script, Branch Name Script, Tag Script and Checkout Folder Script will be populated from the Project CVS Setup Defaults. For example, Project.addCVSConfig(1,"CVSPROD") Project.addCVSConfig(int pSequenceNumber, String pInstanceName, String pModuleNameScript, String pBranchNameScript, String pTagScript, String pCheckoutFolderScript) Create a CVS configuration for the project based on a pre-configured SCM instance code for CVS. The sequence number allows you to create multiple configurations per project (sequencing starts at 1). The values for Module Name Script, Branch Name Script, Tag Script and Checkout Folder Script provided on the method will overwrite the values from the Project CVS Setup Defaults. Passing in an empty string will not override the given default value. ProjectName and StreamName are available variables within project configuration that can be used to make generic formulas. For example, Project.addCVSConfig(1,"CVSPROD","ProjectName","StreamName","\"R\" + ProjectVersion.replace(\".\",\"_\")","") | |||
PVCS |
|
|
|
|
|
|
|
Project.addPVCSConfig(int pSequenceNumber, String pInstanceName) Create a PVCS configuration for the project based on a pre-configured SCM instance code for PVCS. The sequence number allows you to create multiple configurations per project (sequencing starts at 1). The values for Project Path Script, Promotion Group Script UsingPGScript, Branch Path Script, Label Name Script, and Checkout Folder Script will be populated from the Project PVCS Setup Defaults. For example, Project.addPVCSConfig(1,"PVCSPROD") Project.addPVCSConfig(int pSequenceNumber, String pInstanceName, , String pProjectPathScript, String pPromotionGroupScript, String pUsingPGScript, String pBranchPathScript, String pLabelNameScript, String pCheckoutFolderScript) Create a PVCS configuration for the project based on a pre-configured SCM instance code for PVCS. The sequence number allows you to create multiple configurations per project (sequencing starts at 1). The values for Project Path Script, Promotion Group Script UsingPGScript, Branch Path Script, Label Name Script, and Checkout Folder Script provided on the method will overwrite the values from the Project PVCS Setup Defaults. Passing in an empty string will not override the given default value. ProjectName and StreamName are available variables within project configuration that can be used to make generic formulas. For example, Project.addPVCSConfig(1,"PVCSPROD","\"/\"+ProjectName","StreamAttribute1","\"\"","\"true\"","ProjectName + ProjectVersion","") |
Continuous Integration Methods
...