Versions Compared

Key

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

...

Code Block
languagebash
titlePOST
linenumberstrue
URL: /v2/cluster-providers/{cluster-provider-name}/clusters/{cluster-name}/terminate
POST BODY:
{
 
}


Deployment Network

...

Control Intents

POST

Code Block
languagebash
titlePOST
linenumberstrue
URL: /v2/projects/{project-name}/composite-apps/{composite-app-name}/{version}/network-controller-intent
POST BODY:
{
  "metadata": {
    "name": "<name>",
    "description": "<description>",
    "userData1": "<user data>",
    "userData2": "<user data>"
   }
}

Workload Network Intents

POST

Code Block
languagebash
titlePOST
linenumberstrue
URL: /v2/projects/{project-name}/composite-apps/{composite-app-name}/{version}/network-controller-intent/{net-control-intent}/workload-intents
POST BODY:
{
  "metadata": {
    "name": "<name>",
    "description": "<description>",
    "userData1": "<user data>",
    "userData2": "<user data>"
   },
  "spec": {
    "application-name":"app1",
    "workload-resource" : "firewall",
    "type":  "deployment"
}

Add network interface intent for a workload

POST

Code Block
languagebash
titlePOST
linenumberstrue
URL: /v2/projects/{project-name}/composite-apps/{composite-app-name}/{version}/network-controller-intent/{net-control-intent}/workload-intents/<workload-intent-name>/interfaces
POST BODY:
{
  "metadata": {
    "name": "<name>",
    "description": "<description>",
    "userData1": "<user data>",
    "userData2": "<user data>"
   },
  "spec": {
    "interface-name":"net0",
    "network-name" : "provider-net-1",
    "default-interface": "false", // Optional, default value is false
    "ip-address": "0.0.0.0", // Optional, if not provided then dynamically allocated
    "mac-address": "x:x:x:x" // Optional, if not provided then dynamically allocated 
}

...

With network chaining, network chains can be created.

POST

Code Block
languagebash
titlePOST
linenumberstrue
URL: /v2/projects/{project-name}/composite-apps/{composite-app-name}/{version}/network-controller-intent/{net-control-intent}/network-chains
POST BODY:
{
  "metadata": {
    "name": "<name>",
    "description": "<description>",
    "userData1": "<user data>",
    "userData2": "<user data>"
  },
  "spec": {
    "app-name": "<name>",
    "chainType": "Routing",
    "routingSpec": {
      "namespace": "default",
      "networkChain": "app=slb,dync-net1,app=ngfw,dync-net2,app=sdwan",
      "leftApp": {"app-name": "ms1", "workload": "app=dep1"},
      "rightApp": {"app-name": "ms2", "workload": "app=dep2"},
      "leftNetwork": [
        {
          "leftStaticIp": "172.30.10.3", 
          "networkName": "pnet1",
          "gatewayIp": "172.30.10.2",
          "subnet": "172.30.10.0/24"
        }
      ],
      "rightNetwork": [
        {
          "rightStaticIp": "172.20.10.3",
          "networkName": "pnet2",
          "gatewayIp": "172.30.20.2",
          "subnet": "172.30.20.0/24"
        }
      ]
    }
  }
}

Apply 

Create network control intents for a given composite app/version

Code Block
languagebash
titlePOST
linenumberstrue
URL: /v2/projects/{project-name}/composite-apps/{composite-app-name}/{version}/network-controller-intent/{net-control-intent}/apply
POST BODY:
{
 
}

Terminate

Delete network control intents for a given composite app/version

Code Block
languagebash
titlePOST
linenumberstrue
URL: /v2/projects/{project-name}/composite-apps/{composite-app-name}/{version}/network-controller-intent/{net-control-intent}/terminate
POST BODY:
{
 
}