summaryrefslogtreecommitdiff
path: root/nova/tests/unit/integrated/api_samples/all_extensions
diff options
context:
space:
mode:
Diffstat (limited to 'nova/tests/unit/integrated/api_samples/all_extensions')
-rw-r--r--nova/tests/unit/integrated/api_samples/all_extensions/extensions-get-resp.json.tpl716
-rw-r--r--nova/tests/unit/integrated/api_samples/all_extensions/extensions-get-resp.xml.tpl269
-rw-r--r--nova/tests/unit/integrated/api_samples/all_extensions/flavor-get-resp.json.tpl24
-rw-r--r--nova/tests/unit/integrated/api_samples/all_extensions/flavor-get-resp.xml.tpl5
-rw-r--r--nova/tests/unit/integrated/api_samples/all_extensions/flavors-list-resp.json.tpl74
-rw-r--r--nova/tests/unit/integrated/api_samples/all_extensions/flavors-list-resp.xml.tpl23
-rw-r--r--nova/tests/unit/integrated/api_samples/all_extensions/server-action-changepassword.json.tpl5
-rw-r--r--nova/tests/unit/integrated/api_samples/all_extensions/server-action-changepassword.xml.tpl4
-rw-r--r--nova/tests/unit/integrated/api_samples/all_extensions/server-action-confirmresize.json.tpl3
-rw-r--r--nova/tests/unit/integrated/api_samples/all_extensions/server-action-confirmresize.xml.tpl3
-rw-r--r--nova/tests/unit/integrated/api_samples/all_extensions/server-action-createimage.json.tpl9
-rw-r--r--nova/tests/unit/integrated/api_samples/all_extensions/server-action-createimage.xml.tpl8
-rw-r--r--nova/tests/unit/integrated/api_samples/all_extensions/server-action-reboot.json.tpl5
-rw-r--r--nova/tests/unit/integrated/api_samples/all_extensions/server-action-reboot.xml.tpl4
-rw-r--r--nova/tests/unit/integrated/api_samples/all_extensions/server-action-rebuild-resp.json.tpl56
-rw-r--r--nova/tests/unit/integrated/api_samples/all_extensions/server-action-rebuild-resp.xml.tpl39
-rw-r--r--nova/tests/unit/integrated/api_samples/all_extensions/server-action-rebuild.json.tpl18
-rw-r--r--nova/tests/unit/integrated/api_samples/all_extensions/server-action-rebuild.xml.tpl25
-rw-r--r--nova/tests/unit/integrated/api_samples/all_extensions/server-action-resize.json.tpl5
-rw-r--r--nova/tests/unit/integrated/api_samples/all_extensions/server-action-resize.xml.tpl4
-rw-r--r--nova/tests/unit/integrated/api_samples/all_extensions/server-action-revertresize.json.tpl3
-rw-r--r--nova/tests/unit/integrated/api_samples/all_extensions/server-action-revertresize.xml.tpl3
-rw-r--r--nova/tests/unit/integrated/api_samples/all_extensions/server-get-resp.json.tpl74
-rw-r--r--nova/tests/unit/integrated/api_samples/all_extensions/server-get-resp.xml.tpl23
-rw-r--r--nova/tests/unit/integrated/api_samples/all_extensions/server-post-req.json.tpl16
-rw-r--r--nova/tests/unit/integrated/api_samples/all_extensions/server-post-req.xml.tpl19
-rw-r--r--nova/tests/unit/integrated/api_samples/all_extensions/server-post-resp.json.tpl22
-rw-r--r--nova/tests/unit/integrated/api_samples/all_extensions/server-post-resp.xml.tpl9
-rw-r--r--nova/tests/unit/integrated/api_samples/all_extensions/servers-details-resp.json.tpl76
-rw-r--r--nova/tests/unit/integrated/api_samples/all_extensions/servers-details-resp.xml.tpl25
-rw-r--r--nova/tests/unit/integrated/api_samples/all_extensions/servers-list-resp.json.tpl18
-rw-r--r--nova/tests/unit/integrated/api_samples/all_extensions/servers-list-resp.xml.tpl7
32 files changed, 1594 insertions, 0 deletions
diff --git a/nova/tests/unit/integrated/api_samples/all_extensions/extensions-get-resp.json.tpl b/nova/tests/unit/integrated/api_samples/all_extensions/extensions-get-resp.json.tpl
new file mode 100644
index 0000000000..668e282e2b
--- /dev/null
+++ b/nova/tests/unit/integrated/api_samples/all_extensions/extensions-get-resp.json.tpl
@@ -0,0 +1,716 @@
+{
+ "extensions": [
+ {
+ "alias": "NMN",
+ "description": "%(text)s",
+ "links": [],
+ "name": "Multinic",
+ "namespace": "http://docs.openstack.org/compute/ext/multinic/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "OS-DCF",
+ "description": "%(text)s",
+ "links": [],
+ "name": "DiskConfig",
+ "namespace": "http://docs.openstack.org/compute/ext/disk_config/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "OS-EXT-AZ",
+ "description": "%(text)s",
+ "links": [],
+ "name": "ExtendedAvailabilityZone",
+ "namespace": "http://docs.openstack.org/compute/ext/extended_availability_zone/api/v2",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "OS-EXT-IPS",
+ "description": "%(text)s",
+ "links": [],
+ "name": "ExtendedIps",
+ "namespace": "http://docs.openstack.org/compute/ext/extended_ips/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "OS-EXT-IPS-MAC",
+ "description": "%(text)s",
+ "links": [],
+ "name": "ExtendedIpsMac",
+ "namespace": "http://docs.openstack.org/compute/ext/extended_ips_mac/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "OS-EXT-IMG-SIZE",
+ "description": "%(text)s",
+ "links": [],
+ "name": "ImageSize",
+ "namespace": "http://docs.openstack.org/compute/ext/image_size/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "OS-EXT-SRV-ATTR",
+ "description": "%(text)s",
+ "links": [],
+ "name": "ExtendedServerAttributes",
+ "namespace": "http://docs.openstack.org/compute/ext/extended_status/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "OS-EXT-STS",
+ "description": "%(text)s",
+ "links": [],
+ "name": "ExtendedStatus",
+ "namespace": "http://docs.openstack.org/compute/ext/extended_status/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-extended-volumes",
+ "description": "%(text)s",
+ "links": [],
+ "name": "ExtendedVolumes",
+ "namespace": "http://docs.openstack.org/compute/ext/extended_volumes/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "OS-EXT-VIF-NET",
+ "description": "%(text)s",
+ "links": [],
+ "name": "ExtendedVIFNet",
+ "namespace": "http://docs.openstack.org/compute/ext/extended-virtual-interfaces-net/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "OS-FLV-DISABLED",
+ "description": "%(text)s",
+ "links": [],
+ "name": "FlavorDisabled",
+ "namespace": "http://docs.openstack.org/compute/ext/flavor_disabled/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "OS-FLV-EXT-DATA",
+ "description": "%(text)s",
+ "links": [],
+ "name": "FlavorExtraData",
+ "namespace": "http://docs.openstack.org/compute/ext/flavor_extra_data/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "OS-SRV-USG",
+ "description": "%(text)s",
+ "links": [],
+ "name": "ServerUsage",
+ "namespace": "http://docs.openstack.org/compute/ext/server_usage/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-console-auth-tokens",
+ "description": "%(text)s",
+ "links": [],
+ "name": "ConsoleAuthTokens",
+ "namespace": "http://docs.openstack.org/compute/ext/consoles-auth-tokens/api/v2",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "OS-SCH-HNT",
+ "description": "%(text)s",
+ "links": [],
+ "name": "SchedulerHints",
+ "namespace": "http://docs.openstack.org/compute/ext/scheduler-hints/api/v2",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-admin-actions",
+ "description": "%(text)s",
+ "links": [],
+ "name": "AdminActions",
+ "namespace": "http://docs.openstack.org/compute/ext/admin-actions/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-aggregates",
+ "description": "%(text)s",
+ "links": [],
+ "name": "Aggregates",
+ "namespace": "http://docs.openstack.org/compute/ext/aggregates/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-agents",
+ "description": "%(text)s",
+ "links": [],
+ "name": "Agents",
+ "namespace": "http://docs.openstack.org/compute/ext/agents/api/v2",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-assisted-volume-snapshots",
+ "description": "%(text)s",
+ "links": [],
+ "name": "AssistedVolumeSnapshots",
+ "namespace": "http://docs.openstack.org/compute/ext/assisted-volume-snapshots/api/v2",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-attach-interfaces",
+ "description": "Attach interface support.",
+ "links": [],
+ "name": "AttachInterfaces",
+ "namespace": "http://docs.openstack.org/compute/ext/interfaces/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-availability-zone",
+ "description": "%(text)s",
+ "links": [],
+ "name": "AvailabilityZone",
+ "namespace": "http://docs.openstack.org/compute/ext/availabilityzone/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-baremetal-nodes",
+ "description": "%(text)s",
+ "links": [],
+ "name": "BareMetalNodes",
+ "namespace": "http://docs.openstack.org/compute/ext/baremetal_nodes/api/v2",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-block-device-mapping-v2-boot",
+ "description": "%(text)s",
+ "links": [],
+ "name": "BlockDeviceMappingV2Boot",
+ "namespace": "http://docs.openstack.org/compute/ext/block_device_mapping_v2_boot/api/v2",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-cells",
+ "description": "%(text)s",
+ "links": [],
+ "name": "Cells",
+ "namespace": "http://docs.openstack.org/compute/ext/cells/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-cell-capacities",
+ "description": "%(text)s",
+ "links": [],
+ "name": "CellCapacities",
+ "namespace": "http://docs.openstack.org/compute/ext/cell_capacities/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-certificates",
+ "description": "%(text)s",
+ "links": [],
+ "name": "Certificates",
+ "namespace": "http://docs.openstack.org/compute/ext/certificates/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-cloudpipe",
+ "description": "%(text)s",
+ "links": [],
+ "name": "Cloudpipe",
+ "namespace": "http://docs.openstack.org/compute/ext/cloudpipe/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-cloudpipe-update",
+ "description": "%(text)s",
+ "links": [],
+ "name": "CloudpipeUpdate",
+ "namespace": "http://docs.openstack.org/compute/ext/cloudpipe-update/api/v2",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-config-drive",
+ "description": "%(text)s",
+ "links": [],
+ "name": "ConfigDrive",
+ "namespace": "http://docs.openstack.org/compute/ext/config_drive/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-console-output",
+ "description": "%(text)s",
+ "links": [],
+ "name": "ConsoleOutput",
+ "namespace": "http://docs.openstack.org/compute/ext/os-console-output/api/v2",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-consoles",
+ "description": "%(text)s",
+ "links": [],
+ "name": "Consoles",
+ "namespace": "http://docs.openstack.org/compute/ext/os-consoles/api/v2",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-create-server-ext",
+ "description": "%(text)s",
+ "links": [],
+ "name": "Createserverext",
+ "namespace": "http://docs.openstack.org/compute/ext/createserverext/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-deferred-delete",
+ "description": "%(text)s",
+ "links": [],
+ "name": "DeferredDelete",
+ "namespace": "http://docs.openstack.org/compute/ext/deferred-delete/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-evacuate",
+ "description": "%(text)s",
+ "links": [],
+ "name": "Evacuate",
+ "namespace": "http://docs.openstack.org/compute/ext/evacuate/api/v2",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-extended-floating-ips",
+ "description": "%(text)s",
+ "links": [],
+ "name": "ExtendedFloatingIps",
+ "namespace": "http://docs.openstack.org/compute/ext/extended_floating_ips/api/v2",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-fixed-ips",
+ "description": "Fixed IPs support.",
+ "links": [],
+ "name": "FixedIPs",
+ "namespace": "http://docs.openstack.org/compute/ext/fixed_ips/api/v2",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-flavor-access",
+ "description": "%(text)s",
+ "links": [],
+ "name": "FlavorAccess",
+ "namespace": "http://docs.openstack.org/compute/ext/flavor_access/api/v2",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-flavor-extra-specs",
+ "description": "%(text)s",
+ "links": [],
+ "name": "FlavorExtraSpecs",
+ "namespace": "http://docs.openstack.org/compute/ext/flavor_extra_specs/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-flavor-manage",
+ "description": "%(text)s",
+ "links": [],
+ "name": "FlavorManage",
+ "namespace": "http://docs.openstack.org/compute/ext/flavor_manage/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-flavor-rxtx",
+ "description": "%(text)s",
+ "links": [],
+ "name": "FlavorRxtx",
+ "namespace": "http://docs.openstack.org/compute/ext/flavor_rxtx/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-flavor-swap",
+ "description": "%(text)s",
+ "links": [],
+ "name": "FlavorSwap",
+ "namespace": "http://docs.openstack.org/compute/ext/flavor_swap/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-floating-ip-dns",
+ "description": "%(text)s",
+ "links": [],
+ "name": "FloatingIpDns",
+ "namespace": "http://docs.openstack.org/ext/floating_ip_dns/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-floating-ip-pools",
+ "description": "%(text)s",
+ "links": [],
+ "name": "FloatingIpPools",
+ "namespace": "http://docs.openstack.org/compute/ext/floating_ip_pools/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-floating-ips",
+ "description": "%(text)s",
+ "links": [],
+ "name": "FloatingIps",
+ "namespace": "http://docs.openstack.org/compute/ext/floating_ips/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-floating-ips-bulk",
+ "description": "%(text)s",
+ "links": [],
+ "name": "FloatingIpsBulk",
+ "namespace": "http://docs.openstack.org/compute/ext/floating_ips_bulk/api/v2",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-hide-server-addresses",
+ "description": "Support hiding server addresses in certain states.",
+ "links": [],
+ "name": "HideServerAddresses",
+ "namespace": "http://docs.openstack.org/compute/ext/hide_server_addresses/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-hosts",
+ "description": "%(text)s",
+ "links": [],
+ "name": "Hosts",
+ "namespace": "http://docs.openstack.org/compute/ext/hosts/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-services",
+ "description": "%(text)s",
+ "links": [],
+ "name": "Services",
+ "namespace": "http://docs.openstack.org/compute/ext/services/api/v2",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-extended-services",
+ "description": "%(text)s",
+ "links": [],
+ "name": "ExtendedServices",
+ "namespace": "http://docs.openstack.org/compute/ext/extended_services/api/v2",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-fping",
+ "description": "%(text)s",
+ "links": [],
+ "name": "Fping",
+ "namespace": "http://docs.openstack.org/compute/ext/fping/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-hypervisors",
+ "description": "%(text)s",
+ "links": [],
+ "name": "Hypervisors",
+ "namespace": "http://docs.openstack.org/compute/ext/hypervisors/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-extended-hypervisors",
+ "description": "%(text)s",
+ "links": [],
+ "name": "ExtendedHypervisors",
+ "namespace": "http://docs.openstack.org/compute/ext/extended_hypervisors/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-hypervisor-status",
+ "description": "%(text)s",
+ "links": [],
+ "name": "HypervisorStatus",
+ "namespace": "http://docs.openstack.org/compute/ext/hypervisor_status/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-server-external-events",
+ "description": "%(text)s",
+ "links": [],
+ "name": "ServerExternalEvents",
+ "namespace": "http://docs.openstack.org/compute/ext/server-external-events/api/v2",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-instance_usage_audit_log",
+ "description": "%(text)s",
+ "links": [],
+ "name": "OSInstanceUsageAuditLog",
+ "namespace": "http://docs.openstack.org/ext/services/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-keypairs",
+ "description": "%(text)s",
+ "links": [],
+ "name": "Keypairs",
+ "namespace": "http://docs.openstack.org/compute/ext/keypairs/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-multiple-create",
+ "description": "%(text)s",
+ "links": [],
+ "name": "MultipleCreate",
+ "namespace": "http://docs.openstack.org/compute/ext/multiplecreate/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-networks",
+ "description": "%(text)s",
+ "links": [],
+ "name": "Networks",
+ "namespace": "http://docs.openstack.org/compute/ext/os-networks/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-tenant-networks",
+ "description": "%(text)s",
+ "links": [],
+ "name": "OSTenantNetworks",
+ "namespace": "http://docs.openstack.org/compute/ext/os-tenant-networks/api/v2",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-networks-associate",
+ "description": "%(text)s",
+ "links": [],
+ "name": "NetworkAssociationSupport",
+ "namespace": "http://docs.openstack.org/compute/ext/networks_associate/api/v2",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-quota-class-sets",
+ "description": "%(text)s",
+ "links": [],
+ "name": "QuotaClasses",
+ "namespace": "http://docs.openstack.org/compute/ext/quota-classes-sets/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-extended-networks",
+ "description": "%(text)s",
+ "links": [],
+ "name": "ExtendedNetworks",
+ "namespace": "http://docs.openstack.org/compute/ext/extended_networks/api/v2",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-extended-quotas",
+ "description": "%(text)s",
+ "links": [],
+ "name": "ExtendedQuotas",
+ "namespace": "http://docs.openstack.org/compute/ext/extended_quotas/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-quota-sets",
+ "description": "%(text)s",
+ "links": [],
+ "name": "Quotas",
+ "namespace": "http://docs.openstack.org/compute/ext/quotas-sets/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-user-quotas",
+ "description": "%(text)s",
+ "links": [],
+ "name": "UserQuotas",
+ "namespace": "http://docs.openstack.org/compute/ext/user_quotas/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-rescue",
+ "description": "%(text)s",
+ "links": [],
+ "name": "Rescue",
+ "namespace": "http://docs.openstack.org/compute/ext/rescue/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-extended-rescue-with-image",
+ "description": "%(text)s",
+ "links": [],
+ "name": "ExtendedRescueWithImage",
+ "namespace": "http://docs.openstack.org/compute/ext/extended_rescue_with_image/api/v2",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-security-group-default-rules",
+ "description": "%(text)s",
+ "links": [],
+ "name": "SecurityGroupDefaultRules",
+ "namespace": "http://docs.openstack.org/compute/ext/securitygroupdefaultrules/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-security-groups",
+ "description": "%(text)s",
+ "links": [],
+ "name": "SecurityGroups",
+ "namespace": "http://docs.openstack.org/compute/ext/securitygroups/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-server-diagnostics",
+ "description": "%(text)s",
+ "links": [],
+ "name": "ServerDiagnostics",
+ "namespace": "http://docs.openstack.org/compute/ext/server-diagnostics/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-server-list-multi-status",
+ "description": "%(text)s",
+ "links": [],
+ "name": "ServerListMultiStatus",
+ "namespace": "http://docs.openstack.org/compute/ext/os-server-list-multi-status/api/v2",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-server-password",
+ "description": "%(text)s",
+ "links": [],
+ "name": "ServerPassword",
+ "namespace": "http://docs.openstack.org/compute/ext/server-password/api/v2",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-server-start-stop",
+ "description": "%(text)s",
+ "links": [],
+ "name": "ServerStartStop",
+ "namespace": "http://docs.openstack.org/compute/ext/servers/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-shelve",
+ "description": "%(text)s",
+ "links": [],
+ "name": "Shelve",
+ "namespace": "http://docs.openstack.org/compute/ext/shelve/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-simple-tenant-usage",
+ "description": "%(text)s",
+ "links": [],
+ "name": "SimpleTenantUsage",
+ "namespace": "http://docs.openstack.org/compute/ext/os-simple-tenant-usage/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-used-limits",
+ "description": "%(text)s",
+ "links": [],
+ "name": "UsedLimits",
+ "namespace": "http://docs.openstack.org/compute/ext/used_limits/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-used-limits-for-admin",
+ "description": "%(text)s",
+ "links": [],
+ "name": "UsedLimitsForAdmin",
+ "namespace": "http://docs.openstack.org/compute/ext/used_limits_for_admin/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-user-data",
+ "description": "%(text)s",
+ "links": [],
+ "name": "UserData",
+ "namespace": "http://docs.openstack.org/compute/ext/userdata/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-virtual-interfaces",
+ "description": "%(text)s",
+ "links": [],
+ "name": "VirtualInterfaces",
+ "namespace": "http://docs.openstack.org/compute/ext/virtual_interfaces/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-volume-attachment-update",
+ "description": "%(text)s",
+ "links": [],
+ "name": "VolumeAttachmentUpdate",
+ "namespace": "http://docs.openstack.org/compute/ext/os-volume-attachment-update/api/v2",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-volumes",
+ "description": "%(text)s",
+ "links": [],
+ "name": "Volumes",
+ "namespace": "http://docs.openstack.org/compute/ext/volumes/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-instance-actions",
+ "description": "%(text)s",
+ "links": [],
+ "name": "InstanceActions",
+ "namespace": "http://docs.openstack.org/compute/ext/instance-actions/api/v1.1",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-migrations",
+ "description": "%(text)s",
+ "links": [],
+ "name": "Migrations",
+ "namespace": "http://docs.openstack.org/compute/ext/migrations/api/v2.0",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-baremetal-ext-status",
+ "description": "%(text)s",
+ "links": [],
+ "name": "BareMetalExtStatus",
+ "namespace": "http://docs.openstack.org/compute/ext/baremetal_ext_status/api/v2",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-preserve-ephemeral-rebuild",
+ "description": "%(text)s",
+ "links": [],
+ "name": "PreserveEphemeralOnRebuild",
+ "namespace": "http://docs.openstack.org/compute/ext/preserve_ephemeral_rebuild/api/v2",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-extended-services-delete",
+ "description": "%(text)s",
+ "links": [],
+ "name": "ExtendedServicesDelete",
+ "namespace": "http://docs.openstack.org/compute/ext/extended_services_delete/api/v2",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-server-groups",
+ "description": "%(text)s",
+ "links": [],
+ "name": "ServerGroups",
+ "namespace": "http://docs.openstack.org/compute/ext/servergroups/api/v2",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-extended-evacuate-find-host",
+ "description": "%(text)s",
+ "links": [],
+ "name": "ExtendedEvacuateFindHost",
+ "namespace": "http://docs.openstack.org/compute/ext/extended_evacuate_find_host/api/v2",
+ "updated": "%(isotime)s"
+ },
+ {
+ "alias": "os-server-group-quotas",
+ "description": "%(text)s",
+ "links": [],
+ "name": "ServerGroupQuotas",
+ "namespace": "http://docs.openstack.org/compute/ext/server-group-quotas/api/v2",
+ "updated": "%(isotime)s"
+ }
+ ]
+}
diff --git a/nova/tests/unit/integrated/api_samples/all_extensions/extensions-get-resp.xml.tpl b/nova/tests/unit/integrated/api_samples/all_extensions/extensions-get-resp.xml.tpl
new file mode 100644
index 0000000000..eaa679f35f
--- /dev/null
+++ b/nova/tests/unit/integrated/api_samples/all_extensions/extensions-get-resp.xml.tpl
@@ -0,0 +1,269 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<extensions xmlns:atom="http://www.w3.org/2005/Atom" xmlns="http://docs.openstack.org/common/api/v1.0">
+ <extension alias="NMN" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/multinic/api/v1.1" name="Multinic">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="OS-DCF" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/disk_config/api/v1.1" name="DiskConfig">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="OS-EXT-AZ" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/extended_availability_zone/api/v2" name="ExtendedAvailabilityZone">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="OS-EXT-IPS" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/extended_ips/api/v1.1" name="ExtendedIps">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="OS-EXT-IPS-MAC" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/extended_ips_mac/api/v1.1" name="ExtendedIpsMac">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="OS-EXT-IMG-SIZE" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/image_size/api/v1.1" name="ImageSize">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="OS-EXT-SRV-ATTR" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/extended_status/api/v1.1" name="ExtendedServerAttributes">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="OS-EXT-STS" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/extended_status/api/v1.1" name="ExtendedStatus">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-extended-volumes" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/extended_volumes/api/v1.1" name="ExtendedVolumes">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="OS-EXT-VIF-NET" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/extended-virtual-interfaces-net/api/v1.1" name="ExtendedVIFNet">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="OS-FLV-DISABLED" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/flavor_disabled/api/v1.1" name="FlavorDisabled">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="OS-FLV-EXT-DATA" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/flavor_extra_data/api/v1.1" name="FlavorExtraData">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="OS-SRV-USG" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/server_usage/api/v1.1" name="ServerUsage">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="OS-SCH-HNT" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/scheduler-hints/api/v2" name="SchedulerHints">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-admin-actions" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/admin-actions/api/v1.1" name="AdminActions">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-aggregates" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/aggregates/api/v1.1" name="Aggregates">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-attach-interfaces" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/interfaces/api/v1.1" name="AttachInterfaces">
+ <description>Attach interface support.</description>
+ </extension>
+ <extension alias="os-availability-zone" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/availabilityzone/api/v1.1" name="AvailabilityZone">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-agents" name="Agents" namespace="http://docs.openstack.org/compute/ext/agents/api/v2" updated="%(isotime)s">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-baremetal-nodes" name="BareMetalNodes" namespace="http://docs.openstack.org/compute/ext/baremetal_nodes/api/v2" updated="%(isotime)s">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-block-device-mapping-v2-boot" name="BlockDeviceMappingV2Boot" namespace="http://docs.openstack.org/compute/ext/block_device_mapping_v2_boot/api/v2" updated="%(isotime)s">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-cells" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/cells/api/v1.1" name="Cells">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-cell-capacities" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/cell_capacities/api/v1.1" name="CellCapacities">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-certificates" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/certificates/api/v1.1" name="Certificates">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-cloudpipe" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/cloudpipe/api/v1.1" name="Cloudpipe">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-cloudpipe-update" updated="%(isotime)s" name="CloudpipeUpdate" namespace="http://docs.openstack.org/compute/ext/cloudpipe-update/api/v2">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-config-drive" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/config_drive/api/v1.1" name="ConfigDrive">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-console-output" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/os-console-output/api/v2" name="ConsoleOutput">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-consoles" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/os-consoles/api/v2" name="Consoles">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-create-server-ext" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/createserverext/api/v1.1" name="Createserverext">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-deferred-delete" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/deferred-delete/api/v1.1" name="DeferredDelete">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-evacuate" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/evacuate/api/v2" name="Evacuate">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-extended-floating-ips" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/extended_floating_ips/api/v2" name="ExtendedFloatingIps">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-fixed-ips" name="FixedIPs" namespace="http://docs.openstack.org/compute/ext/fixed_ips/api/v2" updated="%(isotime)s">
+ <description>Fixed IPs support.</description>
+ </extension>
+ <extension alias="os-flavor-access" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/flavor_access/api/v2" name="FlavorAccess">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-flavor-extra-specs" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/flavor_extra_specs/api/v1.1" name="FlavorExtraSpecs">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-flavor-manage" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/flavor_manage/api/v1.1" name="FlavorManage">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-flavor-rxtx" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/flavor_rxtx/api/v1.1" name="FlavorRxtx">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-flavor-swap" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/flavor_swap/api/v1.1" name="FlavorSwap">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-floating-ip-dns" updated="%(isotime)s" namespace="http://docs.openstack.org/ext/floating_ip_dns/api/v1.1" name="FloatingIpDns">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-floating-ip-pools" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/floating_ip_pools/api/v1.1" name="FloatingIpPools">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-floating-ips" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/floating_ips/api/v1.1" name="FloatingIps">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-floating-ips-bulk" name="FloatingIpsBulk" namespace="http://docs.openstack.org/compute/ext/floating_ips_bulk/api/v2" updated="%(isotime)s">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-hide-server-addresses" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/hide_server_addresses/api/v1.1" name="HideServerAddresses">
+ <description>Support hiding server addresses in certain states.</description>
+ </extension>
+ <extension alias="os-hosts" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/hosts/api/v1.1" name="Hosts">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-services" name="Services" namespace="http://docs.openstack.org/compute/ext/services/api/v2" updated="%(isotime)s">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-extended-services" name="ExtendedServices" namespace="http://docs.openstack.org/compute/ext/extended_services/api/v2" updated="%(isotime)s">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-fping" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/fping/api/v1.1" name="Fping">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-hypervisors" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/hypervisors/api/v1.1" name="Hypervisors">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-extended-hypervisors" name="ExtendedHypervisors" namespace="http://docs.openstack.org/compute/ext/extended_hypervisors/api/v1.1" updated="%(isotime)s">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-hypervisor-status" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/hypervisor_status/api/v1.1" name="HypervisorStatus">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-instance_usage_audit_log" updated="%(isotime)s" namespace="http://docs.openstack.org/ext/services/api/v1.1" name="OSInstanceUsageAuditLog">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-keypairs" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/keypairs/api/v1.1" name="Keypairs">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-multiple-create" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/multiplecreate/api/v1.1" name="MultipleCreate">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-networks" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/os-networks/api/v1.1" name="Networks">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-tenant-networks" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/os-tenant-networks/api/v2" name="OSTenantNetworks">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-networks-associate" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/networks_associate/api/v2" name="NetworkAssociationSupport">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-quota-class-sets" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/quota-classes-sets/api/v1.1" name="QuotaClasses">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-extended-networks" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/extended_networks/api/v2" name="ExtendedNetworks">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-extended-quotas" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/extended_quotas/api/v1.1" name="ExtendedQuotas">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-quota-sets" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/quotas-sets/api/v1.1" name="Quotas">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-user-quotas" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/user_quotas/api/v1.1" name="UserQuotas">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-rescue" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/rescue/api/v1.1" name="Rescue">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-extended-rescue-with-image" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/extended_rescue_with_image/api/v2" name="ExtendedRescueWithImage">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-security-group-default-rules" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/securitygroupdefaultrules/api/v1.1" name="SecurityGroupDefaultRules">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-security-groups" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/securitygroups/api/v1.1" name="SecurityGroups">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-server-diagnostics" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/server-diagnostics/api/v1.1" name="ServerDiagnostics">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-server-list-multi-status" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/os-server-list-multi-status/api/v2" name="ServerListMultiStatus">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-server-password" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/server-password/api/v2" name="ServerPassword">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-server-start-stop" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/servers/api/v1.1" name="ServerStartStop">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-shelve" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/shelve/api/v1.1" name="Shelve">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-simple-tenant-usage" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/os-simple-tenant-usage/api/v1.1" name="SimpleTenantUsage">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-used-limits" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/used_limits/api/v1.1" name="UsedLimits">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-used-limits-for-admin" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/used_limits_for_admin/api/v1.1" name="UsedLimitsForAdmin">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-user-data" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/userdata/api/v1.1" name="UserData">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-virtual-interfaces" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/virtual_interfaces/api/v1.1" name="VirtualInterfaces">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-volume-attachment-update" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/os-volume-attachment-update/api/v2" name="VolumeAttachmentUpdate">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-volumes" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/volumes/api/v1.1" name="Volumes">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-instance-actions" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/instance-actions/api/v1.1" name="InstanceActions">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-server-external-events" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/server-external-events/api/v2" name="ServerExternalEvents">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-migrations" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/migrations/api/v2.0" name="Migrations">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-assisted-volume-snapshots" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/assisted-volume-snapshots/api/v2" name="AssistedVolumeSnapshots">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-baremetal-ext-status" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/baremetal_ext_status/api/v2" name="BareMetalExtStatus"> <description>%(text)s</description>
+ </extension>
+ <extension alias="os-preserve-ephemeral-rebuild" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/preserve_ephemeral_rebuild/api/v2" name="PreserveEphemeralOnRebuild">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-extended-services-delete" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/extended_services_delete/api/v2" name="ExtendedServicesDelete">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-console-auth-tokens" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/consoles-auth-tokens/api/v2" name="ConsoleAuthTokens">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-server-groups" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/servergroups/api/v2" name="ServerGroups">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-extended-evacuate-find-host" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/extended_evacuate_find_host/api/v2" name="ExtendedEvacuateFindHost">
+ <description>%(text)s</description>
+ </extension>
+ <extension alias="os-server-group-quotas" updated="%(isotime)s" namespace="http://docs.openstack.org/compute/ext/server-group-quotas/api/v2" name="ServerGroupQuotas">
+ <description>%(text)s</description>
+ </extension>
+</extensions>
diff --git a/nova/tests/unit/integrated/api_samples/all_extensions/flavor-get-resp.json.tpl b/nova/tests/unit/integrated/api_samples/all_extensions/flavor-get-resp.json.tpl
new file mode 100644
index 0000000000..b68bc3c979
--- /dev/null
+++ b/nova/tests/unit/integrated/api_samples/all_extensions/flavor-get-resp.json.tpl
@@ -0,0 +1,24 @@
+{
+ "flavor": {
+ "OS-FLV-DISABLED:disabled": false,
+ "OS-FLV-EXT-DATA:ephemeral": 0,
+ "disk": 1,
+ "id": "1",
+ "links": [
+ {
+ "href": "http://openstack.example.com/v2/openstack/flavors/1",
+ "rel": "self"
+ },
+ {
+ "href": "http://openstack.example.com/openstack/flavors/1",
+ "rel": "bookmark"
+ }
+ ],
+ "name": "m1.tiny",
+ "os-flavor-access:is_public": true,
+ "ram": 512,
+ "rxtx_factor": 1.0,
+ "swap": "",
+ "vcpus": 1
+ }
+}
diff --git a/nova/tests/unit/integrated/api_samples/all_extensions/flavor-get-resp.xml.tpl b/nova/tests/unit/integrated/api_samples/all_extensions/flavor-get-resp.xml.tpl
new file mode 100644
index 0000000000..53f870ec4d
--- /dev/null
+++ b/nova/tests/unit/integrated/api_samples/all_extensions/flavor-get-resp.xml.tpl
@@ -0,0 +1,5 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<flavor xmlns:OS-FLV-DISABLED="http://docs.openstack.org/compute/ext/flavor_disabled/api/v1.1" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:OS-FLV-EXT-DATA="http://docs.openstack.org/compute/ext/flavor_extra_data/api/v1.1" xmlns:os-flavor-access="http://docs.openstack.org/compute/ext/flavor_access/api/v2" xmlns="http://docs.openstack.org/compute/api/v1.1" name="m1.tiny" ram="512" vcpus="1" swap="" rxtx_factor="1.0" disk="1" id="1" os-flavor-access:is_public="True" OS-FLV-EXT-DATA:ephemeral="0" OS-FLV-DISABLED:disabled="False">
+ <atom:link href="http://openstack.example.com/v2/openstack/flavors/1" rel="self"/>
+ <atom:link href="http://openstack.example.com/openstack/flavors/1" rel="bookmark"/>
+</flavor>
diff --git a/nova/tests/unit/integrated/api_samples/all_extensions/flavors-list-resp.json.tpl b/nova/tests/unit/integrated/api_samples/all_extensions/flavors-list-resp.json.tpl
new file mode 100644
index 0000000000..ab86d2a52a
--- /dev/null
+++ b/nova/tests/unit/integrated/api_samples/all_extensions/flavors-list-resp.json.tpl
@@ -0,0 +1,74 @@
+{
+ "flavors": [
+ {
+ "id": "1",
+ "links": [
+ {
+ "href": "http://openstack.example.com/v2/openstack/flavors/1",
+ "rel": "self"
+ },
+ {
+ "href": "http://openstack.example.com/openstack/flavors/1",
+ "rel": "bookmark"
+ }
+ ],
+ "name": "m1.tiny"
+ },
+ {
+ "id": "2",
+ "links": [
+ {
+ "href": "http://openstack.example.com/v2/openstack/flavors/2",
+ "rel": "self"
+ },
+ {
+ "href": "http://openstack.example.com/openstack/flavors/2",
+ "rel": "bookmark"
+ }
+ ],
+ "name": "m1.small"
+ },
+ {
+ "id": "3",
+ "links": [
+ {
+ "href": "http://openstack.example.com/v2/openstack/flavors/3",
+ "rel": "self"
+ },
+ {
+ "href": "http://openstack.example.com/openstack/flavors/3",
+ "rel": "bookmark"
+ }
+ ],
+ "name": "m1.medium"
+ },
+ {
+ "id": "4",
+ "links": [
+ {
+ "href": "http://openstack.example.com/v2/openstack/flavors/4",
+ "rel": "self"
+ },
+ {
+ "href": "http://openstack.example.com/openstack/flavors/4",
+ "rel": "bookmark"
+ }
+ ],
+ "name": "m1.large"
+ },
+ {
+ "id": "5",
+ "links": [
+ {
+ "href": "http://openstack.example.com/v2/openstack/flavors/5",
+ "rel": "self"
+ },
+ {
+ "href": "http://openstack.example.com/openstack/flavors/5",
+ "rel": "bookmark"
+ }
+ ],
+ "name": "m1.xlarge"
+ }
+ ]
+} \ No newline at end of file
diff --git a/nova/tests/unit/integrated/api_samples/all_extensions/flavors-list-resp.xml.tpl b/nova/tests/unit/integrated/api_samples/all_extensions/flavors-list-resp.xml.tpl
new file mode 100644
index 0000000000..435f96be56
--- /dev/null
+++ b/nova/tests/unit/integrated/api_samples/all_extensions/flavors-list-resp.xml.tpl
@@ -0,0 +1,23 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<flavors xmlns:atom="http://www.w3.org/2005/Atom" xmlns="http://docs.openstack.org/compute/api/v1.1">
+ <flavor name="m1.tiny" id="1">
+ <atom:link href="http://openstack.example.com/v2/openstack/flavors/1" rel="self"/>
+ <atom:link href="http://openstack.example.com/openstack/flavors/1" rel="bookmark"/>
+ </flavor>
+ <flavor name="m1.small" id="2">
+ <atom:link href="http://openstack.example.com/v2/openstack/flavors/2" rel="self"/>
+ <atom:link href="http://openstack.example.com/openstack/flavors/2" rel="bookmark"/>
+ </flavor>
+ <flavor name="m1.medium" id="3">
+ <atom:link href="http://openstack.example.com/v2/openstack/flavors/3" rel="self"/>
+ <atom:link href="http://openstack.example.com/openstack/flavors/3" rel="bookmark"/>
+ </flavor>
+ <flavor name="m1.large" id="4">
+ <atom:link href="http://openstack.example.com/v2/openstack/flavors/4" rel="self"/>
+ <atom:link href="http://openstack.example.com/openstack/flavors/4" rel="bookmark"/>
+ </flavor>
+ <flavor name="m1.xlarge" id="5">
+ <atom:link href="http://openstack.example.com/v2/openstack/flavors/5" rel="self"/>
+ <atom:link href="http://openstack.example.com/openstack/flavors/5" rel="bookmark"/>
+ </flavor>
+</flavors> \ No newline at end of file
diff --git a/nova/tests/unit/integrated/api_samples/all_extensions/server-action-changepassword.json.tpl b/nova/tests/unit/integrated/api_samples/all_extensions/server-action-changepassword.json.tpl
new file mode 100644
index 0000000000..da615718fe
--- /dev/null
+++ b/nova/tests/unit/integrated/api_samples/all_extensions/server-action-changepassword.json.tpl
@@ -0,0 +1,5 @@
+{
+ "changePassword" : {
+ "adminPass" : "%(password)s"
+ }
+}
diff --git a/nova/tests/unit/integrated/api_samples/all_extensions/server-action-changepassword.xml.tpl b/nova/tests/unit/integrated/api_samples/all_extensions/server-action-changepassword.xml.tpl
new file mode 100644
index 0000000000..6c343024e2
--- /dev/null
+++ b/nova/tests/unit/integrated/api_samples/all_extensions/server-action-changepassword.xml.tpl
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<changePassword
+ xmlns="http://docs.openstack.org/compute/api/v1.1"
+ adminPass="%(password)s"/>
diff --git a/nova/tests/unit/integrated/api_samples/all_extensions/server-action-confirmresize.json.tpl b/nova/tests/unit/integrated/api_samples/all_extensions/server-action-confirmresize.json.tpl
new file mode 100644
index 0000000000..432f6126e9
--- /dev/null
+++ b/nova/tests/unit/integrated/api_samples/all_extensions/server-action-confirmresize.json.tpl
@@ -0,0 +1,3 @@
+{
+ "confirmResize" : null
+}
diff --git a/nova/tests/unit/integrated/api_samples/all_extensions/server-action-confirmresize.xml.tpl b/nova/tests/unit/integrated/api_samples/all_extensions/server-action-confirmresize.xml.tpl
new file mode 100644
index 0000000000..18f07bd67b
--- /dev/null
+++ b/nova/tests/unit/integrated/api_samples/all_extensions/server-action-confirmresize.xml.tpl
@@ -0,0 +1,3 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<confirmResize
+ xmlns="http://docs.openstack.org/compute/api/v1.1"/>
diff --git a/nova/tests/unit/integrated/api_samples/all_extensions/server-action-createimage.json.tpl b/nova/tests/unit/integrated/api_samples/all_extensions/server-action-createimage.json.tpl
new file mode 100644
index 0000000000..0b9e39ffb3
--- /dev/null
+++ b/nova/tests/unit/integrated/api_samples/all_extensions/server-action-createimage.json.tpl
@@ -0,0 +1,9 @@
+{
+ "createImage" : {
+ "name" : "%(name)s",
+ "metadata": {
+ "%(meta_var)s": "%(meta_val)s"
+ }
+ }
+}
+
diff --git a/nova/tests/unit/integrated/api_samples/all_extensions/server-action-createimage.xml.tpl b/nova/tests/unit/integrated/api_samples/all_extensions/server-action-createimage.xml.tpl
new file mode 100644
index 0000000000..aa1eccf8a5
--- /dev/null
+++ b/nova/tests/unit/integrated/api_samples/all_extensions/server-action-createimage.xml.tpl
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<createImage
+ xmlns="http://docs.openstack.org/compute/api/v1.1"
+ name="%(name)s">
+ <metadata>
+ <meta key="%(meta_var)s">%(meta_val)s</meta>
+ </metadata>
+</createImage>
diff --git a/nova/tests/unit/integrated/api_samples/all_extensions/server-action-reboot.json.tpl b/nova/tests/unit/integrated/api_samples/all_extensions/server-action-reboot.json.tpl
new file mode 100644
index 0000000000..18eda9b9ab
--- /dev/null
+++ b/nova/tests/unit/integrated/api_samples/all_extensions/server-action-reboot.json.tpl
@@ -0,0 +1,5 @@
+{
+ "reboot" : {
+ "type" : "%(type)s"
+ }
+}
diff --git a/nova/tests/unit/integrated/api_samples/all_extensions/server-action-reboot.xml.tpl b/nova/tests/unit/integrated/api_samples/all_extensions/server-action-reboot.xml.tpl
new file mode 100644
index 0000000000..d4cfe198c7
--- /dev/null
+++ b/nova/tests/unit/integrated/api_samples/all_extensions/server-action-reboot.xml.tpl
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<reboot
+ xmlns="http://docs.openstack.org/compute/api/v1.1"
+ type="%(type)s"/>
diff --git a/nova/tests/unit/integrated/api_samples/all_extensions/server-action-rebuild-resp.json.tpl b/nova/tests/unit/integrated/api_samples/all_extensions/server-action-rebuild-resp.json.tpl
new file mode 100644
index 0000000000..8705a8749c
--- /dev/null
+++ b/nova/tests/unit/integrated/api_samples/all_extensions/server-action-rebuild-resp.json.tpl
@@ -0,0 +1,56 @@
+{
+ "server": {
+ "OS-DCF:diskConfig": "AUTO",
+ "accessIPv4": "%(ip)s",
+ "accessIPv6": "%(ip6)s",
+ "addresses": {
+ "private": [
+ {
+ "addr": "%(ip)s",
+ "version": 4
+ }
+ ]
+ },
+ "adminPass": "%(password)s",
+ "created": "%(isotime)s",
+ "flavor": {
+ "id": "1",
+ "links": [
+ {
+ "href": "%(host)s/openstack/flavors/1",
+ "rel": "bookmark"
+ }
+ ]
+ },
+ "hostId": "%(hostid)s",
+ "id": "%(uuid)s",
+ "image": {
+ "id": "%(uuid)s",
+ "links": [
+ {
+ "href": "%(host)s/openstack/images/%(uuid)s",
+ "rel": "bookmark"
+ }
+ ]
+ },
+ "links": [
+ {
+ "href": "%(host)s/v2/openstack/servers/%(uuid)s",
+ "rel": "self"
+ },
+ {
+ "href": "%(host)s/openstack/servers/%(uuid)s",
+ "rel": "bookmark"
+ }
+ ],
+ "metadata": {
+ "meta var": "meta val"
+ },
+ "name": "%(name)s",
+ "progress": 0,
+ "status": "ACTIVE",
+ "tenant_id": "openstack",
+ "updated": "%(isotime)s",
+ "user_id": "fake"
+ }
+}
diff --git a/nova/tests/unit/integrated/api_samples/all_extensions/server-action-rebuild-resp.xml.tpl b/nova/tests/unit/integrated/api_samples/all_extensions/server-action-rebuild-resp.xml.tpl
new file mode 100644
index 0000000000..6fa0505367
--- /dev/null
+++ b/nova/tests/unit/integrated/api_samples/all_extensions/server-action-rebuild-resp.xml.tpl
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<server xmlns:OS-DCF="http://docs.openstack.org/compute/ext/disk_config/api/v1.1"
+ xmlns="http://docs.openstack.org/compute/api/v1.1"
+ xmlns:atom="http://www.w3.org/2005/Atom"
+ id="%(uuid)s"
+ tenantId="openstack" userId="fake"
+ name="%(name)s"
+ hostId="%(hostid)s" progress="0"
+ status="ACTIVE" adminPass="%(password)s"
+ created="%(isotime)s"
+ updated="%(isotime)s"
+ accessIPv4="%(ip)s"
+ accessIPv6="%(ip6)s"
+ OS-DCF:diskConfig="AUTO">
+ <image id="%(uuid)s">
+ <atom:link
+ rel="bookmark"
+ href="%(host)s/openstack/images/%(uuid)s"/>
+ </image>
+ <flavor id="1">
+ <atom:link
+ rel="bookmark"
+ href="%(host)s/openstack/flavors/1"/>
+ </flavor>
+ <metadata>
+ <meta key="My Server Name">Apache1</meta>
+ </metadata>
+ <addresses>
+ <network id="private">
+ <ip version="4" addr="%(ip)s"/>
+ </network>
+ </addresses>
+ <atom:link
+ rel="self"
+ href="%(host)s/v2/openstack/servers/%(uuid)s"/>
+ <atom:link
+ rel="bookmark"
+ href="%(host)s/openstack/servers/%(uuid)s"/>
+</server>
diff --git a/nova/tests/unit/integrated/api_samples/all_extensions/server-action-rebuild.json.tpl b/nova/tests/unit/integrated/api_samples/all_extensions/server-action-rebuild.json.tpl
new file mode 100644
index 0000000000..273906a349
--- /dev/null
+++ b/nova/tests/unit/integrated/api_samples/all_extensions/server-action-rebuild.json.tpl
@@ -0,0 +1,18 @@
+{
+ "rebuild" : {
+ "imageRef" : "%(host)s/v2/32278/images/%(uuid)s",
+ "name" : "%(name)s",
+ "adminPass" : "%(pass)s",
+ "accessIPv4" : "%(ip)s",
+ "accessIPv6" : "%(ip6)s",
+ "metadata" : {
+ "meta var" : "meta val"
+ },
+ "personality" : [
+ {
+ "path" : "/etc/banner.txt",
+ "contents" : "ICAgICAgDQoiQSBjbG91ZCBkb2VzIG5vdCBrbm93IHdoeSBp dCBtb3ZlcyBpbiBqdXN0IHN1Y2ggYSBkaXJlY3Rpb24gYW5k IGF0IHN1Y2ggYSBzcGVlZC4uLkl0IGZlZWxzIGFuIGltcHVs c2lvbi4uLnRoaXMgaXMgdGhlIHBsYWNlIHRvIGdvIG5vdy4g QnV0IHRoZSBza3kga25vd3MgdGhlIHJlYXNvbnMgYW5kIHRo ZSBwYXR0ZXJucyBiZWhpbmQgYWxsIGNsb3VkcywgYW5kIHlv dSB3aWxsIGtub3csIHRvbywgd2hlbiB5b3UgbGlmdCB5b3Vy c2VsZiBoaWdoIGVub3VnaCB0byBzZWUgYmV5b25kIGhvcml6 b25zLiINCg0KLVJpY2hhcmQgQmFjaA=="
+ }
+ ]
+ }
+}
diff --git a/nova/tests/unit/integrated/api_samples/all_extensions/server-action-rebuild.xml.tpl b/nova/tests/unit/integrated/api_samples/all_extensions/server-action-rebuild.xml.tpl
new file mode 100644
index 0000000000..bd42f88b22
--- /dev/null
+++ b/nova/tests/unit/integrated/api_samples/all_extensions/server-action-rebuild.xml.tpl
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<rebuild
+ xmlns="http://docs.openstack.org/compute/api/v1.1"
+ name="%(name)s"
+ imageRef="%(host)s/v1.1/32278/images/%(uuid)s"
+ accessIPv4="%(ip)s"
+ accessIPv6="%(ip6)s"
+ adminPass="%(pass)s">
+ <metadata>
+ <meta key="My Server Name">Apache1</meta>
+ </metadata>
+ <personality>
+ <file path="/etc/banner.txt">
+ ICAgICAgDQoiQSBjbG91ZCBkb2VzIG5vdCBrbm93IHdoeSBp
+ dCBtb3ZlcyBpbiBqdXN0IHN1Y2ggYSBkaXJlY3Rpb24gYW5k
+ IGF0IHN1Y2ggYSBzcGVlZC4uLkl0IGZlZWxzIGFuIGltcHVs
+ c2lvbi4uLnRoaXMgaXMgdGhlIHBsYWNlIHRvIGdvIG5vdy4g
+ QnV0IHRoZSBza3kga25vd3MgdGhlIHJlYXNvbnMgYW5kIHRo
+ ZSBwYXR0ZXJucyBiZWhpbmQgYWxsIGNsb3VkcywgYW5kIHlv
+ dSB3aWxsIGtub3csIHRvbywgd2hlbiB5b3UgbGlmdCB5b3Vy
+ c2VsZiBoaWdoIGVub3VnaCB0byBzZWUgYmV5b25kIGhvcml6
+ b25zLiINCg0KLVJpY2hhcmQgQmFjaA==
+ </file>
+ </personality>
+</rebuild>
diff --git a/nova/tests/unit/integrated/api_samples/all_extensions/server-action-resize.json.tpl b/nova/tests/unit/integrated/api_samples/all_extensions/server-action-resize.json.tpl
new file mode 100644
index 0000000000..468a88da24
--- /dev/null
+++ b/nova/tests/unit/integrated/api_samples/all_extensions/server-action-resize.json.tpl
@@ -0,0 +1,5 @@
+{
+ "resize" : {
+ "flavorRef" : "%(id)s"
+ }
+}
diff --git a/nova/tests/unit/integrated/api_samples/all_extensions/server-action-resize.xml.tpl b/nova/tests/unit/integrated/api_samples/all_extensions/server-action-resize.xml.tpl
new file mode 100644
index 0000000000..cbe49ea59a
--- /dev/null
+++ b/nova/tests/unit/integrated/api_samples/all_extensions/server-action-resize.xml.tpl
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resize
+ xmlns="http://docs.openstack.org/compute/api/v1.1"
+ flavorRef="%(id)s"/>
diff --git a/nova/tests/unit/integrated/api_samples/all_extensions/server-action-revertresize.json.tpl b/nova/tests/unit/integrated/api_samples/all_extensions/server-action-revertresize.json.tpl
new file mode 100644
index 0000000000..2ddf6e5ab0
--- /dev/null
+++ b/nova/tests/unit/integrated/api_samples/all_extensions/server-action-revertresize.json.tpl
@@ -0,0 +1,3 @@
+{
+ "revertResize" : null
+}
diff --git a/nova/tests/unit/integrated/api_samples/all_extensions/server-action-revertresize.xml.tpl b/nova/tests/unit/integrated/api_samples/all_extensions/server-action-revertresize.xml.tpl
new file mode 100644
index 0000000000..5c13bbdc0c
--- /dev/null
+++ b/nova/tests/unit/integrated/api_samples/all_extensions/server-action-revertresize.xml.tpl
@@ -0,0 +1,3 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<revertResize
+ xmlns="http://docs.openstack.org/compute/api/v1.1"/>
diff --git a/nova/tests/unit/integrated/api_samples/all_extensions/server-get-resp.json.tpl b/nova/tests/unit/integrated/api_samples/all_extensions/server-get-resp.json.tpl
new file mode 100644
index 0000000000..c83ab91068
--- /dev/null
+++ b/nova/tests/unit/integrated/api_samples/all_extensions/server-get-resp.json.tpl
@@ -0,0 +1,74 @@
+{
+ "server": {
+ "OS-DCF:diskConfig": "AUTO",
+ "OS-EXT-AZ:availability_zone": "nova",
+ "OS-EXT-SRV-ATTR:host": "%(compute_host)s",
+ "OS-EXT-SRV-ATTR:hypervisor_hostname": "%(hypervisor_hostname)s",
+ "OS-EXT-SRV-ATTR:instance_name": "instance-00000001",
+ "OS-EXT-STS:power_state": 1,
+ "OS-EXT-STS:task_state": null,
+ "OS-EXT-STS:vm_state": "active",
+ "OS-SRV-USG:launched_at": "%(strtime)s",
+ "OS-SRV-USG:terminated_at": null,
+ "accessIPv4": "",
+ "accessIPv6": "",
+ "addresses": {
+ "private": [
+ {
+ "OS-EXT-IPS:type": "fixed",
+ "addr": "%(ip)s",
+ "version": 4,
+ "OS-EXT-IPS-MAC:mac_addr": "%(mac_addr)s"
+ }
+ ]
+ },
+ "config_drive": "",
+ "created": "%(isotime)s",
+ "flavor": {
+ "id": "1",
+ "links": [
+ {
+ "href": "%(host)s/openstack/flavors/1",
+ "rel": "bookmark"
+ }
+ ]
+ },
+ "hostId": "%(hostid)s",
+ "id": "%(id)s",
+ "image": {
+ "id": "%(uuid)s",
+ "links": [
+ {
+ "href": "%(host)s/openstack/images/%(uuid)s",
+ "rel": "bookmark"
+ }
+ ]
+ },
+ "key_name": null,
+ "links": [
+ {
+ "href": "%(host)s/v2/openstack/servers/%(id)s",
+ "rel": "self"
+ },
+ {
+ "href": "%(host)s/openstack/servers/%(id)s",
+ "rel": "bookmark"
+ }
+ ],
+ "metadata": {
+ "My Server Name": "Apache1"
+ },
+ "name": "new-server-test",
+ "progress": 0,
+ "security_groups": [
+ {
+ "name": "default"
+ }
+ ],
+ "status": "ACTIVE",
+ "tenant_id": "openstack",
+ "updated": "%(isotime)s",
+ "user_id": "fake",
+ "os-extended-volumes:volumes_attached": []
+ }
+}
diff --git a/nova/tests/unit/integrated/api_samples/all_extensions/server-get-resp.xml.tpl b/nova/tests/unit/integrated/api_samples/all_extensions/server-get-resp.xml.tpl
new file mode 100644
index 0000000000..1bd75a99b9
--- /dev/null
+++ b/nova/tests/unit/integrated/api_samples/all_extensions/server-get-resp.xml.tpl
@@ -0,0 +1,23 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<server xmlns:OS-DCF="http://docs.openstack.org/compute/ext/disk_config/api/v1.1" xmlns:OS-EXT-AZ="http://docs.openstack.org/compute/ext/extended_availability_zone/api/v2" xmlns:OS-EXT-SRV-ATTR="http://docs.openstack.org/compute/ext/extended_status/api/v1.1" xmlns:OS-EXT-IPS="http://docs.openstack.org/compute/ext/extended_ips/api/v1.1" xmlns:OS-EXT-IPS-MAC="http://docs.openstack.org/compute/ext/extended_ips_mac/api/v1.1" xmlns:OS-EXT-STS="http://docs.openstack.org/compute/ext/extended_status/api/v1.1" xmlns:os-extended-volumes="http://docs.openstack.org/compute/ext/extended_volumes/api/v1.1" xmlns:OS-SRV-USG="http://docs.openstack.org/compute/ext/server_usage/api/v1.1" xmlns:atom="http://www.w3.org/2005/Atom" xmlns="http://docs.openstack.org/compute/api/v1.1" status="ACTIVE" updated="%(isotime)s" hostId="%(hostid)s" name="new-server-test" created="%(isotime)s" userId="fake" tenantId="openstack" accessIPv4="" accessIPv6="" progress="0" id="%(id)s" key_name="None" config_drive="" OS-EXT-SRV-ATTR:vm_state="active" OS-EXT-SRV-ATTR:task_state="None" OS-EXT-SRV-ATTR:power_state="1" OS-EXT-SRV-ATTR:instance_name="instance-00000001" OS-EXT-SRV-ATTR:host="%(compute_host)s" OS-EXT-SRV-ATTR:hypervisor_hostname="%(hypervisor_hostname)s" OS-EXT-AZ:availability_zone="nova" OS-DCF:diskConfig="AUTO" OS-SRV-USG:launched_at="%(xmltime)s" OS-SRV-USG:terminated_at="None">
+ <image id="%(uuid)s">
+ <atom:link href="%(host)s/openstack/images/%(uuid)s" rel="bookmark"/>
+ </image>
+ <flavor id="1">
+ <atom:link href="%(host)s/openstack/flavors/1" rel="bookmark"/>
+ </flavor>
+ <metadata>
+ <meta key="My Server Name">Apache1</meta>
+ </metadata>
+ <addresses>
+ <network id="private">
+ <ip OS-EXT-IPS:type="fixed" version="4" addr="%(ip)s"
+ OS-EXT-IPS-MAC:mac_addr="%(mac_addr)s"/>
+ </network>
+ </addresses>
+ <atom:link href="%(host)s/v2/openstack/servers/%(id)s" rel="self"/>
+ <atom:link href="%(host)s/openstack/servers/%(id)s" rel="bookmark"/>
+ <security_groups>
+ <security_group name="default"/>
+ </security_groups>
+</server>
diff --git a/nova/tests/unit/integrated/api_samples/all_extensions/server-post-req.json.tpl b/nova/tests/unit/integrated/api_samples/all_extensions/server-post-req.json.tpl
new file mode 100644
index 0000000000..d3916d1aa6
--- /dev/null
+++ b/nova/tests/unit/integrated/api_samples/all_extensions/server-post-req.json.tpl
@@ -0,0 +1,16 @@
+{
+ "server" : {
+ "name" : "new-server-test",
+ "imageRef" : "%(host)s/openstack/images/%(image_id)s",
+ "flavorRef" : "%(host)s/openstack/flavors/1",
+ "metadata" : {
+ "My Server Name" : "Apache1"
+ },
+ "personality" : [
+ {
+ "path" : "/etc/banner.txt",
+ "contents" : "ICAgICAgDQoiQSBjbG91ZCBkb2VzIG5vdCBrbm93IHdoeSBpdCBtb3ZlcyBpbiBqdXN0IHN1Y2ggYSBkaXJlY3Rpb24gYW5kIGF0IHN1Y2ggYSBzcGVlZC4uLkl0IGZlZWxzIGFuIGltcHVsc2lvbi4uLnRoaXMgaXMgdGhlIHBsYWNlIHRvIGdvIG5vdy4gQnV0IHRoZSBza3kga25vd3MgdGhlIHJlYXNvbnMgYW5kIHRoZSBwYXR0ZXJucyBiZWhpbmQgYWxsIGNsb3VkcywgYW5kIHlvdSB3aWxsIGtub3csIHRvbywgd2hlbiB5b3UgbGlmdCB5b3Vyc2VsZiBoaWdoIGVub3VnaCB0byBzZWUgYmV5b25kIGhvcml6b25zLiINCg0KLVJpY2hhcmQgQmFjaA=="
+ }
+ ]
+ }
+}
diff --git a/nova/tests/unit/integrated/api_samples/all_extensions/server-post-req.xml.tpl b/nova/tests/unit/integrated/api_samples/all_extensions/server-post-req.xml.tpl
new file mode 100644
index 0000000000..f926149842
--- /dev/null
+++ b/nova/tests/unit/integrated/api_samples/all_extensions/server-post-req.xml.tpl
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<server xmlns="http://docs.openstack.org/compute/api/v1.1" imageRef="%(host)s/openstack/images/%(image_id)s" flavorRef="%(host)s/openstack/flavors/1" name="new-server-test">
+ <metadata>
+ <meta key="My Server Name">Apache1</meta>
+ </metadata>
+ <personality>
+ <file path="/etc/banner.txt">
+ ICAgICAgDQoiQSBjbG91ZCBkb2VzIG5vdCBrbm93IHdoeSBp
+ dCBtb3ZlcyBpbiBqdXN0IHN1Y2ggYSBkaXJlY3Rpb24gYW5k
+ IGF0IHN1Y2ggYSBzcGVlZC4uLkl0IGZlZWxzIGFuIGltcHVs
+ c2lvbi4uLnRoaXMgaXMgdGhlIHBsYWNlIHRvIGdvIG5vdy4g
+ QnV0IHRoZSBza3kga25vd3MgdGhlIHJlYXNvbnMgYW5kIHRo
+ ZSBwYXR0ZXJucyBiZWhpbmQgYWxsIGNsb3VkcywgYW5kIHlv
+ dSB3aWxsIGtub3csIHRvbywgd2hlbiB5b3UgbGlmdCB5b3Vy
+ c2VsZiBoaWdoIGVub3VnaCB0byBzZWUgYmV5b25kIGhvcml6
+ b25zLiINCg0KLVJpY2hhcmQgQmFjaA==
+ </file>
+ </personality>
+</server>
diff --git a/nova/tests/unit/integrated/api_samples/all_extensions/server-post-resp.json.tpl b/nova/tests/unit/integrated/api_samples/all_extensions/server-post-resp.json.tpl
new file mode 100644
index 0000000000..c931eb3fdc
--- /dev/null
+++ b/nova/tests/unit/integrated/api_samples/all_extensions/server-post-resp.json.tpl
@@ -0,0 +1,22 @@
+{
+ "server": {
+ "OS-DCF:diskConfig": "AUTO",
+ "adminPass": "%(password)s",
+ "id": "%(id)s",
+ "links": [
+ {
+ "href": "%(host)s/v2/openstack/servers/%(uuid)s",
+ "rel": "self"
+ },
+ {
+ "href": "%(host)s/openstack/servers/%(uuid)s",
+ "rel": "bookmark"
+ }
+ ],
+ "security_groups": [
+ {
+ "name": "default"
+ }
+ ]
+ }
+}
diff --git a/nova/tests/unit/integrated/api_samples/all_extensions/server-post-resp.xml.tpl b/nova/tests/unit/integrated/api_samples/all_extensions/server-post-resp.xml.tpl
new file mode 100644
index 0000000000..d7dc316552
--- /dev/null
+++ b/nova/tests/unit/integrated/api_samples/all_extensions/server-post-resp.xml.tpl
@@ -0,0 +1,9 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<server xmlns:OS-DCF="http://docs.openstack.org/compute/ext/disk_config/api/v1.1" xmlns:atom="http://www.w3.org/2005/Atom" xmlns="http://docs.openstack.org/compute/api/v1.1" id="%(id)s" adminPass="%(password)s" OS-DCF:diskConfig="AUTO">
+ <metadata/>
+ <atom:link href="%(host)s/v2/openstack/servers/%(uuid)s" rel="self"/>
+ <atom:link href="%(host)s/openstack/servers/%(uuid)s" rel="bookmark"/>
+ <security_groups>
+ <security_group name="default"/>
+ </security_groups>
+</server>
diff --git a/nova/tests/unit/integrated/api_samples/all_extensions/servers-details-resp.json.tpl b/nova/tests/unit/integrated/api_samples/all_extensions/servers-details-resp.json.tpl
new file mode 100644
index 0000000000..d2aea31149
--- /dev/null
+++ b/nova/tests/unit/integrated/api_samples/all_extensions/servers-details-resp.json.tpl
@@ -0,0 +1,76 @@
+{
+ "servers": [
+ {
+ "OS-DCF:diskConfig": "AUTO",
+ "OS-EXT-AZ:availability_zone": "nova",
+ "OS-EXT-SRV-ATTR:host": "%(compute_host)s",
+ "OS-EXT-SRV-ATTR:hypervisor_hostname": "%(hypervisor_hostname)s",
+ "OS-EXT-SRV-ATTR:instance_name": "instance-00000001",
+ "OS-EXT-STS:power_state": 1,
+ "OS-EXT-STS:task_state": null,
+ "OS-EXT-STS:vm_state": "active",
+ "OS-SRV-USG:launched_at": "%(strtime)s",
+ "OS-SRV-USG:terminated_at": null,
+ "accessIPv4": "",
+ "accessIPv6": "",
+ "addresses": {
+ "private": [
+ {
+ "OS-EXT-IPS:type": "fixed",
+ "addr": "%(ip)s",
+ "version": 4,
+ "OS-EXT-IPS-MAC:mac_addr": "%(mac_addr)s"
+ }
+ ]
+ },
+ "config_drive": "",
+ "created": "%(isotime)s",
+ "flavor": {
+ "id": "1",
+ "links": [
+ {
+ "href": "%(host)s/openstack/flavors/1",
+ "rel": "bookmark"
+ }
+ ]
+ },
+ "hostId": "%(hostid)s",
+ "id": "%(id)s",
+ "image": {
+ "id": "%(uuid)s",
+ "links": [
+ {
+ "href": "%(host)s/openstack/images/%(uuid)s",
+ "rel": "bookmark"
+ }
+ ]
+ },
+ "key_name": null,
+ "links": [
+ {
+ "href": "%(host)s/v2/openstack/servers/%(id)s",
+ "rel": "self"
+ },
+ {
+ "href": "%(host)s/openstack/servers/%(id)s",
+ "rel": "bookmark"
+ }
+ ],
+ "metadata": {
+ "My Server Name": "Apache1"
+ },
+ "name": "new-server-test",
+ "progress": 0,
+ "security_groups": [
+ {
+ "name": "default"
+ }
+ ],
+ "status": "ACTIVE",
+ "tenant_id": "openstack",
+ "updated": "%(isotime)s",
+ "user_id": "fake",
+ "os-extended-volumes:volumes_attached": []
+ }
+ ]
+}
diff --git a/nova/tests/unit/integrated/api_samples/all_extensions/servers-details-resp.xml.tpl b/nova/tests/unit/integrated/api_samples/all_extensions/servers-details-resp.xml.tpl
new file mode 100644
index 0000000000..bf8dc083cd
--- /dev/null
+++ b/nova/tests/unit/integrated/api_samples/all_extensions/servers-details-resp.xml.tpl
@@ -0,0 +1,25 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<servers xmlns:OS-DCF="http://docs.openstack.org/compute/ext/disk_config/api/v1.1" xmlns:OS-EXT-AZ="http://docs.openstack.org/compute/ext/extended_availability_zone/api/v2" xmlns:OS-EXT-SRV-ATTR="http://docs.openstack.org/compute/ext/extended_status/api/v1.1" xmlns:OS-EXT-IPS="http://docs.openstack.org/compute/ext/extended_ips/api/v1.1" xmlns:OS-EXT-IPS-MAC="http://docs.openstack.org/compute/ext/extended_ips_mac/api/v1.1" xmlns:OS-EXT-STS="http://docs.openstack.org/compute/ext/extended_status/api/v1.1" xmlns:os-extended-volumes="http://docs.openstack.org/compute/ext/extended_volumes/api/v1.1" xmlns:OS-SRV-USG="http://docs.openstack.org/compute/ext/server_usage/api/v1.1" xmlns:atom="http://www.w3.org/2005/Atom" xmlns="http://docs.openstack.org/compute/api/v1.1">
+ <server xmlns:OS-DCF="http://docs.openstack.org/compute/ext/disk_config/api/v1.1" xmlns:OS-EXT-AZ="http://docs.openstack.org/compute/ext/extended_availability_zone/api/v2" xmlns:OS-EXT-SRV-ATTR="http://docs.openstack.org/compute/ext/extended_status/api/v1.1" xmlns:OS-EXT-IPS="http://docs.openstack.org/compute/ext/extended_ips/api/v1.1" xmlns:OS-EXT-STS="http://docs.openstack.org/compute/ext/extended_status/api/v1.1" xmlns:os-extended-volumes="http://docs.openstack.org/compute/ext/extended_volumes/api/v1.1" xmlns:atom="http://www.w3.org/2005/Atom" xmlns="http://docs.openstack.org/compute/api/v1.1" status="ACTIVE" updated="%(isotime)s" hostId="%(hostid)s" name="new-server-test" created="%(isotime)s" userId="fake" tenantId="openstack" accessIPv4="" accessIPv6="" progress="0" id="%(id)s" key_name="None" config_drive="" OS-EXT-SRV-ATTR:vm_state="active" OS-EXT-SRV-ATTR:task_state="None" OS-EXT-SRV-ATTR:power_state="1" OS-EXT-SRV-ATTR:instance_name="instance-00000001" OS-EXT-SRV-ATTR:host="%(compute_host)s" OS-EXT-SRV-ATTR:hypervisor_hostname="%(hypervisor_hostname)s" OS-EXT-AZ:availability_zone="nova" OS-DCF:diskConfig="AUTO" OS-SRV-USG:launched_at="%(xmltime)s" OS-SRV-USG:terminated_at="None">
+ <image id="%(uuid)s">
+ <atom:link href="%(host)s/openstack/images/%(uuid)s" rel="bookmark"/>
+ </image>
+ <flavor id="1">
+ <atom:link href="%(host)s/openstack/flavors/1" rel="bookmark"/>
+ </flavor>
+ <metadata>
+ <meta key="My Server Name">Apache1</meta>
+ </metadata>
+ <addresses>
+ <network id="private">
+ <ip OS-EXT-IPS:type="fixed" version="4" addr="%(ip)s"
+ OS-EXT-IPS-MAC:mac_addr="%(mac_addr)s"/>
+ </network>
+ </addresses>
+ <atom:link href="%(host)s/v2/openstack/servers/%(id)s" rel="self"/>
+ <atom:link href="%(host)s/openstack/servers/%(id)s" rel="bookmark"/>
+ <security_groups>
+ <security_group name="default"/>
+ </security_groups>
+ </server>
+</servers>
diff --git a/nova/tests/unit/integrated/api_samples/all_extensions/servers-list-resp.json.tpl b/nova/tests/unit/integrated/api_samples/all_extensions/servers-list-resp.json.tpl
new file mode 100644
index 0000000000..8b97dc28d7
--- /dev/null
+++ b/nova/tests/unit/integrated/api_samples/all_extensions/servers-list-resp.json.tpl
@@ -0,0 +1,18 @@
+{
+ "servers": [
+ {
+ "id": "%(id)s",
+ "links": [
+ {
+ "href": "%(host)s/v2/openstack/servers/%(id)s",
+ "rel": "self"
+ },
+ {
+ "href": "%(host)s/openstack/servers/%(id)s",
+ "rel": "bookmark"
+ }
+ ],
+ "name": "new-server-test"
+ }
+ ]
+}
diff --git a/nova/tests/unit/integrated/api_samples/all_extensions/servers-list-resp.xml.tpl b/nova/tests/unit/integrated/api_samples/all_extensions/servers-list-resp.xml.tpl
new file mode 100644
index 0000000000..03bee03a6e
--- /dev/null
+++ b/nova/tests/unit/integrated/api_samples/all_extensions/servers-list-resp.xml.tpl
@@ -0,0 +1,7 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<servers xmlns:atom="http://www.w3.org/2005/Atom" xmlns="http://docs.openstack.org/compute/api/v1.1">
+ <server name="new-server-test" id="%(id)s">
+ <atom:link href="%(host)s/v2/openstack/servers/%(id)s" rel="self"/>
+ <atom:link href="%(host)s/openstack/servers/%(id)s" rel="bookmark"/>
+ </server>
+</servers>