Machine

Machine
Machine

Represents a cloud agnostic machine.
HATEOAS links:
operations - array[String] - Supported operations for the machine.
network-interfaces - array[NetworkInterface] - Network interfaces for the machine.
disks - array[MachineDisk] - disks for the machine.
deployment - Deployment - Deployment that this machine is part of.
cloud-accounts - array[CloudAccount] - Cloud accounts where this machine is provisioned.
self - Machine - Self link to this machine

JSON Example
{
    "id": "9.0E49",
    "createdAt": "2012-09-27",
    "updatedAt": "2012-09-27",
    "owner": "[email protected]",
    "ownerType": "ad_group",
    "orgId": "42413b31-1716-477e-9a88-9dc1c3cb1cdf",
    "_links": {
        "empty": false
    },
    "name": "my-name",
    "description": "my-description",
    "externalId": "i-cfe4-e241-e53b-756a9a2e25d2",
    "projectId": "9.0E49",
    "externalZoneId": "us-east-1a",
    "externalRegionId": "us-east-1",
    "cloudAccountIds": [
        9e+49
    ],
    "deploymentId": "123e4567-e89b-12d3-a456-426655440000",
    "provisioningStatus": "string",
    "tags": [
        {
            "key": "ownedBy",
            "value": "Rainpole"
        }
    ],
    "customProperties": {
        "property": "value"
    },
    "powerState": "ON, OFF",
    "address": "34.242.21.5",
    "hostname": "string",
    "bootConfig": {
        "content": "#cloud-config\nrepo_update: true\nrepo_upgrade: all\n\npackages:\n - mysql-server\n\nruncmd:\n - sed -e '/bind-address/ s/^#*/#/' -i /etc/mysql/mysql.conf.d/mysqld.cnf\n - service mysql restart\n - mysql -e \"GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'mysqlpassword';\"\n - mysql -e \"FLUSH PRIVILEGES;\"\n"
    },
    "saltConfiguration": {
        "masterId": "string",
        "minionId": "string",
        "saltEnvironment": "string",
        "pillarEnvironment": "string",
        "installerFileName": "string",
        "stateFiles": [
            "string"
        ],
        "variables": {
            "variables": "string"
        },
        "additionalAuthParams": {
            "additionalAuthParams": "string"
        },
        "additionalMinionParams": {
            "additionalMinionParams": "string"
        }
    }
}
string
id
Required

The id of this resource instance

string
createdAt
Optional

Date when the entity was created. The date is in ISO 8601 and UTC.

string
updatedAt
Optional

Date when the entity was last updated. The date is ISO 8601 and UTC.

string
owner
Optional

Email of the user or display name of the group that owns the entity.

string
ownerType
Optional

Type of a owner(user/ad_group) that owns the entity.

string
orgId
Optional

The id of the organization this entity belongs to.

object
_links
Required

HATEOAS of the entity

string
name
Optional

A human-friendly name used as an identifier in APIs that support this option.

string
description
Optional

A human-friendly description.

string
externalId
Optional

External entity Id on the provider side.

string
projectId
Optional

The id of the project this resource belongs to.

string
externalZoneId
Optional

The external zoneId of the resource.

string
externalRegionId
Required

The external regionId of the resource.

array of string
cloudAccountIds
Optional

Set of ids of the cloud accounts this resource belongs to.

string
deploymentId
Optional

Deployment id that is associated with this resource.

string
provisioningStatus
Optional

The provisioning status of the resource. One of three provisioning statuses. PROVISIONING: The resource is being provisioned. READY: The resource is already provisioned. SUSPEND: The resource is being destroyed.

array of Tag
tags
Optional

A set of tag keys and optional values that were set on this resource.

object
customProperties
Optional

Additional properties that may be used to extend the base resource.

string
powerState
Required

Power state of machine.

Possible values are : ON, OFF, GUEST_OFF, UNKNOWN, SUSPEND,
string
address
Optional

Primary address allocated or in use by this machine. The actual type of the address depends on the adapter type. Typically it is either the public or the external IP address.

string
hostname
Optional

Hostname associated with this machine instance.

bootConfig
Optional

Machine boot config that will be passed to the instance that can be used to perform common automated configuration tasks and even run scripts after the instance starts.

saltConfiguration
Optional

Represents salt configuration settings that has to be applied on the machine. To successfully apply the configurations, remoteAccess property is mandatory.The supported remoteAccess authentication types are usernamePassword and generatedPublicPrivateKey