...
Code Block |
---|
language | js |
---|
title | GET, DELETE |
---|
linenumbers | true |
---|
|
GET
URL: /v2/project/{project-name}/composite-apps/{composite-app-name}/{version}/composite-profiles/{composite-profile-name}/profiles/{profile-name}
RETURN STATUS: 200
RETURN BODY:
{
"profile-name": "test",
"app-name": "<name>",
"description": "testing resource bundle definition api"
}
Multipart response containing the tar.gz of the profile
DELETE
URL: /v2/project/{project-name}/composite-apps/{composite-app-name}/{version}/composite-profiles/{composite-profile-name}/profiles/{profile-name}
RETURN STATUS: 204 |
...
Code Block |
---|
language | js |
---|
title | POST |
---|
linenumbers | true |
---|
|
URL: /v2/project/{project-name}/composite-apps/{composite-app-name}/{version}/generic-placement-intent/{intent-name}/app-intentintents
POST BODY:
{
"app-name":"name",
"description": "<description>",
"intent":
{
"allOf":[
{
"cluster-name":"edge1"
},
{
"cluster-name":"edge2"
},
{
"anyOf":[
{
"cluster-label-name":"east-us1"
},
{
"cluster-label-name":"east-us2"
}
]
}
]
}
RETURN STATUS: 201
RETURN BODY:
{
"app-name": "name",
"description": "<description>",
"intent":
{
"allOf":[
{
"cluster-name":"edge1"
},
{
"cluster-name":"edge2"
},
{
"anyOf":[
{
"cluster-label-name":"east-us1"
},
{
"cluster-label-name":"east-us2"
}
]
}
]
}
} |
...
Code Block |
---|
language | js |
---|
title | POST |
---|
linenumbers | true |
---|
|
GET
URL: /v2/project/{project-name}/composite-apps/{composite-app-name}/{version}/generic-placement-intent/{intent-name}/appsapp-intents
RETURN STATUS: 200
RETURN BODY:
{
"applications":[
{
"name":"app1",
"anyOf":[
{
"cluster-name":"edge1"
},
{
"cluster-name":"edge2"
}
]
},
{
"name":"app2",
"allOf":[
{
"cluster-name":"edge1"
},
{
"cluster-name":"edge2"
}
]
},
{
"name":"app3",
"allOf":[
{
"cluster-name":"edge1"
},
{
"cluster-name":"edge2"
},
{
"anyOf":[
{
"cluster-label-name":"east-us1"
},
{
"cluster-label-name":"east-us2"
}
]
}
]
}
]
}
GET
URL: /v2/project/{project-name}/composite-apps/{composite-app-name}/{version}/generic-placement-intent/{intent-name}/appsapp-intents/{apps-name}
RETURN STATUS: 200
RETURN BODY:
{
"app-name": "name",
"description": "<description>",
"intent":
{
"allOf":[
{
"cluster-name":"edge1"
},
{
"cluster-name":"edge2"
},
{
"anyOf":[
{
"cluster-label-name":"east-us1"
},
{
"cluster-label-name":"east-us2"
}
]
}
]
}
}
DELETE
URL: /v2/project/{project-name}/composite-apps/{composite-app-name}/{version}/generic-placement-intent/{intent-name}/apps-intents/{apps-name}
RETURN STATUS: 204
|
...
Code Block |
---|
language | js |
---|
title | POST |
---|
linenumbers | true |
---|
|
URL: /v2/projects/{project-name}/composite-apps/{composite-app-name}/{version}/deployment-intent-groups
POST BODY:
{
"deployment-intent-group-name":"<intent-group-name>",
"profile": "<profile-name>",
"version": "<version of the deployment>"
"description": "<description>",
}
RETURN STATUS: 201
RETURN BODY:
{
"deployment-intent-group-name": "<intent-group-name>",
"description": "<description>"
} |
GET, DELETE
Code Block |
---|
language | js |
---|
title | POST |
---|
linenumbers | true |
---|
|
GET
URL: /v2/projects/{project-name}/composite-apps/{composite-app-name}/{version}/deployment-intent-groups/{deployment-intent-group-name //override-values overrides values from the helm charts and allows for instantiation time
//variable overrides.
"override-values": [
{"app-name":[{"imageRepository":"registry.hub.docker.com"}]},
{"app-name":[{"imageRepository":"registry.hub.docker.com"}]}
]
}
RETURN STATUS: 200201
RETURN BODY:
{
"deployment-intent-group-name": "<intent-group-name>",
"profiledescription": "<description>"
} |
GET, DELETE
Code Block |
---|
language | js |
---|
title | POST |
---|
linenumbers | true |
---|
|
GET
<profile-name>",
"version": "<version of the deployment>"
"description": "<description>"
}
DELETE
URL: /v2/projects/{project-name}/composite-apps/{composite-app-name}/{version}/deployment-intent-groups/{deployment-intent-group-name}
RETURN STATUS: 204
|
Adding intents to an Intent group
POST
Code Block |
---|
language | js |
---|
title | POST |
---|
linenumbers | true |
---|
|
URL: v2/projects/{project-name}/composite-apps/{composite-app-name}/{version}/deployment-intent-groups/{deployment-intent-group-name}/intents
POST BODY:
{
200
RETURN BODY:
{
"deployment-intent-group-name":"<name><intent-group-name>",
"descriptionprofile": "<description><profile-name>",
"intentversion":
"<version of the {deployment>"
"genericdescription":"xyz-generic-placement-intent"
}
}
RETURN STATUS: 201
RETURN BODY:
{
"intent-name": "intent-group-1",
"description": "Intent Group for Customer1"
"intent":
{
"generic":"xyz-generic-placement-intent"
}
} |
...
"<description>"
}
DELETE
URL: /v2/projects/{project-name}/composite-apps/{composite-app-name}/{version}/deployment-intent-groups/{deployment-intent-group-name}
RETURN STATUS: 204
|
Adding intents to an Intent group
POST
Code Block |
---|
language | js |
---|
title | POST |
---|
linenumbers | true |
---|
|
GET
URL: /v2/projects/{project-name}/composite-apps/{composite-app-name}/{version}/deployment-intent-groups/{deployment-intent-group-name}/intents/{intent-name}
{
POST BODY:
{
"intent-name": "intent-group-1""<name>",
"description": "Intent Group for Customer1<description>"
"intent":
{
"generic":"xyz-generic-placement-intent"
}
}
GET
URL: /v2/projects/{project-name}/composite-apps/{composite-app-name}/{version}/deployment-intent-groups/{deployment-intent-group-name}/intents
RETURN STATUS: 200201
RETURN BODY:
{
"intent-name": "intent":[-group-1",
"description": "Intent Group for {
Customer1"
"generic-placement-intent":"generic-placement-intent-name"
},
{
"hpa-placement-intentgeneric":"hpaxyz-generic-placement-intent-name"
}
} |
GET, DELETE
Code Block |
---|
language | js |
---|
title | POST |
---|
linenumbers | true |
---|
|
GET
{
"traffic-intent":"traffic-intent-name"
}
]
}
DELETE
URL: /v2/projects/{project-name}/URL: /v2/projects/{project-name}/composite-apps/{composite-app-name}/{version}/deployment-intent-groups/{deployment-intent-group-name}/intents/{intent-name}
{
RETURN STATUS: 204
|
Instantiation, Destroy, Status API
Instantiation API to instantiate composite app based on intent-group. Destroy API deletes the app and Status API returns the resources
POST
Code Block |
---|
language | js |
---|
title | POST |
---|
linenumbers | true |
---|
|
"intent-name": "intent-group-1",
"description": "Intent Group for Customer1"
"intent":
{
"generic":"xyz-generic-placement-intent"
}
}
GET
URL: /v2/projects/{project-name}/composite-apps/{composite-app-name}/{version}/deployment-intent-groups/{deployment-intent-group-name}/initantiate
POST BODY:
{
//override-values overrides values from the helm charts and allows for instantiation time
//variable overrides.
"override-values": [
{"app-name":[{"imageRepository":"registry.hub.docker.com"}]},
{"app-name":[{"imageRepository":"registry.hub.docker.com"}]}
]
}/deployment-intent-groups/{deployment-intent-group-name}/intents
RETURN STATUS: 200
RETURN BODY:
{
"intent":[
{
"generic-placement-intent":"generic-placement-intent-name"
},
{
"hpa-placement-intent":"hpa-placement-intent-name"
},
{
"traffic-intent":"traffic-intent-name"
}
]
}
DELETE
URL: /v2/projects/{project-name}/composite-apps/{composite-app-name}/{version}/deployment-intent-groups/{deployment-intent-group-name}/intents/{intent-name}
RETURN STATUS: 204
|
Instantiation, Destroy, Status API
Instantiation API to instantiate composite app based on intent-group. Destroy API deletes the app and Status API returns the resources
POST
Code Block |
---|
language | js |
---|
title | POST |
---|
linenumbers | true |
---|
|
URL: /v2/projects/{project-name}/composite-apps/{composite-app-name}/{version}/deployment-intent-groups/{deployment-intent-group-name}/initantiate
POST BODY:
{
}
RETURN STATUS: 201
RETURN BODY:
{ 201
RETURN BODY:
{
//override-values overrides values from the helm charts and allows for instantiation time
//variable overrides.
"override-values": [
{"app-name":[{"imageRepository":"registry.hub.docker.com"}]},
{"app-name":[{"imageRepository":"registry.hub.docker.com"}]}
]
}
URL: /v2/projects/{project-name}/composite-apps/{composite-app-name}/{version}/deployment-intent-groups/{deployment-intent-group-name}/status
POST BODY:
RETURN STATUS: 201
RETURN BODY:
{
"name": "<name>",
"composite-app-name": "test-rbdef",
"composite-app-version": "v1",
"profile-name": "test-rbdef",
"intent-group": "intent-group-1"
"namespace": "testinstallns",
"resources": [
{
"GVK": {
"Group": "",
"Version": "v1",
"Kind": "Service"
},
"cluster-name": "cluster1",
"Name": "mongo",
"status": "Running"
},
{
"GVK": {
"Group": "",
"Version": "v1",
"Kind": "Service"
},
"cluster-name": "cluster2",
"Name": "mongo-read",
"status": "Terminated"
}
]
}
URL: /v2/projects/{project-name}/composite-apps/{composite-app-name}/{version}/deployment-intent-groups/{deployment-intent-group-name}/destroy
POST BODY:
{
}
RETURN STATUS: 201
RETURN BODY:
{
"name": <name>
} |
Cluster Registration API
...