...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
This PATCH service will update an existing project with the information passed through a JSON object. PATCH will only modify the attributes provided in input, and leave all other project attributes unchanged.
Info |
---|
API URLshttp://host:port/flexdeploy/rest/v1/project/{projectId} |
Request
PATCH will receive a project input JSON object and return a project JSON object. Project input JSON objects for the request can have the following attributes:
Parameter | Type | Description |
---|---|---|
projectId | URL | Id of the project to patch. |
projectName | String | Unique name of the project. |
applicationId | Long | Id of the application the project is in. |
projectPath | String | Fully qualified project path. |
isActive | Boolean | Boolean that tracks whether or not the project is active. Null input defaults to true. |
packageBuildType | String | String that defines usage of packages and build or deployments of packages. Possible values are ALL, PACKAGE, or BOTH. Defaults to Project Default or BOTH if Project Default is empty. |
description | String | Description of the project. |
priority | Integer | Deploy priority of the project. Null input defaults to 1. |
webhooksEnabled | Boolean | Whether or not webhooks are enabled. Null input defaults to false. |
projectBuildSequence | Integer | Update the value for the ProjectBuildSequence variable which can be used in stream syntax scripts. |
projectType | ProjectTypeEnum | Type of project. Possible values are GENERAL, EBS, PARTIAL_FILE, PARTIAL_JDBC, OracleForms, ORACLE_DB, ORACLE_BI, ORACLE_APEX, MFT, SALESFORCE, UTILITY, MDS, or GENERIC. |
scmType | SCMTypeEnum | This specifies the source control management system used by this project. Must be a valid source control management system. Possible values are SVN, GIT, CVS, TFVC, PERF, PVCS, FILE, or NONE. |
priorityScope | String | This specifies the priority scope of the current project. Either Global, Folder, or Application. Null input defaults to Application. |
buildInfo | ProjectBuildInfo | Build info for the project. See more info about the ProjectBuildInfo object below. |
preDeployInfo | ProjectPreDeployInfo | PreDeploy info for the project. See more info about the ProjectPreDeployInfo object below. |
deployInfo | ProjectDeployInfo | Deploy info for the project. See more info about the ProjectDeployInfo object below. |
utilityExecutionInfo | UtilityProjectExecutionInfo | Execution info for a utility project. See more info about the UtilityProjectExecutionInfo object below. |
mainStreamName | String | Name of the main stream for the project. Null input defaults to master. |
scmConfiguration | ProjectSCMPojo | SCM configuration for the project. See more info about the ProjectSCMPojo object below. |
contianerConfiguration | ContainerConfiguration | Container configuration for the project. See more info about the ContainerConfiguration type below. |
ProjectBuildInfo
Attribute | Type | Description |
---|---|---|
workflowId | Long | Id of the build workflow used by this project. |
instanceId | Long | Id of the instance where this project is built. |
ProjectPreDeployInfo
Attribute | Required | Type | Description |
---|---|---|---|
workflowId | Yes | Long | Id of the predeployment workflow used by this project. Note - If predeploy workflow is used, then ProjectDeployInfo.instanceIds is needed |
ProjectDeployInfo
Attribute | Type | Description |
---|---|---|
workflowId | Long | Id of the deployment workflow used by this project. |
instanceIds | List<Long> | Id of each of the instances where the project can be deployed. New instance ids will be added to the existing list of instance ids for deployment. |
UtilityProjectExecutionInfo
Attribute | Type | Description |
---|---|---|
workflowId | Long | Id of the utility workflow used by this project. |
instanceIds | List<Long> | Id of each of the utility instance where this project can be run. New instance ids will be added to the existing list of instance ids. |
ProjectSCMPojo
Attribute | Type | Description |
---|---|---|
sources | List<ProjectSCMConfig> | List of SCM configuration sources. See more info about the ProjectSCMConfig object below. |
ProjectSCMConfig
Attribute | Type | Description |
---|---|---|
instanceId | Long | SCM instance id for this source. |
configValues | List<ProjectSCMConfigValue> | Configuration values for each SCM source. See more info about the ProjectSCMConfigValue object below. |
sourceNumber | Integer | Number for the source. Source numbers start at 1 and increment for each source after that. |
ProjectSCMConfigValue
Attribute | Type | Description |
---|---|---|
configName | String | Name of the configuration attribute. |
configValue | String | Value of the configuration attribute. |
ContainerConfiguration
Attribute | Type | Description |
---|---|---|
dockerFile | String | Name of the dockerfile |
dockerStreams | List<DockerStream> | Information about the docker streams. See more info about the DockerStream type below. |
kubernetesConfiguration | KubernetesConfiguration | Configuration for Kubernetes. See more info about the KubernetesConfiguration type below. |
DockerStream
Attribute | Type | Description |
---|---|---|
streamId | Long | Id of the stream. |
streamName | String | Name of the stream. |
imageName | String | Name of the image. |
isImageBuild | Boolean | If the image will build. |
isImagePush | Boolean | If the image will push. Null if isImageBuild is false. |
KubernetesConfiguration
Attribute | Type | Description |
---|---|---|
deploymentName | String | Name of the deployment. |
manifestsToDeploy | List<String> | Manifests to deploy. |
blueGreenManifests | List<String> | Blue green manifests. |
canaryManifests | List<String> | Canary manifests. |
abmanifests | List<String> | AB manifests. |
helmConfiguration | HelmConfiguration | The helm configuration. See more info about the HelmConfiguration type below. |
HelmConfiguration
Attribute | Type | Description |
---|---|---|
chart | String | Name of the chart. |
releaseName | String | Name of the release. |
parametersMap | List<ParameterMap> | All of the parameter mappings. See more info about the ParmaterMap type below. |
ParameterMap
Attribute | Type | Description |
---|---|---|
key | String | Key for the parameter map. |
value | String | Value for the parameter map. |
SCM Configuration Names by Type
Tip |
---|
All values not provided are defaulted. All defaults are configured from the Administration > Defaults page. |
Expand | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
|
Expand | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
|
Expand | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
|
Expand | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
|
Expand | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||
|
Expand | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
|
Expand | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||
|
Expand | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
|
Include Page | ||||
---|---|---|---|---|
|
Response Codes
HTTP Code | Description |
---|---|
200 | Projects were found and returned |
400 | Bad request |
401 | Authentication failure |
403 | Authorization failure (no access to resource) |
500 | Unexpected internal server error |
Example
If the following project object exists,
Existing Project
Code Block |
---|
{
"projectName": "Example Project",
"projectId": 10002,
"projectPath": "FlexDeploy/Testing/Example Project",
"description": null,
"isActive": true,
"projectClassification": "Container",
"priority": 1,
"priorityScope": "Application",
"applicationId": 14852,
"scmType": "GIT",
"mainStreamName": "master",
"streams": [73419],
"buildInfo": null,
"webhooksEnabled": false,
"deployInfo": {
"instanceIds": [80524],
"workflowId": 34540
},
"utilityExecutionInfo": null,
"scmConfiguration": {
"sources": [
{
"instanceId": 16465,
"configValues": [
{
"configName": "SparseCheckoutFoldersScript",
"configValue": "\"mainfolder/main\""
}
],
"sourceNumber": 1
}
]
},
"containerConfiguration": {,
"dockerfile": "docker file name"
"dockerStreams": [
{
"isImageBuild": true,
"isImagePush": false,
"streamName": "master",
"streamId": 12345,
"imageName": "image name"
}
],
"kubernetesConfiguration": {
"manifestsToDeploy": [
"deploymanifest1"
],
"blueGreenManifests": [
"bluegreenmanifest1",
"bluegreenmanifest2"
],
"canaryManifests": [
"canarymanifest1"
],
"abmanifests": [
"abmanifest1",
"abmanifest2",
"abmanifest3"
],
"helmConfiguration": {
"parametersMap": [
{
"key": "key1",
"valueScript": "value1"
},
{
"key": "key2",
"valueScript": "value2"
}
],
"releaseName": "release name",
"chart": "chart name"
},
"deploymentName": "deployment name"
}
} |
and a PATCH request is sent to http://host:port/flexdeploy/rest/v1/project/10002 receiving the following JSON project object,
PATCH Request JSON
Code Block |
---|
{
"projectPath": "/FlexDeploy/REST/Example Project",
"description": "Project created with API",
"priority": 2,
"mainStreamName": "master",
"webhooksEnabled": true,
"buildInfo": {
"instanceId": 15925,
"workflowId": 43164
},
"preDeployInfo": {
"workflowId": 42978
},
"scmConfiguration": {
"sources": [
{
"instanceId": 42863,
"configValues": [
{
"configName": "SparseCheckoutFoldersScript",
"configValue": "\"EBS\""
}
],
"sourceNumber": 2
}
]
},
"containerConfiguration": {,
"dockerfile": "new docker file name"
"dockerStreams": [
{
"isImageBuild": false,
"isImagePush": null,
"streamName": "master",
"imageName": "new image name"
}
],
"kubernetesConfiguration": {
"manifestsToDeploy": [
"deploymanifest1"
],
"blueGreenManifests": [
"bluegreenmanifest1"
],
"canaryManifests": [
"canarymanifest1"
],
"abmanifests": [
"abmanifest1",
"abmanifest2"
],
"helmConfiguration": {
"parametersMap": [
{
"key": "key1",
"valueScript": "new value"
}
],
"releaseName": "new release name",
"chart": "new chart name"
},
"deploymentName": "new deployment name"
}
}
|
the following project object will then be patched in FlexDeploy:
PATCH Response JSON
Code Block |
---|
{
"projectName": "Example Project",
"projectPath": "/FlexDeploy/REST/Example Project",
"description": "Project created with API",
"isActive": true,
"projectClassification": "Container",
"priority": 2,
"priorityScope": "Application",
"applicationId": 49628,
"scmType": "GIT",
"mainStreamName": "master",
"webhooksEnabled": true,
"buildInfo": {
"instanceId": 15925,
"workflowId": 43164
},
"deployInfo": {
"instanceIds": [80524],
"workflowId": 34540
},
"preDeployInfo": {
"workflowId": 42978
},
"scmConfiguration": {
"sources": [
{
"instanceId": 16465,
"configValues": [
{
"configName": "SparseCheckoutFoldersScript",
"configValue": "\"mainfolder/main\""
}
],
"sourceNumber": 1
},
{
"instanceId": 42863,
"configValues": [
{
"configName": "SparseCheckoutFoldersScript",
"configValue": "\"EBS\""
}
],
"sourceNumber": 2
}
]
},
"containerConfiguration": {,
"dockerfile": "new docker file name"
"dockerStreams": [
{
"isImageBuild": false,
"isImagePush": null,
"streamName": "master",
"imageName": "new image name"
}
],
"kubernetesConfiguration": {
"manifestsToDeploy": [
"deploymanifest1"
],
"blueGreenManifests": [
"bluegreenmanifest1"
],
"canaryManifests": [
"canarymanifest1"
],
"abmanifests": [
"abmanifest1",
"abmanifest2"
],
"helmConfiguration": {
"parametersMap": [
{
"key": "key1",
"valueScript": "new value"
}
],
"releaseName": "new release name",
"chart": "new chart name"
},
"deploymentName": "new deployment name"
}
} |
This PATCH service will update an existing project with the information passed through a JSON object. PATCH will only modify the attributes provided in input, and leave all other project attributes unchanged.
Info |
---|
API URLshttp://host:port/flexdeploy/rest/v1/project/{projectId} |
Request
PATCH will receive a project input JSON object and return a project JSON object. Project input JSON objects for the request can have the following attributes:
Parameter | Type | Description |
---|---|---|
projectId | URL | Id of the project to patch. |
projectName | String | Unique name of the project. |
applicationId | Long | Id of the application the project is in. |
projectPath | String | Fully qualified project path. |
isActive | Boolean | Boolean that tracks whether or not the project is active. Null input defaults to true. |
packageBuildType | String | String that defines usage of packages and build or deployments of packages. Possible values are ALL, PACKAGE, or BOTH. Defaults to Project Default or BOTH if Project Default is empty. |
description | String | Description of the project. |
priority | Integer | Deploy priority of the project. Null input defaults to 1. |
webhooksEnabled | Boolean | Whether or not webhooks are enabled. Null input defaults to false. |
projectBuildSequence | Integer |
Update the value for the ProjectBuildSequence variable which can be used in stream syntax scripts. | ||
projectType | ProjectTypeEnum | Type of project. Possible values are GENERAL, EBS, PARTIAL_FILE, PARTIAL_JDBC, OracleForms, ORACLE_DB, ORACLE_BI, ORACLE_APEX, MFT, SALESFORCE, UTILITY, MDS, or GENERIC. |
scmType | SCMTypeEnum | This specifies the source control management system used by this project. Must be a valid source control management system. Possible values are SVN, GIT, CVS, TFVC, PERF, PVCS, FILE, or NONE. |
priorityScope | String | This specifies the priority scope of the current project. Either Global, Folder, or Application. Null input defaults to Application. |
buildInfo | ProjectBuildInfo | Build info for the project. See more info about the ProjectBuildInfo object below. |
preDeployInfo | ProjectPreDeployInfo |
PreDeploy info for the project. See more info about the ProjectPreDeployInfo object below. | ||
deployInfo | ProjectDeployInfo | Deploy info for the project. See more info about the ProjectDeployInfo object below. |
utilityExecutionInfo | UtilityProjectExecutionInfo | Execution info for a utility project. See more info about the UtilityProjectExecutionInfo object below. |
mainStreamName | String | Name of the main stream for the project. Null input defaults to master. |
scmConfiguration | ProjectSCMPojo | SCM configuration for the project. See more info about the ProjectSCMPojo object below. |
contianerConfiguration | ContainerConfiguration | Container configuration for the project. See more info about the ContainerConfiguration type below. |
ProjectBuildInfo
Attribute | Type | Description |
---|---|---|
workflowId | Long | Id of the build workflow used by this project. |
instanceId | Long | Id of the instance where this project is built. |
ProjectPreDeployInfo
Attribute | Required | Type | Description |
---|---|---|---|
workflowId | Yes | Long | Id of the predeployment workflow used by this project. Note - If predeploy workflow is used, then ProjectDeployInfo.instanceIds is needed |
ProjectDeployInfo
Attribute | Type | Description |
---|---|---|
workflowId | Long | Id of the deployment workflow used by this project. |
instanceIds | List<Long> | Id of each of the instances where the project can be deployed. New instance ids will be added to the existing list of instance ids for deployment. |
UtilityProjectExecutionInfo
Attribute | Type | Description |
---|---|---|
workflowId | Long | Id of the utility workflow used by this project. |
instanceIds | List<Long> | Id of each of the utility instance where this project can be run. New instance ids will be added to the existing list of instance ids. |
ProjectSCMPojo
Attribute | Type | Description |
---|---|---|
sources | List<ProjectSCMConfig> | List of SCM configuration sources. See more info about the ProjectSCMConfig object below. |
ProjectSCMConfig
Attribute | Type | Description |
---|---|---|
instanceId | Long | SCM instance id for this source. |
configValues | List<ProjectSCMConfigValue> | Configuration values for each SCM source. See more info about the ProjectSCMConfigValue object below. |
sourceNumber | Integer | Number for the source. Source numbers start at 1 and increment for each source after that. |
ProjectSCMConfigValue
Attribute | Type | Description |
---|---|---|
configName | String | Name of the configuration attribute. |
configValue | String | Value of the configuration attribute. |
ContainerConfiguration
Attribute | Type | Description |
---|---|---|
dockerFile | String | Name of the dockerfile |
dockerStreams | List<DockerStream> | Information about the docker streams. See more info about the DockerStream type below. |
kubernetesConfiguration | KubernetesConfiguration | Configuration for Kubernetes. See more info about the KubernetesConfiguration type below. |
DockerStream
Attribute | Type | Description |
---|---|---|
streamId | Long | Id of the stream. |
streamName | String | Name of the stream. |
imageName | String | Name of the image. |
isImageBuild | Boolean | If the image will build. |
isImagePush | Boolean | If the image will push. Null if isImageBuild is false. |
KubernetesConfiguration
Attribute | Type | Description |
---|---|---|
deploymentName | String | Name of the deployment. |
manifestsToDeploy | List<String> | Manifests to deploy. |
blueGreenManifests | List<String> | Blue green manifests. |
canaryManifests | List<String> | Canary manifests. |
abmanifests | List<String> | AB manifests. |
helmConfiguration | HelmConfiguration | The helm configuration. See more info about the HelmConfiguration type below. |
HelmConfiguration
Attribute | Type | Description |
---|---|---|
chart | String | Name of the chart. |
releaseName | String | Name of the release. |
parametersMap | List<ParameterMap> | All of the parameter mappings. See more info about the ParmaterMap type below. |
ParameterMap
Attribute | Type | Description |
---|---|---|
key | String | Key for the parameter map. |
value | String | Value for the parameter map. |
SCM Configuration Names by Type
Tip |
---|
All values not provided are defaulted. All defaults are configured from the Administration > Defaults page. |
...
Expand | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||
|
Expand | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||
|
Expand | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||
|
Expand | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||||
|
Expand | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||
|
Expand | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||
|
Expand | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||
|
Expand | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
|
Include Page | ||||
---|---|---|---|---|
|
Response Codes
HTTP Code | Description |
---|---|
200 | Projects were found and returned |
400 | Bad request |
401 | Authentication failure |
403 | Authorization failure (no access to resource) |
500 | Unexpected internal server error |
Example
If the following project object exists,
...
...
Existing Project
Code Block |
---|
{ "projectName": "Example Project", "projectId": 10002, "projectPath": "FlexDeploy/Testing/Example Project", "description": null, "isActive": true, "projectClassification": "Container", "priority": 1, "priorityScope": "Application", "applicationId": 14852, "scmType": "GIT", "mainStreamName": "master", "streams": [73419], "buildInfo": null, "webhooksEnabled": false, "deployInfo": { "instanceIds": [80524], "workflowId": 34540 }, "utilityExecutionInfo": null, "scmConfiguration": { "sources": [ { "instanceId": 16465, "configValues": [ { "configName": "SparseCheckoutFoldersScript", "configValue": "\"mainfolder/main\"" } ], "sourceNumber": 1 } ] }, "containerConfiguration": {, "dockerfile": "docker file name" "dockerStreams": [ { "isImageBuild": true, "isImagePush": false, "streamName": "master", "streamId": 12345, "imageName": "image name" } ], "kubernetesConfiguration": { "manifestsToDeploy": [ "deploymanifest1" ], "blueGreenManifests": [ "bluegreenmanifest1", "bluegreenmanifest2" ], "canaryManifests": [ "canarymanifest1" ], "abmanifests": [ "abmanifest1", "abmanifest2", "abmanifest3" ], "helmConfiguration": { "parametersMap": [ { "key": "key1", "valueScript": "value1" }, { "key": "key2", "valueScript": "value2" } ], "releaseName": "release name", "chart": "chart name" }, "deploymentName": "deployment name" } } |
...
and a PATCH request is sent to http://host:port/flexdeploy/rest/v1/project/10002 receiving the following JSON project object,
...
PATCH Request JSON
Code Block |
---|
{ "projectPath": "/FlexDeploy/REST/Example Project", "description": "Project created with API", "priority": 2, "mainStreamName": "master", "webhooksEnabled": true, "buildInfo": { "instanceId": 15925, "workflowId": 43164 }, "preDeployInfo": { "workflowId": 42978 }, "scmConfiguration": { "sources": [ { "instanceId": 42863, "configValues": [ { "configName": "SparseCheckoutFoldersScript", "configValue": "\"EBS\"" } ], "sourceNumber": 2 } ] }, "containerConfiguration": {, "dockerfile": "new docker file name" "dockerStreams": [ { "isImageBuild": false, "isImagePush": null, "streamName": "master", "imageName": "new image name" } ], "kubernetesConfiguration": { "manifestsToDeploy": [ "deploymanifest1" ], "blueGreenManifests": [ "bluegreenmanifest1" ], "canaryManifests": [ "canarymanifest1" ], "abmanifests": [ "abmanifest1", "abmanifest2" ], "helmConfiguration": { "parametersMap": [ { "key": "key1", "valueScript": "new value" } ], "releaseName": "new release name", "chart": "new chart name" }, "deploymentName": "new deployment name" } } |
the following project object will then be patched in FlexDeploy:
...
...
PATCH Response JSON
Code Block |
---|
{ "projectName": "Example Project", "projectPath": "/FlexDeploy/REST/Example Project", "description": "Project created with API", "isActive": true, "projectClassification": "Container", "priority": 2, "priorityScope": "Application", "applicationId": 49628, "scmType": "GIT", "mainStreamName": "master", "webhooksEnabled": true, "buildInfo": { "instanceId": 15925, "workflowId": 43164 }, "deployInfo": { "instanceIds": [80524], "workflowId": 34540 }, "preDeployInfo": { "workflowId": 42978 }, "scmConfiguration": { "sources": [ { "instanceId": 16465, "configValues": [ { "configName": "SparseCheckoutFoldersScript", "configValue": "\"mainfolder/main\"" } ], "sourceNumber": 1 }, { "instanceId": 42863, "configValues": [ { "configName": "SparseCheckoutFoldersScript", "configValue": "\"EBS\"" } ], "sourceNumber": 2 } ] }, "containerConfiguration": {, "dockerfile": "new docker file name" "dockerStreams": [ { "isImageBuild": false, "isImagePush": null, "streamName": "master", "imageName": "new image name" } ], "kubernetesConfiguration": { "manifestsToDeploy": [ "deploymanifest1" ], "blueGreenManifests": [ "bluegreenmanifest1" ], "canaryManifests": [ "canarymanifest1" ], "abmanifests": [ "abmanifest1", "abmanifest2" ], "helmConfiguration": { "parametersMap": [ { "key": "key1", "valueScript": "new value" } ], "releaseName": "new release name", "chart": "new chart name" }, "deploymentName": "new deployment name" } } |
...