mirror of https://github.com/apache/jclouds.git
JCLOUDS-317: Add missing states to Nova v2 Server
- Deprecated state: STOPPED - Add states: MIGRATING, SHUTOFF, RESCUE, SOFT_DELETED, SHELVED, SHELVED_OFFLOADED
This commit is contained in:
parent
2a8ec6be9b
commit
f4aaf702fa
|
@ -59,7 +59,15 @@ public class Server extends Resource {
|
|||
*/
|
||||
public static enum Status {
|
||||
|
||||
ACTIVE, BUILD, REBUILD, SUSPENDED, PAUSED, RESIZE, VERIFY_RESIZE, REVERT_RESIZE, PASSWORD, REBOOT, HARD_REBOOT, DELETED, UNKNOWN, ERROR, STOPPED, UNRECOGNIZED;
|
||||
ACTIVE, BUILD, REBUILD, SUSPENDED, PAUSED, RESIZE, VERIFY_RESIZE, REVERT_RESIZE, PASSWORD, REBOOT, HARD_REBOOT,
|
||||
DELETED, UNKNOWN, ERROR,
|
||||
|
||||
/**
|
||||
* @deprecated please use {@code Status.SHUTOFF} instead
|
||||
*/
|
||||
@Deprecated STOPPED,
|
||||
|
||||
UNRECOGNIZED, MIGRATING, SHUTOFF, RESCUE, SOFT_DELETED, SHELVED, SHELVED_OFFLOADED;
|
||||
|
||||
public String value() {
|
||||
return name();
|
||||
|
|
|
@ -30,6 +30,7 @@ import org.jclouds.openstack.nova.v2_0.options.RebuildServerOptions;
|
|||
import org.jclouds.openstack.nova.v2_0.parse.ParseCreatedServerTest;
|
||||
import org.jclouds.openstack.nova.v2_0.parse.ParseMetadataListTest;
|
||||
import org.jclouds.openstack.nova.v2_0.parse.ParseMetadataUpdateTest;
|
||||
import org.jclouds.openstack.nova.v2_0.parse.ParseServerDetailsStatesTest;
|
||||
import org.jclouds.openstack.nova.v2_0.parse.ParseServerListTest;
|
||||
import org.testng.annotations.Test;
|
||||
|
||||
|
@ -82,6 +83,42 @@ public class ServerApiExpectTest extends BaseNovaApiExpectTest {
|
|||
assertTrue(apiWhenNoServersExist.getServerApiForZone("az-1.region-a.geo-1").list().concat().isEmpty());
|
||||
}
|
||||
|
||||
public void testListInDetailServersWhenResponseIs2xx() throws Exception {
|
||||
HttpRequest listServers = HttpRequest
|
||||
.builder()
|
||||
.method("GET")
|
||||
.endpoint("https://az-1.region-a.geo-1.compute.hpcloudsvc.com/v1.1/3456/servers/detail")
|
||||
.addHeader("Accept", "application/json")
|
||||
.addHeader("X-Auth-Token", authToken).build();
|
||||
|
||||
HttpResponse listInDetailServersResponse = HttpResponse.builder().statusCode(200)
|
||||
.payload(payloadFromResource("/server_list_details_states.json")).build();
|
||||
|
||||
NovaApi apiWhenServersExist = requestsSendResponses(keystoneAuthWithUsernameAndPasswordAndTenantName,
|
||||
responseWithKeystoneAccess, listServers, listInDetailServersResponse);
|
||||
|
||||
assertEquals(apiWhenServersExist.getConfiguredZones(), ImmutableSet.of("az-1.region-a.geo-1", "az-2.region-a.geo-1", "az-3.region-a.geo-1"));
|
||||
|
||||
assertEquals(apiWhenServersExist.getServerApiForZone("az-1.region-a.geo-1").listInDetail().concat().toString(),
|
||||
new ParseServerDetailsStatesTest().expected().toString());
|
||||
}
|
||||
|
||||
public void testListInDetailServersWhenReponseIs404IsEmpty() throws Exception {
|
||||
HttpRequest listServers = HttpRequest
|
||||
.builder()
|
||||
.method("GET")
|
||||
.endpoint("https://az-1.region-a.geo-1.compute.hpcloudsvc.com/v1.1/3456/servers/detail")
|
||||
.addHeader("Accept", "application/json")
|
||||
.addHeader("X-Auth-Token", authToken).build();
|
||||
|
||||
HttpResponse listInDetailServersResponse = HttpResponse.builder().statusCode(404).build();
|
||||
|
||||
NovaApi apiWhenNoServersExist = requestsSendResponses(keystoneAuthWithUsernameAndPasswordAndTenantName,
|
||||
responseWithKeystoneAccess, listServers, listInDetailServersResponse);
|
||||
|
||||
assertTrue(apiWhenNoServersExist.getServerApiForZone("az-1.region-a.geo-1").listInDetail().concat().isEmpty());
|
||||
}
|
||||
|
||||
public void testCreateServerWhenResponseIs202() throws Exception {
|
||||
HttpRequest createServer = HttpRequest
|
||||
.builder()
|
||||
|
|
|
@ -0,0 +1,255 @@
|
|||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
* contributor license agreements. See the NOTICE file distributed with
|
||||
* this work for additional information regarding copyright ownership.
|
||||
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
* (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
package org.jclouds.openstack.nova.v2_0.parse;
|
||||
|
||||
import com.google.common.collect.ImmutableMultimap;
|
||||
import com.google.common.collect.ImmutableSet;
|
||||
import com.google.inject.Guice;
|
||||
import com.google.inject.Injector;
|
||||
import java.net.URI;
|
||||
import java.util.Set;
|
||||
import javax.ws.rs.Consumes;
|
||||
import javax.ws.rs.core.MediaType;
|
||||
import org.jclouds.date.internal.SimpleDateFormatDateService;
|
||||
import org.jclouds.json.BaseSetParserTest;
|
||||
import org.jclouds.json.config.GsonModule;
|
||||
import org.jclouds.openstack.nova.v2_0.config.NovaParserModule;
|
||||
import org.jclouds.openstack.nova.v2_0.domain.Address;
|
||||
import org.jclouds.openstack.nova.v2_0.domain.Server;
|
||||
import org.jclouds.openstack.nova.v2_0.domain.Server.Status;
|
||||
import org.jclouds.openstack.nova.v2_0.domain.ServerExtendedAttributes;
|
||||
import org.jclouds.openstack.nova.v2_0.domain.ServerExtendedStatus;
|
||||
import org.jclouds.openstack.v2_0.domain.Link;
|
||||
import org.jclouds.openstack.v2_0.domain.Link.Relation;
|
||||
import org.jclouds.openstack.v2_0.domain.Resource;
|
||||
import org.jclouds.rest.annotations.SelectJson;
|
||||
import org.testng.annotations.Test;
|
||||
|
||||
/**
|
||||
* @author Jacob Mourelos
|
||||
*/
|
||||
@Test(groups = "unit", testName = "ParseServerDetailsStatesTest")
|
||||
public class ParseServerDetailsStatesTest extends BaseSetParserTest<Server> {
|
||||
|
||||
@Override
|
||||
public String resource() {
|
||||
return "/server_list_details_states.json";
|
||||
}
|
||||
|
||||
@Override
|
||||
@SelectJson("servers")
|
||||
@Consumes(MediaType.APPLICATION_JSON)
|
||||
public Set<Server> expected() {
|
||||
return ImmutableSet.<Server>of(
|
||||
Server.builder()
|
||||
.links(
|
||||
Link.create(
|
||||
Relation.SELF,
|
||||
URI.create("http://openstack:8774/v2/4e1900cf21924a098709c23480e157c0/servers/56d51a88-0066-4976-91b6-d1b453be603f")),
|
||||
Link.create(
|
||||
Relation.BOOKMARK,
|
||||
URI.create("http://openstack:8774/4e1900cf21924a098709c23480e157c0/servers/56d51a88-0066-4976-91b6-d1b453be603f")))
|
||||
.image(Resource.builder()
|
||||
.id("e3f84189-964e-4dc3-8ac6-832c2b7553d4")
|
||||
.links(Link.create(
|
||||
Relation.BOOKMARK,
|
||||
URI.create("http://openstack:8774/4e1900cf21924a098709c23480e157c0/images/e3f84189-964e-4dc3-8ac6-832c2b7553d4")))
|
||||
.build())
|
||||
.flavor(Resource.builder()
|
||||
.id("6")
|
||||
.links(Link.create(
|
||||
Relation.BOOKMARK,
|
||||
URI.create("http://openstack:8774/4e1900cf21924a098709c23480e157c0/flavors/6")))
|
||||
.build())
|
||||
.id("56d51a88-0066-4976-91b6-d1b453be603f")
|
||||
.userId("08ba127f0d6842279f9db8e8bc6977e9")
|
||||
.status(Status.BUILD)
|
||||
.updated(new SimpleDateFormatDateService().iso8601SecondsDateParse("2014-03-19T11:54:59Z"))
|
||||
.hostId("0bc453b1c10348e9dc398fed7a5b06f996964ae1643fe460a85a23d8")
|
||||
.name("machine_5")
|
||||
.created(new SimpleDateFormatDateService().iso8601SecondsDateParse("2014-03-19T11:54:57Z"))
|
||||
.tenantId("4e1900cf21924a098709c23480e157c0")
|
||||
.extendedStatus(ServerExtendedStatus.builder().vmState("building").powerState(0).taskState("spawning")
|
||||
.build())
|
||||
.diskConfig("MANUAL")
|
||||
.extendedAttributes(
|
||||
ServerExtendedAttributes.builder()
|
||||
.instanceName("instance-0000000b")
|
||||
.hostName("rdohavana.localdomain")
|
||||
.hypervisorHostName("rdohavana.localdomain").build()
|
||||
).build(),
|
||||
Server.builder()
|
||||
.links(
|
||||
Link.create(
|
||||
Relation.SELF,
|
||||
URI.create("http://openstack:8774/v2/4e1900cf21924a098709c23480e157c0/servers/3bc8ab03-52e7-4d2b-ba88-73f9ecadf003")),
|
||||
Link.create(
|
||||
Relation.BOOKMARK,
|
||||
URI.create("http://openstack:8774/4e1900cf21924a098709c23480e157c0/servers/3bc8ab03-52e7-4d2b-ba88-73f9ecadf003")))
|
||||
.image(Resource.builder()
|
||||
.id("e3f84189-964e-4dc3-8ac6-832c2b7553d4")
|
||||
.links(Link.create(
|
||||
Relation.BOOKMARK,
|
||||
URI.create("http://openstack:8774/4e1900cf21924a098709c23480e157c0/images/e3f84189-964e-4dc3-8ac6-832c2b7553d4")))
|
||||
.build())
|
||||
.flavor(Resource.builder()
|
||||
.id("6")
|
||||
.links(Link.create(
|
||||
Relation.BOOKMARK,
|
||||
URI.create("http://openstack:8774/4e1900cf21924a098709c23480e157c0/flavors/6")))
|
||||
.build())
|
||||
.id("3bc8ab03-52e7-4d2b-ba88-73f9ecadf003")
|
||||
.userId("08ba127f0d6842279f9db8e8bc6977e9")
|
||||
.status(Status.ACTIVE)
|
||||
.updated(new SimpleDateFormatDateService().iso8601SecondsDateParse("2014-03-19T11:52:21Z"))
|
||||
.hostId("0bc453b1c10348e9dc398fed7a5b06f996964ae1643fe460a85a23d8")
|
||||
.name("machine_4")
|
||||
.created(new SimpleDateFormatDateService().iso8601SecondsDateParse("2014-03-19T11:51:53Z"))
|
||||
.tenantId("4e1900cf21924a098709c23480e157c0")
|
||||
.extendedStatus(ServerExtendedStatus.builder().vmState("active").powerState(1).build())
|
||||
.diskConfig("MANUAL")
|
||||
.extendedAttributes(
|
||||
ServerExtendedAttributes.builder()
|
||||
.instanceName("instance-00000009")
|
||||
.hostName("rdohavana.localdomain")
|
||||
.hypervisorHostName("rdohavana.localdomain").build()
|
||||
)
|
||||
.addresses(ImmutableMultimap.<String, Address>builder()
|
||||
.putAll("public", Address.createV4("172.24.4.232")).build()
|
||||
).build(),
|
||||
Server.builder()
|
||||
.links(
|
||||
Link.create(
|
||||
Relation.SELF,
|
||||
URI.create("http://openstack:8774/v2/4e1900cf21924a098709c23480e157c0/servers/cad76945-8851-489a-99e1-f1049e02c769")),
|
||||
Link.create(
|
||||
Relation.BOOKMARK,
|
||||
URI.create("http://openstack:8774/4e1900cf21924a098709c23480e157c0/servers/cad76945-8851-489a-99e1-f1049e02c769")))
|
||||
.image(Resource.builder()
|
||||
.id("e3f84189-964e-4dc3-8ac6-832c2b7553d4")
|
||||
.links(Link.create(
|
||||
Relation.BOOKMARK,
|
||||
URI.create("http://openstack:8774/4e1900cf21924a098709c23480e157c0/images/e3f84189-964e-4dc3-8ac6-832c2b7553d4")))
|
||||
.build())
|
||||
.flavor(Resource.builder()
|
||||
.id("6")
|
||||
.links(Link.create(
|
||||
Relation.BOOKMARK,
|
||||
URI.create("http://openstack:8774/4e1900cf21924a098709c23480e157c0/flavors/6")))
|
||||
.build())
|
||||
.id("cad76945-8851-489a-99e1-f1049e02c769")
|
||||
.userId("08ba127f0d6842279f9db8e8bc6977e9")
|
||||
.status(Status.SHELVED_OFFLOADED)
|
||||
.updated(new SimpleDateFormatDateService().iso8601SecondsDateParse("2014-03-19T11:38:05Z"))
|
||||
.name("machine_3")
|
||||
.created(new SimpleDateFormatDateService().iso8601SecondsDateParse("2014-03-19T11:33:27Z"))
|
||||
.tenantId("4e1900cf21924a098709c23480e157c0")
|
||||
.extendedStatus(ServerExtendedStatus.builder().vmState("shelved_offloaded").powerState(4).build())
|
||||
.diskConfig("MANUAL")
|
||||
.extendedAttributes(
|
||||
ServerExtendedAttributes.builder()
|
||||
.instanceName("instance-00000006").build()
|
||||
)
|
||||
.addresses(ImmutableMultimap.<String, Address>builder()
|
||||
.putAll("public", Address.createV4("172.24.4.229")).build()
|
||||
).build(),
|
||||
Server.builder()
|
||||
.links(
|
||||
Link.create(
|
||||
Relation.SELF,
|
||||
URI.create("http://openstack:8774/v2/4e1900cf21924a098709c23480e157c0/servers/89142a4f-f58c-4205-8571-65f4a2be2bc9")),
|
||||
Link.create(
|
||||
Relation.BOOKMARK,
|
||||
URI.create("http://openstack:8774/4e1900cf21924a098709c23480e157c0/servers/89142a4f-f58c-4205-8571-65f4a2be2bc9")))
|
||||
.image(Resource.builder()
|
||||
.id("e3f84189-964e-4dc3-8ac6-832c2b7553d4")
|
||||
.links(Link.create(
|
||||
Relation.BOOKMARK,
|
||||
URI.create("http://openstack:8774/4e1900cf21924a098709c23480e157c0/images/e3f84189-964e-4dc3-8ac6-832c2b7553d4")))
|
||||
.build())
|
||||
.flavor(Resource.builder()
|
||||
.id("6")
|
||||
.links(Link.create(
|
||||
Relation.BOOKMARK,
|
||||
URI.create("http://openstack:8774/4e1900cf21924a098709c23480e157c0/flavors/6")))
|
||||
.build())
|
||||
.id("89142a4f-f58c-4205-8571-65f4a2be2bc9")
|
||||
.userId("08ba127f0d6842279f9db8e8bc6977e9")
|
||||
.status(Status.RESCUE)
|
||||
.updated(new SimpleDateFormatDateService().iso8601SecondsDateParse("2014-03-19T11:36:05Z"))
|
||||
.hostId("0bc453b1c10348e9dc398fed7a5b06f996964ae1643fe460a85a23d8")
|
||||
.name("machine_2")
|
||||
.created(new SimpleDateFormatDateService().iso8601SecondsDateParse("2014-03-19T11:31:19Z"))
|
||||
.tenantId("4e1900cf21924a098709c23480e157c0")
|
||||
.extendedStatus(ServerExtendedStatus.builder().vmState("rescued").powerState(1).build())
|
||||
.diskConfig("MANUAL")
|
||||
.extendedAttributes(
|
||||
ServerExtendedAttributes.builder()
|
||||
.instanceName("instance-00000005")
|
||||
.hostName("rdohavana.localdomain")
|
||||
.hypervisorHostName("rdohavana.localdomain").build()
|
||||
)
|
||||
.addresses(ImmutableMultimap.<String, Address>builder()
|
||||
.putAll("public", Address.createV4("172.24.4.227")).build()
|
||||
).build(),
|
||||
Server.builder()
|
||||
.links(
|
||||
Link.create(
|
||||
Relation.SELF,
|
||||
URI.create("http://openstack:8774/v2/4e1900cf21924a098709c23480e157c0/servers/fac50d26-bb38-455f-ad92-eba790187c00")),
|
||||
Link.create(
|
||||
Relation.BOOKMARK,
|
||||
URI.create("http://openstack:8774/4e1900cf21924a098709c23480e157c0/servers/fac50d26-bb38-455f-ad92-eba790187c00")))
|
||||
.image(Resource.builder()
|
||||
.id("e3f84189-964e-4dc3-8ac6-832c2b7553d4")
|
||||
.links(Link.create(
|
||||
Relation.BOOKMARK,
|
||||
URI.create("http://openstack:8774/4e1900cf21924a098709c23480e157c0/images/e3f84189-964e-4dc3-8ac6-832c2b7553d4")))
|
||||
.build())
|
||||
.flavor(Resource.builder()
|
||||
.id("6")
|
||||
.links(Link.create(
|
||||
Relation.BOOKMARK,
|
||||
URI.create("http://openstack:8774/4e1900cf21924a098709c23480e157c0/flavors/6")))
|
||||
.build())
|
||||
.id("fac50d26-bb38-455f-ad92-eba790187c00")
|
||||
.userId("08ba127f0d6842279f9db8e8bc6977e9")
|
||||
.status(Status.SHUTOFF)
|
||||
.updated(new SimpleDateFormatDateService().iso8601SecondsDateParse("2014-03-19T11:35:26Z"))
|
||||
.hostId("0bc453b1c10348e9dc398fed7a5b06f996964ae1643fe460a85a23d8")
|
||||
.name("machine_1")
|
||||
.created(new SimpleDateFormatDateService().iso8601SecondsDateParse("2014-03-19T11:28:56Z"))
|
||||
.tenantId("4e1900cf21924a098709c23480e157c0")
|
||||
.extendedStatus(ServerExtendedStatus.builder().vmState("stopped").powerState(4).build())
|
||||
.diskConfig("MANUAL")
|
||||
.extendedAttributes(
|
||||
ServerExtendedAttributes.builder()
|
||||
.instanceName("instance-00000004")
|
||||
.hostName("rdohavana.localdomain")
|
||||
.hypervisorHostName("rdohavana.localdomain").build()
|
||||
)
|
||||
.addresses(ImmutableMultimap.<String, Address>builder()
|
||||
.putAll("public", Address.createV4("172.24.4.228")).build()
|
||||
).build()
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
protected Injector injector() {
|
||||
return Guice.createInjector(new NovaParserModule(), new GsonModule());
|
||||
}
|
||||
}
|
|
@ -0,0 +1,342 @@
|
|||
{
|
||||
"servers": [
|
||||
{
|
||||
"OS-DCF:diskConfig": "MANUAL",
|
||||
"OS-EXT-AZ:availability_zone": "nova",
|
||||
"OS-EXT-SRV-ATTR:host": "rdohavana.localdomain",
|
||||
"OS-EXT-SRV-ATTR:hypervisor_hostname": "rdohavana.localdomain",
|
||||
"OS-EXT-SRV-ATTR:instance_name": "instance-0000000b",
|
||||
"OS-EXT-STS:power_state": 0,
|
||||
"OS-EXT-STS:task_state": "spawning",
|
||||
"OS-EXT-STS:vm_state": "building",
|
||||
"OS-SRV-USG:launched_at": null,
|
||||
"OS-SRV-USG:terminated_at": null,
|
||||
"accessIPv4": "",
|
||||
"accessIPv6": "",
|
||||
"addresses": {},
|
||||
"config_drive": "",
|
||||
"created": "2014-03-19T11:54:57Z",
|
||||
"flavor": {
|
||||
"id": "6",
|
||||
"links": [
|
||||
{
|
||||
"href": "http://openstack:8774/4e1900cf21924a098709c23480e157c0/flavors/6",
|
||||
"rel": "bookmark"
|
||||
}
|
||||
]
|
||||
},
|
||||
"hostId": "0bc453b1c10348e9dc398fed7a5b06f996964ae1643fe460a85a23d8",
|
||||
"id": "56d51a88-0066-4976-91b6-d1b453be603f",
|
||||
"image": {
|
||||
"id": "e3f84189-964e-4dc3-8ac6-832c2b7553d4",
|
||||
"links": [
|
||||
{
|
||||
"href": "http://openstack:8774/4e1900cf21924a098709c23480e157c0/images/e3f84189-964e-4dc3-8ac6-832c2b7553d4",
|
||||
"rel": "bookmark"
|
||||
}
|
||||
]
|
||||
},
|
||||
"key_name": null,
|
||||
"links": [
|
||||
{
|
||||
"href": "http://openstack:8774/v2/4e1900cf21924a098709c23480e157c0/servers/56d51a88-0066-4976-91b6-d1b453be603f",
|
||||
"rel": "self"
|
||||
},
|
||||
{
|
||||
"href": "http://openstack:8774/4e1900cf21924a098709c23480e157c0/servers/56d51a88-0066-4976-91b6-d1b453be603f",
|
||||
"rel": "bookmark"
|
||||
}
|
||||
],
|
||||
"metadata": {},
|
||||
"name": "machine_5",
|
||||
"os-extended-volumes:volumes_attached": [],
|
||||
"progress": 0,
|
||||
"security_groups": [
|
||||
{
|
||||
"name": "default"
|
||||
}
|
||||
],
|
||||
"status": "BUILD",
|
||||
"tenant_id": "4e1900cf21924a098709c23480e157c0",
|
||||
"updated": "2014-03-19T11:54:59Z",
|
||||
"user_id": "08ba127f0d6842279f9db8e8bc6977e9"
|
||||
},
|
||||
{
|
||||
"OS-DCF:diskConfig": "MANUAL",
|
||||
"OS-EXT-AZ:availability_zone": "nova",
|
||||
"OS-EXT-SRV-ATTR:host": "rdohavana.localdomain",
|
||||
"OS-EXT-SRV-ATTR:hypervisor_hostname": "rdohavana.localdomain",
|
||||
"OS-EXT-SRV-ATTR:instance_name": "instance-00000009",
|
||||
"OS-EXT-STS:power_state": 1,
|
||||
"OS-EXT-STS:task_state": null,
|
||||
"OS-EXT-STS:vm_state": "active",
|
||||
"OS-SRV-USG:launched_at": "2014-03-19T11:52:21.000000",
|
||||
"OS-SRV-USG:terminated_at": null,
|
||||
"accessIPv4": "",
|
||||
"accessIPv6": "",
|
||||
"addresses": {
|
||||
"public": [
|
||||
{
|
||||
"OS-EXT-IPS-MAC:mac_addr": "fa:16:3e:df:22:1b",
|
||||
"OS-EXT-IPS:type": "fixed",
|
||||
"addr": "172.24.4.232",
|
||||
"version": 4
|
||||
}
|
||||
]
|
||||
},
|
||||
"config_drive": "",
|
||||
"created": "2014-03-19T11:51:53Z",
|
||||
"flavor": {
|
||||
"id": "6",
|
||||
"links": [
|
||||
{
|
||||
"href": "http://openstack:8774/4e1900cf21924a098709c23480e157c0/flavors/6",
|
||||
"rel": "bookmark"
|
||||
}
|
||||
]
|
||||
},
|
||||
"hostId": "0bc453b1c10348e9dc398fed7a5b06f996964ae1643fe460a85a23d8",
|
||||
"id": "3bc8ab03-52e7-4d2b-ba88-73f9ecadf003",
|
||||
"image": {
|
||||
"id": "e3f84189-964e-4dc3-8ac6-832c2b7553d4",
|
||||
"links": [
|
||||
{
|
||||
"href": "http://openstack:8774/4e1900cf21924a098709c23480e157c0/images/e3f84189-964e-4dc3-8ac6-832c2b7553d4",
|
||||
"rel": "bookmark"
|
||||
}
|
||||
]
|
||||
},
|
||||
"key_name": null,
|
||||
"links": [
|
||||
{
|
||||
"href": "http://openstack:8774/v2/4e1900cf21924a098709c23480e157c0/servers/3bc8ab03-52e7-4d2b-ba88-73f9ecadf003",
|
||||
"rel": "self"
|
||||
},
|
||||
{
|
||||
"href": "http://openstack:8774/4e1900cf21924a098709c23480e157c0/servers/3bc8ab03-52e7-4d2b-ba88-73f9ecadf003",
|
||||
"rel": "bookmark"
|
||||
}
|
||||
],
|
||||
"metadata": {},
|
||||
"name": "machine_4",
|
||||
"os-extended-volumes:volumes_attached": [],
|
||||
"progress": 0,
|
||||
"security_groups": [
|
||||
{
|
||||
"name": "default"
|
||||
}
|
||||
],
|
||||
"status": "ACTIVE",
|
||||
"tenant_id": "4e1900cf21924a098709c23480e157c0",
|
||||
"updated": "2014-03-19T11:52:21Z",
|
||||
"user_id": "08ba127f0d6842279f9db8e8bc6977e9"
|
||||
},
|
||||
{
|
||||
"OS-DCF:diskConfig": "MANUAL",
|
||||
"OS-EXT-AZ:availability_zone": "nova",
|
||||
"OS-EXT-SRV-ATTR:host": null,
|
||||
"OS-EXT-SRV-ATTR:hypervisor_hostname": null,
|
||||
"OS-EXT-SRV-ATTR:instance_name": "instance-00000006",
|
||||
"OS-EXT-STS:power_state": 4,
|
||||
"OS-EXT-STS:task_state": null,
|
||||
"OS-EXT-STS:vm_state": "shelved_offloaded",
|
||||
"OS-SRV-USG:launched_at": "2014-03-19T11:33:52.000000",
|
||||
"OS-SRV-USG:terminated_at": null,
|
||||
"accessIPv4": "",
|
||||
"accessIPv6": "",
|
||||
"addresses": {
|
||||
"public": [
|
||||
{
|
||||
"OS-EXT-IPS-MAC:mac_addr": "fa:16:3e:cb:56:d6",
|
||||
"OS-EXT-IPS:type": "fixed",
|
||||
"addr": "172.24.4.229",
|
||||
"version": 4
|
||||
}
|
||||
]
|
||||
},
|
||||
"config_drive": "",
|
||||
"created": "2014-03-19T11:33:27Z",
|
||||
"flavor": {
|
||||
"id": "6",
|
||||
"links": [
|
||||
{
|
||||
"href": "http://openstack:8774/4e1900cf21924a098709c23480e157c0/flavors/6",
|
||||
"rel": "bookmark"
|
||||
}
|
||||
]
|
||||
},
|
||||
"hostId": "",
|
||||
"id": "cad76945-8851-489a-99e1-f1049e02c769",
|
||||
"image": {
|
||||
"id": "e3f84189-964e-4dc3-8ac6-832c2b7553d4",
|
||||
"links": [
|
||||
{
|
||||
"href": "http://openstack:8774/4e1900cf21924a098709c23480e157c0/images/e3f84189-964e-4dc3-8ac6-832c2b7553d4",
|
||||
"rel": "bookmark"
|
||||
}
|
||||
]
|
||||
},
|
||||
"key_name": null,
|
||||
"links": [
|
||||
{
|
||||
"href": "http://openstack:8774/v2/4e1900cf21924a098709c23480e157c0/servers/cad76945-8851-489a-99e1-f1049e02c769",
|
||||
"rel": "self"
|
||||
},
|
||||
{
|
||||
"href": "http://openstack:8774/4e1900cf21924a098709c23480e157c0/servers/cad76945-8851-489a-99e1-f1049e02c769",
|
||||
"rel": "bookmark"
|
||||
}
|
||||
],
|
||||
"metadata": {},
|
||||
"name": "machine_3",
|
||||
"os-extended-volumes:volumes_attached": [],
|
||||
"security_groups": [
|
||||
{
|
||||
"name": "default"
|
||||
}
|
||||
],
|
||||
"status": "SHELVED_OFFLOADED",
|
||||
"tenant_id": "4e1900cf21924a098709c23480e157c0",
|
||||
"updated": "2014-03-19T11:38:05Z",
|
||||
"user_id": "08ba127f0d6842279f9db8e8bc6977e9"
|
||||
},
|
||||
{
|
||||
"OS-DCF:diskConfig": "MANUAL",
|
||||
"OS-EXT-AZ:availability_zone": "nova",
|
||||
"OS-EXT-SRV-ATTR:host": "rdohavana.localdomain",
|
||||
"OS-EXT-SRV-ATTR:hypervisor_hostname": "rdohavana.localdomain",
|
||||
"OS-EXT-SRV-ATTR:instance_name": "instance-00000005",
|
||||
"OS-EXT-STS:power_state": 1,
|
||||
"OS-EXT-STS:task_state": null,
|
||||
"OS-EXT-STS:vm_state": "rescued",
|
||||
"OS-SRV-USG:launched_at": "2014-03-19T11:36:05.000000",
|
||||
"OS-SRV-USG:terminated_at": null,
|
||||
"accessIPv4": "",
|
||||
"accessIPv6": "",
|
||||
"addresses": {
|
||||
"public": [
|
||||
{
|
||||
"OS-EXT-IPS-MAC:mac_addr": "fa:16:3e:18:fe:c8",
|
||||
"OS-EXT-IPS:type": "fixed",
|
||||
"addr": "172.24.4.227",
|
||||
"version": 4
|
||||
}
|
||||
]
|
||||
},
|
||||
"config_drive": "",
|
||||
"created": "2014-03-19T11:31:19Z",
|
||||
"flavor": {
|
||||
"id": "6",
|
||||
"links": [
|
||||
{
|
||||
"href": "http://openstack:8774/4e1900cf21924a098709c23480e157c0/flavors/6",
|
||||
"rel": "bookmark"
|
||||
}
|
||||
]
|
||||
},
|
||||
"hostId": "0bc453b1c10348e9dc398fed7a5b06f996964ae1643fe460a85a23d8",
|
||||
"id": "89142a4f-f58c-4205-8571-65f4a2be2bc9",
|
||||
"image": {
|
||||
"id": "e3f84189-964e-4dc3-8ac6-832c2b7553d4",
|
||||
"links": [
|
||||
{
|
||||
"href": "http://openstack:8774/4e1900cf21924a098709c23480e157c0/images/e3f84189-964e-4dc3-8ac6-832c2b7553d4",
|
||||
"rel": "bookmark"
|
||||
}
|
||||
]
|
||||
},
|
||||
"key_name": null,
|
||||
"links": [
|
||||
{
|
||||
"href": "http://openstack:8774/v2/4e1900cf21924a098709c23480e157c0/servers/89142a4f-f58c-4205-8571-65f4a2be2bc9",
|
||||
"rel": "self"
|
||||
},
|
||||
{
|
||||
"href": "http://openstack:8774/4e1900cf21924a098709c23480e157c0/servers/89142a4f-f58c-4205-8571-65f4a2be2bc9",
|
||||
"rel": "bookmark"
|
||||
}
|
||||
],
|
||||
"metadata": {},
|
||||
"name": "machine_2",
|
||||
"os-extended-volumes:volumes_attached": [],
|
||||
"security_groups": [
|
||||
{
|
||||
"name": "default"
|
||||
}
|
||||
],
|
||||
"status": "RESCUE",
|
||||
"tenant_id": "4e1900cf21924a098709c23480e157c0",
|
||||
"updated": "2014-03-19T11:36:05Z",
|
||||
"user_id": "08ba127f0d6842279f9db8e8bc6977e9"
|
||||
},
|
||||
{
|
||||
"OS-DCF:diskConfig": "MANUAL",
|
||||
"OS-EXT-AZ:availability_zone": "nova",
|
||||
"OS-EXT-SRV-ATTR:host": "rdohavana.localdomain",
|
||||
"OS-EXT-SRV-ATTR:hypervisor_hostname": "rdohavana.localdomain",
|
||||
"OS-EXT-SRV-ATTR:instance_name": "instance-00000004",
|
||||
"OS-EXT-STS:power_state": 4,
|
||||
"OS-EXT-STS:task_state": null,
|
||||
"OS-EXT-STS:vm_state": "stopped",
|
||||
"OS-SRV-USG:launched_at": "2014-03-19T11:30:33.000000",
|
||||
"OS-SRV-USG:terminated_at": null,
|
||||
"accessIPv4": "",
|
||||
"accessIPv6": "",
|
||||
"addresses": {
|
||||
"public": [
|
||||
{
|
||||
"OS-EXT-IPS-MAC:mac_addr": "fa:16:3e:64:1a:d5",
|
||||
"OS-EXT-IPS:type": "fixed",
|
||||
"addr": "172.24.4.228",
|
||||
"version": 4
|
||||
}
|
||||
]
|
||||
},
|
||||
"config_drive": "",
|
||||
"created": "2014-03-19T11:28:56Z",
|
||||
"flavor": {
|
||||
"id": "6",
|
||||
"links": [
|
||||
{
|
||||
"href": "http://openstack:8774/4e1900cf21924a098709c23480e157c0/flavors/6",
|
||||
"rel": "bookmark"
|
||||
}
|
||||
]
|
||||
},
|
||||
"hostId": "0bc453b1c10348e9dc398fed7a5b06f996964ae1643fe460a85a23d8",
|
||||
"id": "fac50d26-bb38-455f-ad92-eba790187c00",
|
||||
"image": {
|
||||
"id": "e3f84189-964e-4dc3-8ac6-832c2b7553d4",
|
||||
"links": [
|
||||
{
|
||||
"href": "http://openstack:8774/4e1900cf21924a098709c23480e157c0/images/e3f84189-964e-4dc3-8ac6-832c2b7553d4",
|
||||
"rel": "bookmark"
|
||||
}
|
||||
]
|
||||
},
|
||||
"key_name": null,
|
||||
"links": [
|
||||
{
|
||||
"href": "http://openstack:8774/v2/4e1900cf21924a098709c23480e157c0/servers/fac50d26-bb38-455f-ad92-eba790187c00",
|
||||
"rel": "self"
|
||||
},
|
||||
{
|
||||
"href": "http://openstack:8774/4e1900cf21924a098709c23480e157c0/servers/fac50d26-bb38-455f-ad92-eba790187c00",
|
||||
"rel": "bookmark"
|
||||
}
|
||||
],
|
||||
"metadata": {},
|
||||
"name": "machine_1",
|
||||
"os-extended-volumes:volumes_attached": [],
|
||||
"security_groups": [
|
||||
{
|
||||
"name": "default"
|
||||
}
|
||||
],
|
||||
"status": "SHUTOFF",
|
||||
"tenant_id": "4e1900cf21924a098709c23480e157c0",
|
||||
"updated": "2014-03-19T11:35:26Z",
|
||||
"user_id": "08ba127f0d6842279f9db8e8bc6977e9"
|
||||
}
|
||||
]
|
||||
}
|
Loading…
Reference in New Issue