ITS Private Cloud API v2.4.5 🎉

We are pleased to announce we released the ITS Cloud API v2.4.5 with the following improvements and bug fixes:

Improvements

Virtual Machine object include all available ip addresses and admin info (#1046, #1047)

Endpoints

Description

Virtual Machines objects are now storing all available ip addresses which makes the resources easier to search for a desired instance with a secondary ip address.

curl -H "$TK" -X GET "https://cloud-api.eis.utoronto.ca/v2/vm?short=1&filter=ip_address,like,192.168.1%"

VM Admin is now a searchable attribute:

curl -H "$TK" -X GET "https://cloud-api.eis.utoronto.ca/v2/vm?short=1&filter=admin,like,%jm.lopez%"


Digest/Message send fist 50 messages #1038

Endpoints

  • N/A

Description

The Digest that includes messages received within the API now only includes the latest 50 items. To list more messages, refer to the API resource /v2/message or vss-cli documentation

Domain object refactor (#944)

Endpoints

  • /v2/domain
  • /v2/domain/<moref>/vms

Description

Fault domain has been finally refactored to conclude with the Managed Objects standardization process. These resources now work with a few extra parameters in the query string, such as per_page to set the maximum number of objects in the result payload, where it can be set up to 2000. Also, you can filter, sort and get a summary of the objects by including short=1 in the query string. All this is documented in the API Reference Documentation and the API Docs

For instance, making the following request:

curl -H "Authentication: Bearer $TK" -X GET "https://cloud-api.eis.utoronto.ca/v2/domain?filter=name,like,FD%"
           {
            "created_on": "2019-10-25 Fri 21:04:14 EDT",
            "moref": "domain-c5877",
            "name": "FD3",
            "overallStatus": "green",
            "updated_on": "2019-10-28 Mon 00:21:06 EDT"
        },
        {
            "created_on": "2019-10-25 Fri 21:04:12 EDT",
            "moref": "domain-c4252",
            "name": "FD2",
            "overallStatus": "green",
            "updated_on": "2019-10-28 Mon 00:21:01 EDT"
        }

Listing virtual machines deployed on a given Fault Domain can be also filtered by any VM attribute, for instance

curl -H "$TK" -X GET "https://cloud-api.eis.utoronto.ca/v2/domain/domain-c4252/vm?short=1&filter=name,like,%hoth%"

New Features

VM/Enable content Copy/Paste between VMRC client and Windows/Linux Virtual Machine (#1045)

Endpoints

  • /vm/<uuid>/console/copy-paste

Description

Based on VMware KB Article Enable content Copy/Paste between VMRC client and Windows/Linux Virtual Machine (57122) we have created a simple interface to enable/disable and query the status of the required configuration to allow copy/paste between VMRC and Windows/Linux client in the ITS Private Cloud API. 

To validate whether the settings are present on the virtual machine, make a GET request to /vm/<uuid>/console/copy-paste:

curl -H "$TK" -X GET "https://cloud-api.eis.utoronto.ca/v2/vm/5012c585-98e5-088b-4c61-9b100a414fca/console/copy-paste"
{
  "_links": {
    "self": "https://cloud-api.eis.utoronto.ca/v2/vm/5012c585-98e5-088b-4c61-9b100a414fca/console/copy-paste",
    "vm": "https://cloud-api.eis.utoronto.ca/v2/vm/5012c585-98e5-088b-4c61-9b100a414fca/console"
  },
  "data": {
    "enabled": false
  },
  "meta": {
    "count": 1,
    "time": "0.06208s",
    "user": "josem"
  }
}

To enable, just make a POST request to /vm/<uuid>/console/copy-paste :

curl -H "$TK" -X POST "https://cloud-api.eis.utoronto.ca/v2/vm/5012c585-98e5-088b-4c61-9b100a414fca/console/copy-paste"
{
  "data": {
    "_links": {
      "request": "https://cloud-api.eis.utoronto.ca/v2/request/change/18232",
      "task": "https://cloud-api.eis.utoronto.ca/v2/request/task/f7dbe442-93f7-413b-b53f-bf50f142c9b3"
    },
    "message": "Request has been accepted for processing",
    "name": "Accepted",
    "request": {
      "id": 18232,
      "status": "IN_PROGRESS",
      "task_id": "f7dbe442-93f7-413b-b53f-bf50f142c9b3"
    },
    "status": 202
  },
  "meta": {
    "time": "0.19224s",
    "user": "josem"
  }
}

Although, the virtual machine can be powered on while applying the change, power cycle is required to take effect.

VM/Deployment PTRname for VMs in VSS-PUBLIC (#1035)

Endpoints

  • /vm

Description

Allow users to set PTR entry for VMs deployed on the VSS-PUBLIC network:

'{"description": "Testing new adapter payload", "bill_dept": "EIS", "usage": "Dev", "built_from": "os_install", "os": "78", "folder": "group-v123", "disks": [8], "networks": [{"network": "dvportgroup-11052"}], "network_meta": {"ptr": "vm-host.eis.utoronto.ca."}}'

Doing a reverse lookup for the IP when allocated, it should work as follows:

host 142.1.217.XXX
XXX.217.1.142.in-addr.arpa domain name pointer vm-host.eis.utoronto.ca.

This feature only works for new vm deployments.


Bug Fixes

VM/Request build from image does not get retried (#1041)

Endpoints

  • /vm

Description

Virtual machines deployed from image (OVA/OVF) were not retried if failed.

VM/Export exception while downloading disks (#1043)

Endpoints

  • /v2/vm/<uuid>/export

Description

Export failed when virtual machine to be exported had other disks than vmdk included in the OVF descriptor.


University of Toronto - Since 1827