/v2/compute/projects/{project_id}/cloud/nodes

POST /v2/compute/projects/{project_id}/cloud/nodes

Create a new cloud instance

Parameters

  • project_id: Project UUID

Response status codes

  • 201: Instance created

  • 400: Invalid request

  • 409: Conflict

Input

Types

HostInterfaces

Interfaces on this host

Name Mandatory Type Description
name ✔ string Interface name
special ✔ boolean If true the interface is non standard (firewire for example)
type ✔ enum Possible values: ethernet, tap

Body

Name Mandatory Type Description
interfaces array
name ✔ string Cloud name
node_id Node UUID
ports_mapping array
remote_console_host ['string'] Remote console host or IP
remote_console_http_path string Path of the remote web interface
remote_console_port ['integer', 'null'] Console TCP port
remote_console_type enum Possible values: telnet, vnc, spice, http, https, none

Output

Name Mandatory Type Description
interfaces array
name ✔ string Cloud name
node_directory string Path to the VM working directory
node_id ✔ string Node UUID
ports_mapping ✔ array
project_id ✔ string Project UUID
remote_console_host ['string'] Remote console host or IP
remote_console_http_path string Path of the remote web interface
remote_console_port ['integer', 'null'] Console TCP port
remote_console_type enum Possible values: telnet, vnc, spice, http, https, none
status enum Possible values: started, stopped, suspended

Sample session

curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes' -d '{"name": "Cloud 1"}'

POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes HTTP/1.1
{
    "name": "Cloud 1"
}


HTTP/1.1 201
Connection: close
Content-Length: 1406
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:25:43 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/cloud/nodes

{
    "interfaces": [
        {
            "name": "docker0",
            "special": true,
            "type": "ethernet"
        },
        {
            "name": "lo",
            "special": true,
            "type": "ethernet"
        },
        {
            "name": "virbr0",
            "special": true,
            "type": "ethernet"
        },
        {
            "name": "virbr0-nic",
            "special": true,
            "type": "ethernet"
        },
        {
            "name": "vmnet1",
            "special": true,
            "type": "ethernet"
        },
        {
            "name": "vmnet8",
            "special": true,
            "type": "ethernet"
        },
        {
            "name": "wlp2s0",
            "special": false,
            "type": "ethernet"
        }
    ],
    "name": "Cloud 1",
    "node_directory": "/tmp/pytest-of-grossmj/pytest-41/test_json4/project-files/builtin/3cba86a4-73d7-4989-9c83-f0bb480ff950",
    "node_id": "3cba86a4-73d7-4989-9c83-f0bb480ff950",
    "ports_mapping": [
        {
            "interface": "wlp2s0",
            "name": "wlp2s0",
            "port_number": 0,
            "type": "ethernet"
        }
    ],
    "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80",
    "remote_console_host": "",
    "remote_console_http_path": "/",
    "remote_console_port": 23,
    "remote_console_type": "none",
    "status": "started"
}