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

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

Get a cloud instance

Parameters

  • project_id: Project UUID

  • node_id: Node UUID

Response status codes

  • 200: Success

  • 400: Invalid request

  • 404: Instance doesn’t exist

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 GET 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/75228bef-1806-41fc-8b73-1c5752870ac6'

GET /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/75228bef-1806-41fc-8b73-1c5752870ac6 HTTP/1.1



HTTP/1.1 200
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/{node_id}

{
    "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/75228bef-1806-41fc-8b73-1c5752870ac6",
    "node_id": "75228bef-1806-41fc-8b73-1c5752870ac6",
    "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"
}

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

Update a cloud instance

Parameters

  • project_id: Project UUID

  • node_id: Node UUID

Response status codes

  • 200: Instance updated

  • 400: Invalid request

  • 404: Instance doesn’t exist

  • 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_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

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 PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/728fff19-c5cd-47b7-89e1-c7c41c8a5caf' -d '{"name": "test"}'

PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/728fff19-c5cd-47b7-89e1-c7c41c8a5caf HTTP/1.1
{
    "name": "test"
}


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

{
    "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": "test",
    "node_directory": "/tmp/pytest-of-grossmj/pytest-41/test_json4/project-files/builtin/728fff19-c5cd-47b7-89e1-c7c41c8a5caf",
    "node_id": "728fff19-c5cd-47b7-89e1-c7c41c8a5caf",
    "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"
}

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

Delete a cloud instance

Parameters

  • project_id: Project UUID

  • node_id: Node UUID

Response status codes

  • 204: Instance deleted

  • 400: Invalid request

  • 404: Instance doesn’t exist

Sample session

curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/a022e62a-a40b-42a5-8efd-3d8141806276'

DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/a022e62a-a40b-42a5-8efd-3d8141806276 HTTP/1.1



HTTP/1.1 204
Connection: close
Content-Length: 0
Content-Type: application/octet-stream
Date: Wed, 08 Jan 2020 02:25:49 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/cloud/nodes/{node_id}