fog 1.36.0 → 1.37.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +61 -0
- data/Rakefile +0 -3
- data/fog.gemspec +4 -3
- data/lib/fog/digitalocean/compute_v2.rb +2 -1
- data/lib/fog/digitalocean/examples/getting_started.md +24 -48
- data/lib/fog/digitalocean/models/compute_v2/server.rb +4 -0
- data/lib/fog/digitalocean/models/compute_v2/ssh_key.rb +17 -16
- data/lib/fog/digitalocean/requests/compute_v2/delete_ssh_key.rb +1 -1
- data/lib/fog/digitalocean/requests/compute_v2/get_image_details.rb +1 -2
- data/lib/fog/openstack.rb +2 -0
- data/lib/fog/openstack/common.rb +46 -0
- data/lib/fog/openstack/compute.rb +3 -1
- data/lib/fog/openstack/core.rb +15 -3
- data/lib/fog/openstack/docs/compute.md +1 -1
- data/lib/fog/openstack/identity.rb +0 -37
- data/lib/fog/openstack/identity_v2.rb +9 -3
- data/lib/fog/openstack/identity_v3.rb +8 -3
- data/lib/fog/openstack/image.rb +1 -41
- data/lib/fog/openstack/image_v1.rb +9 -3
- data/lib/fog/openstack/image_v2.rb +7 -2
- data/lib/fog/openstack/metering.rb +2 -1
- data/lib/fog/openstack/models/compute/server.rb +5 -0
- data/lib/fog/openstack/models/identity_v2/user.rb +6 -2
- data/lib/fog/openstack/models/volume/availability_zone.rb +1 -4
- data/lib/fog/openstack/models/volume/availability_zones.rb +1 -4
- data/lib/fog/openstack/models/volume/transfer.rb +1 -9
- data/lib/fog/openstack/models/volume/transfers.rb +1 -4
- data/lib/fog/openstack/models/volume/volume.rb +6 -18
- data/lib/fog/openstack/models/volume/volume_type.rb +0 -3
- data/lib/fog/openstack/models/volume/volume_types.rb +1 -4
- data/lib/fog/openstack/models/volume/volumes.rb +1 -4
- data/lib/fog/openstack/models/volume_v1/availability_zone.rb +15 -0
- data/lib/fog/openstack/models/volume_v1/availability_zones.rb +16 -0
- data/lib/fog/openstack/models/volume_v1/transfer.rb +18 -0
- data/lib/fog/openstack/models/volume_v1/transfers.rb +16 -0
- data/lib/fog/openstack/models/volume_v1/volume.rb +26 -0
- data/lib/fog/openstack/models/volume_v1/volume_type.rb +16 -0
- data/lib/fog/openstack/models/volume_v1/volume_types.rb +16 -0
- data/lib/fog/openstack/models/volume_v1/volumes.rb +16 -0
- data/lib/fog/openstack/models/volume_v2/availability_zone.rb +15 -0
- data/lib/fog/openstack/models/volume_v2/availability_zones.rb +16 -0
- data/lib/fog/openstack/models/volume_v2/transfer.rb +19 -0
- data/lib/fog/openstack/models/volume_v2/transfers.rb +16 -0
- data/lib/fog/openstack/models/volume_v2/volume.rb +27 -0
- data/lib/fog/openstack/models/volume_v2/volume_type.rb +16 -0
- data/lib/fog/openstack/models/volume_v2/volume_types.rb +16 -0
- data/lib/fog/openstack/models/volume_v2/volumes.rb +16 -0
- data/lib/fog/openstack/network.rb +2 -1
- data/lib/fog/openstack/orchestration.rb +2 -1
- data/lib/fog/openstack/planning.rb +2 -1
- data/lib/fog/openstack/requests/compute/evacuate_server.rb +26 -0
- data/lib/fog/openstack/requests/volume/accept_transfer.rb +8 -10
- data/lib/fog/openstack/requests/volume/create_transfer.rb +8 -10
- data/lib/fog/openstack/requests/volume/create_volume.rb +9 -40
- data/lib/fog/openstack/requests/volume/create_volume_snapshot.rb +13 -31
- data/lib/fog/openstack/requests/volume/create_volume_type.rb +2 -2
- data/lib/fog/openstack/requests/volume/delete_snapshot.rb +2 -2
- data/lib/fog/openstack/requests/volume/delete_transfer.rb +1 -3
- data/lib/fog/openstack/requests/volume/delete_volume.rb +2 -2
- data/lib/fog/openstack/requests/volume/delete_volume_type.rb +2 -2
- data/lib/fog/openstack/requests/volume/extend_volume.rb +2 -2
- data/lib/fog/openstack/requests/volume/get_quota.rb +2 -2
- data/lib/fog/openstack/requests/volume/get_quota_defaults.rb +7 -7
- data/lib/fog/openstack/requests/volume/get_quota_usage.rb +2 -2
- data/lib/fog/openstack/requests/volume/get_snapshot_details.rb +1 -20
- data/lib/fog/openstack/requests/volume/get_transfer_details.rb +1 -1
- data/lib/fog/openstack/requests/volume/get_volume_details.rb +1 -22
- data/lib/fog/openstack/requests/volume/get_volume_type_details.rb +2 -2
- data/lib/fog/openstack/requests/volume/list_snapshots.rb +2 -2
- data/lib/fog/openstack/requests/volume/list_snapshots_detailed.rb +2 -2
- data/lib/fog/openstack/requests/volume/list_transfers.rb +1 -1
- data/lib/fog/openstack/requests/volume/list_transfers_detailed.rb +1 -1
- data/lib/fog/openstack/requests/volume/list_volume_types.rb +2 -2
- data/lib/fog/openstack/requests/volume/list_volumes.rb +1 -34
- data/lib/fog/openstack/requests/volume/list_volumes_detailed.rb +1 -34
- data/lib/fog/openstack/requests/volume/list_zones.rb +2 -2
- data/lib/fog/openstack/requests/volume/set_tenant.rb +2 -2
- data/lib/fog/openstack/requests/volume/update_quota.rb +2 -2
- data/lib/fog/openstack/requests/volume/update_volume_type.rb +2 -2
- data/lib/fog/openstack/requests/volume_v1/accept_transfer.rb +2 -0
- data/lib/fog/openstack/requests/volume_v1/create_transfer.rb +2 -0
- data/lib/fog/openstack/requests/volume_v1/create_volume.rb +49 -0
- data/lib/fog/openstack/requests/volume_v1/create_volume_snapshot.rb +44 -0
- data/lib/fog/openstack/requests/volume_v1/create_volume_type.rb +2 -0
- data/lib/fog/openstack/requests/volume_v1/delete_snapshot.rb +2 -0
- data/lib/fog/openstack/requests/volume_v1/delete_transfer.rb +2 -0
- data/lib/fog/openstack/requests/volume_v1/delete_volume.rb +2 -0
- data/lib/fog/openstack/requests/volume_v1/delete_volume_type.rb +2 -0
- data/lib/fog/openstack/requests/volume_v1/extend_volume.rb +2 -0
- data/lib/fog/openstack/requests/volume_v1/get_quota.rb +2 -0
- data/lib/fog/openstack/requests/volume_v1/get_quota_defaults.rb +2 -0
- data/lib/fog/openstack/requests/volume_v1/get_quota_usage.rb +2 -0
- data/lib/fog/openstack/requests/volume_v1/get_snapshot_details.rb +32 -0
- data/lib/fog/openstack/requests/volume_v1/get_transfer_details.rb +2 -0
- data/lib/fog/openstack/requests/volume_v1/get_volume_details.rb +35 -0
- data/lib/fog/openstack/requests/volume_v1/get_volume_type_details.rb +2 -0
- data/lib/fog/openstack/requests/volume_v1/list_snapshots.rb +2 -0
- data/lib/fog/openstack/requests/volume_v1/list_snapshots_detailed.rb +2 -0
- data/lib/fog/openstack/requests/volume_v1/list_transfers.rb +2 -0
- data/lib/fog/openstack/requests/volume_v1/list_transfers_detailed.rb +2 -0
- data/lib/fog/openstack/requests/volume_v1/list_volume_types.rb +2 -0
- data/lib/fog/openstack/requests/volume_v1/list_volumes.rb +46 -0
- data/lib/fog/openstack/requests/volume_v1/list_volumes_detailed.rb +46 -0
- data/lib/fog/openstack/requests/volume_v1/list_zones.rb +2 -0
- data/lib/fog/openstack/requests/volume_v1/real.rb +11 -0
- data/lib/fog/openstack/requests/volume_v1/real_mock.rb +14 -0
- data/lib/fog/openstack/requests/volume_v1/set_tenant.rb +2 -0
- data/lib/fog/openstack/requests/volume_v1/update_quota.rb +2 -0
- data/lib/fog/openstack/requests/volume_v2/accept_transfer.rb +2 -0
- data/lib/fog/openstack/requests/volume_v2/create_transfer.rb +2 -0
- data/lib/fog/openstack/requests/volume_v2/create_volume.rb +49 -0
- data/lib/fog/openstack/requests/volume_v2/create_volume_snapshot.rb +43 -0
- data/lib/fog/openstack/requests/volume_v2/create_volume_type.rb +2 -0
- data/lib/fog/openstack/requests/volume_v2/delete_snapshot.rb +2 -0
- data/lib/fog/openstack/requests/volume_v2/delete_transfer.rb +2 -0
- data/lib/fog/openstack/requests/volume_v2/delete_volume.rb +2 -0
- data/lib/fog/openstack/requests/volume_v2/delete_volume_type.rb +2 -0
- data/lib/fog/openstack/requests/volume_v2/extend_volume.rb +2 -0
- data/lib/fog/openstack/requests/volume_v2/get_quota.rb +2 -0
- data/lib/fog/openstack/requests/volume_v2/get_quota_defaults.rb +2 -0
- data/lib/fog/openstack/requests/volume_v2/get_quota_usage.rb +2 -0
- data/lib/fog/openstack/requests/volume_v2/get_snapshot_details.rb +32 -0
- data/lib/fog/openstack/requests/volume_v2/get_transfer_details.rb +2 -0
- data/lib/fog/openstack/requests/volume_v2/get_volume_details.rb +35 -0
- data/lib/fog/openstack/requests/volume_v2/get_volume_type_details.rb +2 -0
- data/lib/fog/openstack/requests/volume_v2/list_snapshots.rb +2 -0
- data/lib/fog/openstack/requests/volume_v2/list_snapshots_detailed.rb +2 -0
- data/lib/fog/openstack/requests/volume_v2/list_transfers.rb +2 -0
- data/lib/fog/openstack/requests/volume_v2/list_transfers_detailed.rb +2 -0
- data/lib/fog/openstack/requests/volume_v2/list_volume_types.rb +2 -0
- data/lib/fog/openstack/requests/volume_v2/list_volumes.rb +46 -0
- data/lib/fog/openstack/requests/volume_v2/list_volumes_detailed.rb +46 -0
- data/lib/fog/openstack/requests/volume_v2/list_zones.rb +2 -0
- data/lib/fog/openstack/requests/volume_v2/real.rb +11 -0
- data/lib/fog/openstack/requests/volume_v2/real_mock.rb +14 -0
- data/lib/fog/openstack/requests/volume_v2/set_tenant.rb +2 -0
- data/lib/fog/openstack/requests/volume_v2/update_quota.rb +2 -0
- data/lib/fog/openstack/requests/volume_v2/update_volume_type.rb +2 -0
- data/lib/fog/openstack/storage.rb +2 -1
- data/lib/fog/openstack/volume.rb +21 -176
- data/lib/fog/openstack/volume_v1.rb +163 -0
- data/lib/fog/openstack/volume_v2.rb +164 -0
- data/lib/fog/rackspace/compute_v2.rb +1 -0
- data/lib/fog/rackspace/docs/compute_v2.md +1 -1
- data/lib/fog/rackspace/models/compute_v2/server.rb +14 -0
- data/lib/fog/rackspace/requests/compute_v2/get_vnc_console.rb +45 -0
- data/lib/fog/rackspace/requests/storage/put_container.rb +10 -6
- data/lib/fog/vcloud_director/compute.rb +18 -2
- data/lib/fog/vcloud_director/models/compute/disks.rb +6 -0
- data/lib/fog/vcloud_director/models/compute/networks.rb +7 -2
- data/lib/fog/vcloud_director/models/compute/vdc.rb +5 -0
- data/lib/fog/vcloud_director/models/compute/vm.rb +15 -1
- data/lib/fog/vcloud_director/parsers/compute/vm.rb +4 -0
- data/lib/fog/vcloud_director/parsers/compute/vms.rb +4 -0
- data/lib/fog/vcloud_director/requests/compute/delete_vapp.rb +30 -0
- data/lib/fog/vcloud_director/requests/compute/get_catalog.rb +24 -3
- data/lib/fog/vcloud_director/requests/compute/get_catalog_item.rb +23 -0
- data/lib/fog/vcloud_director/requests/compute/get_metadata.rb +11 -0
- data/lib/fog/vcloud_director/requests/compute/get_vapp.rb +1 -0
- data/lib/fog/vcloud_director/requests/compute/get_vm.rb +46 -0
- data/lib/fog/vcloud_director/requests/compute/get_vm_disks.rb +20 -0
- data/lib/fog/vcloud_director/requests/compute/get_vm_network.rb +25 -0
- data/lib/fog/vcloud_director/requests/compute/get_vms.rb +13 -0
- data/lib/fog/vcloud_director/requests/compute/instantiate_vapp_template.rb +70 -0
- data/lib/fog/vcloud_director/requests/compute/post_power_on_vapp.rb +35 -0
- data/lib/fog/vcloud_director/requests/compute/post_reconfigure_vm.rb +118 -0
- data/lib/fog/vcloud_director/requests/compute/post_update_vapp_metadata.rb +34 -0
- data/lib/fog/vcloud_director/requests/compute/put_guest_customization_section_vapp.rb +2 -1
- data/lib/fog/vcloud_director/requests/compute/put_network_connection_system_section_vapp.rb +31 -0
- data/lib/fog/version.rb +1 -1
- data/lib/tasks/changelog_task.rb +1 -0
- data/spec/fog/openstack/shared_context.rb +11 -2
- data/spec/fog/openstack/volume/common_setup.yml +74 -50
- data/spec/fog/openstack/volume/volume_crud.yml +286 -236
- data/spec/fog/openstack/volume/volume_extend.yml +270 -363
- data/spec/fog/openstack/volume/volume_transfer_and_accept.yml +418 -424
- data/spec/fog/openstack/volume/volume_transfer_and_delete.yml +292 -321
- data/spec/fog/openstack/volume/volume_type_read.yml +30 -36
- data/spec/fog/openstack/volume_spec.rb +251 -224
- data/spec/fog/openstack/volume_v1/common_setup.yml +100 -0
- data/spec/fog/openstack/volume_v1/volume_crud.yml +535 -0
- data/spec/fog/openstack/volume_v1/volume_extend.yml +596 -0
- data/spec/fog/openstack/volume_v1/volume_transfer_and_accept.yml +1010 -0
- data/spec/fog/openstack/volume_v1/volume_transfer_and_delete.yml +645 -0
- data/spec/fog/openstack/volume_v1/volume_type_read.yml +114 -0
- data/spec/fog/openstack/volume_v2/common_setup.yml +100 -0
- data/spec/fog/openstack/volume_v2/volume_crud.yml +611 -0
- data/spec/fog/openstack/volume_v2/volume_extend.yml +669 -0
- data/spec/fog/openstack/volume_v2/volume_transfer_and_accept.yml +1072 -0
- data/spec/fog/openstack/volume_v2/volume_transfer_and_delete.yml +666 -0
- data/spec/fog/openstack/volume_v2/volume_type_read.yml +114 -0
- data/tests/helpers/mock_helper.rb +0 -4
- data/tests/openstack/authenticate_tests.rb +4 -0
- data/tests/openstack/volume_tests.rb +4 -0
- data/tests/rackspace/requests/compute_v2/server_tests.rb +4 -0
- metadata +135 -152
- data/lib/fog/bin/vsphere.rb +0 -28
- data/lib/fog/vsphere.rb +0 -1
- data/lib/fog/vsphere/compute.rb +0 -474
- data/lib/fog/vsphere/core.rb +0 -39
- data/lib/fog/vsphere/models/compute/cluster.rb +0 -28
- data/lib/fog/vsphere/models/compute/clusters.rb +0 -23
- data/lib/fog/vsphere/models/compute/customfield.rb +0 -16
- data/lib/fog/vsphere/models/compute/customfields.rb +0 -24
- data/lib/fog/vsphere/models/compute/customvalue.rb +0 -14
- data/lib/fog/vsphere/models/compute/customvalues.rb +0 -34
- data/lib/fog/vsphere/models/compute/datacenter.rb +0 -44
- data/lib/fog/vsphere/models/compute/datacenters.rb +0 -20
- data/lib/fog/vsphere/models/compute/datastore.rb +0 -21
- data/lib/fog/vsphere/models/compute/datastores.rb +0 -22
- data/lib/fog/vsphere/models/compute/folder.rb +0 -24
- data/lib/fog/vsphere/models/compute/folders.rb +0 -24
- data/lib/fog/vsphere/models/compute/interface.rb +0 -91
- data/lib/fog/vsphere/models/compute/interfaces.rb +0 -67
- data/lib/fog/vsphere/models/compute/interfacetype.rb +0 -22
- data/lib/fog/vsphere/models/compute/interfacetypes.rb +0 -35
- data/lib/fog/vsphere/models/compute/network.rb +0 -18
- data/lib/fog/vsphere/models/compute/networks.rb +0 -23
- data/lib/fog/vsphere/models/compute/process.rb +0 -18
- data/lib/fog/vsphere/models/compute/resource_pool.rb +0 -19
- data/lib/fog/vsphere/models/compute/resource_pools.rb +0 -23
- data/lib/fog/vsphere/models/compute/scsicontroller.rb +0 -16
- data/lib/fog/vsphere/models/compute/server.rb +0 -325
- data/lib/fog/vsphere/models/compute/servers.rb +0 -37
- data/lib/fog/vsphere/models/compute/servertype.rb +0 -36
- data/lib/fog/vsphere/models/compute/servertypes.rb +0 -24
- data/lib/fog/vsphere/models/compute/snapshot.rb +0 -35
- data/lib/fog/vsphere/models/compute/snapshots.rb +0 -27
- data/lib/fog/vsphere/models/compute/template.rb +0 -11
- data/lib/fog/vsphere/models/compute/templates.rb +0 -20
- data/lib/fog/vsphere/models/compute/volume.rb +0 -99
- data/lib/fog/vsphere/models/compute/volumes.rb +0 -54
- data/lib/fog/vsphere/requests/compute/cloudinit_to_customspec.rb +0 -65
- data/lib/fog/vsphere/requests/compute/create_folder.rb +0 -22
- data/lib/fog/vsphere/requests/compute/create_vm.rb +0 -227
- data/lib/fog/vsphere/requests/compute/current_time.rb +0 -18
- data/lib/fog/vsphere/requests/compute/get_cluster.rb +0 -25
- data/lib/fog/vsphere/requests/compute/get_compute_resource.rb +0 -41
- data/lib/fog/vsphere/requests/compute/get_datacenter.rb +0 -31
- data/lib/fog/vsphere/requests/compute/get_datastore.rb +0 -30
- data/lib/fog/vsphere/requests/compute/get_folder.rb +0 -74
- data/lib/fog/vsphere/requests/compute/get_interface_type.rb +0 -15
- data/lib/fog/vsphere/requests/compute/get_network.rb +0 -59
- data/lib/fog/vsphere/requests/compute/get_resource_pool.rb +0 -26
- data/lib/fog/vsphere/requests/compute/get_server_type.rb +0 -32
- data/lib/fog/vsphere/requests/compute/get_template.rb +0 -16
- data/lib/fog/vsphere/requests/compute/get_virtual_machine.rb +0 -57
- data/lib/fog/vsphere/requests/compute/get_vm_first_scsi_controller.rb +0 -26
- data/lib/fog/vsphere/requests/compute/list_child_snapshots.rb +0 -71
- data/lib/fog/vsphere/requests/compute/list_clusters.rb +0 -72
- data/lib/fog/vsphere/requests/compute/list_compute_resources.rb +0 -92
- data/lib/fog/vsphere/requests/compute/list_customfields.rb +0 -21
- data/lib/fog/vsphere/requests/compute/list_datacenters.rb +0 -53
- data/lib/fog/vsphere/requests/compute/list_datastores.rb +0 -40
- data/lib/fog/vsphere/requests/compute/list_folders.rb +0 -44
- data/lib/fog/vsphere/requests/compute/list_interface_types.rb +0 -25
- data/lib/fog/vsphere/requests/compute/list_networks.rb +0 -38
- data/lib/fog/vsphere/requests/compute/list_processes.rb +0 -41
- data/lib/fog/vsphere/requests/compute/list_resource_pools.rb +0 -38
- data/lib/fog/vsphere/requests/compute/list_server_types.rb +0 -54
- data/lib/fog/vsphere/requests/compute/list_templates.rb +0 -48
- data/lib/fog/vsphere/requests/compute/list_virtual_machines.rb +0 -80
- data/lib/fog/vsphere/requests/compute/list_vm_customvalues.rb +0 -20
- data/lib/fog/vsphere/requests/compute/list_vm_interfaces.rb +0 -63
- data/lib/fog/vsphere/requests/compute/list_vm_snapshots.rb +0 -66
- data/lib/fog/vsphere/requests/compute/list_vm_volumes.rb +0 -52
- data/lib/fog/vsphere/requests/compute/modify_vm_interface.rb +0 -59
- data/lib/fog/vsphere/requests/compute/modify_vm_volume.rb +0 -25
- data/lib/fog/vsphere/requests/compute/revert_to_snapshot.rb +0 -30
- data/lib/fog/vsphere/requests/compute/set_vm_customvalue.rb +0 -17
- data/lib/fog/vsphere/requests/compute/vm_clone.rb +0 -727
- data/lib/fog/vsphere/requests/compute/vm_config_vnc.rb +0 -45
- data/lib/fog/vsphere/requests/compute/vm_destroy.rb +0 -23
- data/lib/fog/vsphere/requests/compute/vm_execute.rb +0 -47
- data/lib/fog/vsphere/requests/compute/vm_migrate.rb +0 -33
- data/lib/fog/vsphere/requests/compute/vm_power_off.rb +0 -39
- data/lib/fog/vsphere/requests/compute/vm_power_on.rb +0 -26
- data/lib/fog/vsphere/requests/compute/vm_reboot.rb +0 -31
- data/lib/fog/vsphere/requests/compute/vm_reconfig_cpus.rb +0 -23
- data/lib/fog/vsphere/requests/compute/vm_reconfig_hardware.rb +0 -24
- data/lib/fog/vsphere/requests/compute/vm_reconfig_memory.rb +0 -23
- data/lib/fog/vsphere/requests/compute/vm_take_snapshot.rb +0 -37
- data/tests/vsphere/compute_tests.rb +0 -53
- data/tests/vsphere/models/compute/server_tests.rb +0 -70
- data/tests/vsphere/models/compute/servers_tests.rb +0 -15
- data/tests/vsphere/requests/compute/current_time_tests.rb +0 -12
- data/tests/vsphere/requests/compute/get_network_tests.rb +0 -48
- data/tests/vsphere/requests/compute/list_child_snapshots_tests.rb +0 -10
- data/tests/vsphere/requests/compute/list_clusters_tests.rb +0 -11
- data/tests/vsphere/requests/compute/list_virtual_machines_tests.rb +0 -38
- data/tests/vsphere/requests/compute/list_vm_snapshots_tests.rb +0 -10
- data/tests/vsphere/requests/compute/revert_to_snapshot_tests.rb +0 -15
- data/tests/vsphere/requests/compute/set_vm_customvalue_tests.rb +0 -20
- data/tests/vsphere/requests/compute/vm_clone_tests.rb +0 -50
- data/tests/vsphere/requests/compute/vm_config_vnc_tests.rb +0 -19
- data/tests/vsphere/requests/compute/vm_destroy_tests.rb +0 -17
- data/tests/vsphere/requests/compute/vm_migrate_tests.rb +0 -16
- data/tests/vsphere/requests/compute/vm_power_off_tests.rb +0 -26
- data/tests/vsphere/requests/compute/vm_power_on_tests.rb +0 -17
- data/tests/vsphere/requests/compute/vm_reboot_tests.rb +0 -26
- data/tests/vsphere/requests/compute/vm_reconfig_cpus_tests.rb +0 -19
- data/tests/vsphere/requests/compute/vm_reconfig_hardware_tests.rb +0 -19
- data/tests/vsphere/requests/compute/vm_reconfig_memory_tests.rb +0 -19
- data/tests/vsphere/requests/compute/vm_take_snapshot_tests.rb +0 -19
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 738eb34cd16f667cbcace3db1cd5b9ecf43b2523
|
|
4
|
+
data.tar.gz: d59b0584e317418f4ac05f407742325d58023791
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 87d75d2c9fe6bf483461cf2e675ef78a607b9755ab0135cea41afddb043923eec526dd9412641d34d6b4fff7b20e66f0a6000c354f85d473bd17d2e3741d490a
|
|
7
|
+
data.tar.gz: 78b931fa6b3fd7cb5f839c3b33001f8d98dfc5f7c50dda0bf05d06298e0cc3e5afd33400baf7e965ae98aa145b7f3fda12b78c0a48678f4fb998228a15a2bc86
|
data/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,64 @@
|
|
|
1
|
+
## 1.37.0 12/22/2015
|
|
2
|
+
*Hash* f7cf6b7c6499ab2a58bb7fe6848363d7cc459d3a
|
|
3
|
+
|
|
4
|
+
Statistic | Value
|
|
5
|
+
------------- | --------:
|
|
6
|
+
Collaborators | 2
|
|
7
|
+
Downloads | 13380838
|
|
8
|
+
Forks | 1530
|
|
9
|
+
Open Issues | 89
|
|
10
|
+
Watchers | 3729
|
|
11
|
+
|
|
12
|
+
**MVP!** Rich Daley
|
|
13
|
+
|
|
14
|
+
#### [misc]
|
|
15
|
+
* Remove vSphere provider. thanks Garcia
|
|
16
|
+
* Remove lib/fog/bin/vsphere. thanks Garcia
|
|
17
|
+
* Use fog-vsphere ~> 0.2. thanks Garcia
|
|
18
|
+
* OpenStack fix Cinder v2 typo. thanks Ladislav Smola
|
|
19
|
+
* OpenStack add server evacuate action. thanks Ladislav Smola
|
|
20
|
+
* Fix DigitalOceanV2::SshKey misplaced #save, #destroy and #update methods. thanks Manuel Franco
|
|
21
|
+
* Enforce no slash in container name. thanks Matt Darby
|
|
22
|
+
* Update API path for deleting SSH keys. thanks Michael Borohovski
|
|
23
|
+
* Upgrade version of fog-vsphere to 0.4. Fixes #3784. thanks Michael Borohovski
|
|
24
|
+
* Updates Getting Started for DigitalOcean. thanks Peter Souter
|
|
25
|
+
* Add some mocks for VM (partial) and Network. thanks Rich Daley
|
|
26
|
+
* Add loads more mocks to the vcloud_director backend. thanks Rich Daley
|
|
27
|
+
* Add mocks for disks. thanks Rich Daley
|
|
28
|
+
* Add mock support for tags. thanks Rich Daley
|
|
29
|
+
* Don't pass AdminPassword if AdminPasswordAuto is true (causes an exception). thanks Rich Daley
|
|
30
|
+
* Remove erroneous file. thanks Rich Daley
|
|
31
|
+
* Add a barebones :post_reconfigure_vm and a Vm#reconfigure that uses it. thanks Rich Daley
|
|
32
|
+
* Add a mock and fix infinite loop issue. thanks Rich Daley
|
|
33
|
+
* Set description in the mocks ahead of separate PR. thanks Rich Daley
|
|
34
|
+
* Add support for VM descriptions. thanks Rich Daley
|
|
35
|
+
* Add a #storage_only to disks to return only those disks that are actually disks. thanks Rich Daley
|
|
36
|
+
* Remove description if it hasn't changed. thanks Rich Daley
|
|
37
|
+
* Make comment more explicit about OVF. thanks Rich Daley
|
|
38
|
+
* Add vdc.networks. thanks Rich Daley
|
|
39
|
+
* Fix bogus requires. thanks Rich Daley
|
|
40
|
+
* Add a mock for put_network_connection_system_section_vapp and fix the mock for get_vm_network to get the VM ID the same way the parser does. thanks Rich Daley
|
|
41
|
+
* Add mock for post_power_on_vapp. thanks Rich Daley
|
|
42
|
+
* Add mock for delete_vapp. thanks Rich Daley
|
|
43
|
+
* According to doc, only the username is mandatory. thanks Sean Handley
|
|
44
|
+
* If the management URL has no path, use the one in the auth URI. thanks Sean Handley
|
|
45
|
+
* Revert "If the management URL has no path, use the one in the auth URI.". thanks Sean Handley
|
|
46
|
+
* Workaround for installs using both v2 and v3. thanks Sean Handley
|
|
47
|
+
* Fix #3785 Missing image details for digitalocean version 2 api. thanks Suraj Shirvankar
|
|
48
|
+
* Added method locked? to check if the machine is currently locked with another operation. thanks Suraj Shirvankar
|
|
49
|
+
* Add openstack_temp_url_key to the list of recognized options. thanks Yauheni Kryudziuk
|
|
50
|
+
* rely on fog-xml nokogiri dep. thanks geemus
|
|
51
|
+
* add mime-types as dev dependency. thanks geemus
|
|
52
|
+
* Update compute.md. thanks losingle
|
|
53
|
+
|
|
54
|
+
#### [openstack]
|
|
55
|
+
* volume API v2 implementation. thanks Darren Hague
|
|
56
|
+
* Revert over-eager optimisation in v2 authentication case. thanks Darren Hague
|
|
57
|
+
|
|
58
|
+
#### [rackspace]
|
|
59
|
+
* Add support for get_vnc_console request to compute_v2. thanks Dusty Jones
|
|
60
|
+
|
|
61
|
+
|
|
1
62
|
## 1.36.0 11/16/2015
|
|
2
63
|
*Hash* e7cd19696284633d4363993e2e3fda41384b7d58
|
|
3
64
|
|
data/Rakefile
CHANGED
|
@@ -69,9 +69,6 @@ namespace :test do
|
|
|
69
69
|
task :travis => [:openstack_specs] do
|
|
70
70
|
sh("export FOG_MOCK=#{mock} && bundle exec shindont")
|
|
71
71
|
end
|
|
72
|
-
task :vsphere do
|
|
73
|
-
sh("export FOG_MOCK=#{mock} && bundle exec shindont tests/vsphere")
|
|
74
|
-
end
|
|
75
72
|
task :openvz do
|
|
76
73
|
sh("export FOG_MOCK=#{mock} && bundle exec shindont tests/openvz")
|
|
77
74
|
end
|
data/fog.gemspec
CHANGED
|
@@ -11,8 +11,8 @@ Gem::Specification.new do |s|
|
|
|
11
11
|
## If your rubyforge_project name is different, then edit it and comment out
|
|
12
12
|
## the sub! line in the Rakefile
|
|
13
13
|
s.name = "fog"
|
|
14
|
-
s.version = "1.
|
|
15
|
-
s.date = "2015-
|
|
14
|
+
s.version = "1.37.0"
|
|
15
|
+
s.date = "2015-12-22"
|
|
16
16
|
s.rubyforge_project = "fog"
|
|
17
17
|
|
|
18
18
|
## Make sure your summary is short. The description may be as long
|
|
@@ -49,7 +49,6 @@ Gem::Specification.new do |s|
|
|
|
49
49
|
s.add_dependency("fog-xml", "~> 0.1.1")
|
|
50
50
|
|
|
51
51
|
s.add_dependency("ipaddress", "~> 0.5")
|
|
52
|
-
s.add_dependency("nokogiri", "~> 1.5", ">= 1.5.11")
|
|
53
52
|
|
|
54
53
|
# Modular providers (please keep sorted)
|
|
55
54
|
s.add_dependency("fog-atmos")
|
|
@@ -70,11 +69,13 @@ Gem::Specification.new do |s|
|
|
|
70
69
|
s.add_dependency("fog-terremark")
|
|
71
70
|
s.add_dependency("fog-vmfusion")
|
|
72
71
|
s.add_dependency("fog-voxel")
|
|
72
|
+
s.add_dependency("fog-vsphere", ">= 0.4.0")
|
|
73
73
|
s.add_dependency("fog-xenserver")
|
|
74
74
|
s.add_dependency("fog-aliyun",">= 0.1.0")
|
|
75
75
|
|
|
76
76
|
s.add_development_dependency("docker-api", ">= 1.13.6")
|
|
77
77
|
s.add_development_dependency("fission")
|
|
78
|
+
s.add_development_dependency("mime-types")
|
|
78
79
|
s.add_development_dependency("minitest")
|
|
79
80
|
s.add_development_dependency("minitest-stub-const")
|
|
80
81
|
s.add_development_dependency("opennebula")
|
|
@@ -27,6 +27,7 @@ module Fog
|
|
|
27
27
|
request :enable_ipv6
|
|
28
28
|
request :enable_private_networking
|
|
29
29
|
request :get_droplet_action
|
|
30
|
+
request :get_image_details
|
|
30
31
|
request :get_server_details
|
|
31
32
|
request :get_ssh_key
|
|
32
33
|
request :list_droplet_actions
|
|
@@ -105,4 +106,4 @@ module Fog
|
|
|
105
106
|
end
|
|
106
107
|
end
|
|
107
108
|
end
|
|
108
|
-
end
|
|
109
|
+
end
|
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
# Getting started: the compute service
|
|
2
2
|
|
|
3
|
-
You'll need a DigitalOcean account and API
|
|
3
|
+
You'll need a DigitalOcean account and an API token to use this provider.
|
|
4
4
|
|
|
5
|
-
Get one from https://cloud.digitalocean.com/
|
|
6
|
-
|
|
7
|
-
Write down the Client Key and API Key, you'll need both to use the service.
|
|
5
|
+
Get one from https://cloud.digitalocean.com/settings/tokens/new
|
|
8
6
|
|
|
7
|
+
Write down the Access Token.
|
|
9
8
|
|
|
10
9
|
## Connecting, retrieving and managing server objects
|
|
11
10
|
|
|
@@ -21,8 +20,8 @@ require 'fog'
|
|
|
21
20
|
|
|
22
21
|
docean = Fog::Compute.new({
|
|
23
22
|
:provider => 'DigitalOcean',
|
|
24
|
-
:
|
|
25
|
-
:
|
|
23
|
+
:version => 'V2',
|
|
24
|
+
:digitalocean_token => 'poiuweoruwoeiuroiwuer', # your Access Token here
|
|
26
25
|
})
|
|
27
26
|
```
|
|
28
27
|
|
|
@@ -43,8 +42,9 @@ Listing all keys:
|
|
|
43
42
|
|
|
44
43
|
```ruby
|
|
45
44
|
docean.ssh_keys.each do | key |
|
|
46
|
-
|
|
47
|
-
|
|
45
|
+
puts key.name
|
|
46
|
+
puts key.public_key
|
|
47
|
+
puts key.id
|
|
48
48
|
end
|
|
49
49
|
```
|
|
50
50
|
|
|
@@ -53,24 +53,6 @@ Destroying a key:
|
|
|
53
53
|
```ruby
|
|
54
54
|
docean.ssh_keys.destroy(:id => '27100')
|
|
55
55
|
```
|
|
56
|
-
|
|
57
|
-
## Boostrapping a server
|
|
58
|
-
|
|
59
|
-
Fog can be used to bootstrap a server, which will create an SSH key to be assigned to a server at boot.
|
|
60
|
-
|
|
61
|
-
```ruby
|
|
62
|
-
server = connection.servers.bootstrap({
|
|
63
|
-
:name => 'test',
|
|
64
|
-
:image_id => 1505447,
|
|
65
|
-
:size_id => 33,
|
|
66
|
-
:region_id => 4,
|
|
67
|
-
:flavor_id => 66,
|
|
68
|
-
:public_key_path => File.expand_path('~/.ssh/id_rsa.pub'),
|
|
69
|
-
:private_key_path => File.expand_path('~/.ssh/id_rsa'),
|
|
70
|
-
})
|
|
71
|
-
server.wait_for { ready? }
|
|
72
|
-
```
|
|
73
|
-
|
|
74
56
|
## Listing servers
|
|
75
57
|
|
|
76
58
|
Listing servers and attributes:
|
|
@@ -78,13 +60,12 @@ Listing servers and attributes:
|
|
|
78
60
|
```ruby
|
|
79
61
|
docean.servers.each do |server|
|
|
80
62
|
# remember, servers are droplets
|
|
81
|
-
server.id
|
|
82
|
-
server.name
|
|
83
|
-
server.
|
|
84
|
-
server.
|
|
85
|
-
server.
|
|
86
|
-
server.
|
|
87
|
-
server.region_id
|
|
63
|
+
puts server.id
|
|
64
|
+
puts server.name
|
|
65
|
+
puts server.status
|
|
66
|
+
puts (server.image['slug'] || server.image['name']) # slug is only for public images, private images use name
|
|
67
|
+
puts server.size['slug']
|
|
68
|
+
puts server.region['slug']
|
|
88
69
|
end
|
|
89
70
|
```
|
|
90
71
|
|
|
@@ -94,12 +75,12 @@ Creating a new server (droplet):
|
|
|
94
75
|
|
|
95
76
|
```ruby
|
|
96
77
|
server = docean.servers.create :name => 'foobar',
|
|
97
|
-
# use the
|
|
98
|
-
:
|
|
99
|
-
# use the first flavor listed
|
|
100
|
-
:
|
|
78
|
+
# use the last image listed
|
|
79
|
+
:image => docean.images.last.id,
|
|
80
|
+
# use the first flavor (aka size) listed
|
|
81
|
+
:size => docean.flavors.first.slug,
|
|
101
82
|
# use the first region listed
|
|
102
|
-
:
|
|
83
|
+
:region => docean.regions.first.slug
|
|
103
84
|
```
|
|
104
85
|
|
|
105
86
|
The server is automatically started after that.
|
|
@@ -109,21 +90,18 @@ but you can easily list them too, and then decide:
|
|
|
109
90
|
|
|
110
91
|
```ruby
|
|
111
92
|
docean.images.each do |image|
|
|
112
|
-
image.id
|
|
113
|
-
image.name
|
|
114
|
-
image.distribution
|
|
93
|
+
puts image.id
|
|
94
|
+
puts image.name
|
|
95
|
+
puts image.distribution
|
|
115
96
|
end
|
|
116
97
|
|
|
117
98
|
docean.flavors.each do |flavor|
|
|
118
|
-
flavor.
|
|
119
|
-
flavor.name
|
|
99
|
+
puts flavor.slug
|
|
120
100
|
end
|
|
121
101
|
|
|
122
102
|
docean.regions.each do |region|
|
|
123
|
-
region.
|
|
124
|
-
region.name
|
|
103
|
+
puts region.slug
|
|
125
104
|
end
|
|
126
|
-
|
|
127
105
|
```
|
|
128
106
|
|
|
129
107
|
Rebooting a server:
|
|
@@ -144,5 +122,3 @@ Destroying the server:
|
|
|
144
122
|
```ruby
|
|
145
123
|
server.destroy
|
|
146
124
|
```
|
|
147
|
-
|
|
148
|
-
|
|
@@ -6,25 +6,26 @@ module Fog
|
|
|
6
6
|
attribute :fingerprint
|
|
7
7
|
attribute :public_key
|
|
8
8
|
attribute :name
|
|
9
|
-
end
|
|
10
9
|
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
10
|
+
def save
|
|
11
|
+
requires :name, :public_key
|
|
12
|
+
merge_attributes(service.create_ssh_key(name, public_key).body['ssh_key'])
|
|
13
|
+
true
|
|
14
|
+
end
|
|
16
15
|
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
16
|
+
def destroy
|
|
17
|
+
requires :id
|
|
18
|
+
service.delete_ssh_key id
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
def update
|
|
22
|
+
requires :id, :name
|
|
23
|
+
data = service.update_server(id, name)
|
|
24
|
+
merge_attributes(data.body['ssh_key'])
|
|
25
|
+
true
|
|
26
|
+
end
|
|
21
27
|
|
|
22
|
-
def update
|
|
23
|
-
requires :id, :name
|
|
24
|
-
data = service.update_server(id, name)
|
|
25
|
-
merge_attributes(data.body['ssh_key'])
|
|
26
|
-
true
|
|
27
28
|
end
|
|
28
29
|
end
|
|
29
30
|
end
|
|
30
|
-
end
|
|
31
|
+
end
|
|
@@ -6,7 +6,7 @@ module Fog
|
|
|
6
6
|
request(
|
|
7
7
|
:expects => [200],
|
|
8
8
|
:method => 'GET',
|
|
9
|
-
:path => "/v2/images/#{
|
|
9
|
+
:path => "/v2/images/#{image_id}"
|
|
10
10
|
)
|
|
11
11
|
end
|
|
12
12
|
end
|
|
@@ -33,7 +33,6 @@ module Fog
|
|
|
33
33
|
'min_disk_size' => 20
|
|
34
34
|
}
|
|
35
35
|
}
|
|
36
|
-
}
|
|
37
36
|
|
|
38
37
|
response
|
|
39
38
|
end
|
data/lib/fog/openstack.rb
CHANGED
|
@@ -9,5 +9,7 @@ require 'fog/openstack/network'
|
|
|
9
9
|
require 'fog/openstack/orchestration'
|
|
10
10
|
require 'fog/openstack/storage'
|
|
11
11
|
require 'fog/openstack/volume'
|
|
12
|
+
require 'fog/openstack/volume_v1'
|
|
13
|
+
require 'fog/openstack/volume_v2'
|
|
12
14
|
require 'fog/openstack/baremetal'
|
|
13
15
|
require 'fog/openstack/planning'
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
require 'fog/openstack/core'
|
|
2
|
+
|
|
3
|
+
module Fog
|
|
4
|
+
module OpenStack
|
|
5
|
+
module Common
|
|
6
|
+
attr_reader :unscoped_token
|
|
7
|
+
|
|
8
|
+
include Fog::OpenStack::Core
|
|
9
|
+
|
|
10
|
+
def request(params)
|
|
11
|
+
retried = false
|
|
12
|
+
begin
|
|
13
|
+
std_headers = {
|
|
14
|
+
'Content-Type' => 'application/json',
|
|
15
|
+
'Accept' => 'application/json',
|
|
16
|
+
'X-Auth-Token' => @auth_token
|
|
17
|
+
}
|
|
18
|
+
param_headers = params.fetch(:headers, {})
|
|
19
|
+
|
|
20
|
+
response = @connection.request(params.merge({
|
|
21
|
+
:headers => std_headers.merge(param_headers),
|
|
22
|
+
:path => "#{@path}/#{params[:path]}"
|
|
23
|
+
}))
|
|
24
|
+
rescue Excon::Errors::Unauthorized => error
|
|
25
|
+
raise if retried
|
|
26
|
+
retried = true
|
|
27
|
+
|
|
28
|
+
@openstack_must_reauthenticate = true
|
|
29
|
+
authenticate
|
|
30
|
+
retry
|
|
31
|
+
rescue Excon::Errors::HTTPStatusError => error
|
|
32
|
+
raise case error
|
|
33
|
+
when Excon::Errors::NotFound
|
|
34
|
+
self.class.not_found_class.slurp(error)
|
|
35
|
+
else
|
|
36
|
+
error
|
|
37
|
+
end
|
|
38
|
+
end
|
|
39
|
+
unless response.body.empty?
|
|
40
|
+
response.body = Fog::JSON.decode(response.body) unless params[:raw_body]
|
|
41
|
+
end
|
|
42
|
+
response
|
|
43
|
+
end
|
|
44
|
+
end
|
|
45
|
+
end
|
|
46
|
+
end
|
|
@@ -12,7 +12,8 @@ module Fog
|
|
|
12
12
|
:openstack_endpoint_type,
|
|
13
13
|
:openstack_project_name, :openstack_project_id,
|
|
14
14
|
:openstack_project_domain, :openstack_user_domain, :openstack_domain_name,
|
|
15
|
-
:openstack_project_domain_id, :openstack_user_domain_id, :openstack_domain_id
|
|
15
|
+
:openstack_project_domain_id, :openstack_user_domain_id, :openstack_domain_id,
|
|
16
|
+
:openstack_identity_prefix
|
|
16
17
|
|
|
17
18
|
## MODELS
|
|
18
19
|
#
|
|
@@ -105,6 +106,7 @@ module Fog
|
|
|
105
106
|
request :get_vnc_console
|
|
106
107
|
request :live_migrate_server
|
|
107
108
|
request :migrate_server
|
|
109
|
+
request :evacuate_server
|
|
108
110
|
|
|
109
111
|
# Service CRUD
|
|
110
112
|
request :list_services
|
data/lib/fog/openstack/core.rb
CHANGED
|
@@ -67,6 +67,7 @@ module Fog
|
|
|
67
67
|
attr_reader :openstack_domain_id
|
|
68
68
|
attr_reader :openstack_user_domain_id
|
|
69
69
|
attr_reader :openstack_project_domain_id
|
|
70
|
+
attr_reader :openstack_identity_prefix
|
|
70
71
|
|
|
71
72
|
def initialize_identity options
|
|
72
73
|
# Create @openstack_* instance variables from all :openstack_* options
|
|
@@ -154,6 +155,13 @@ module Fog
|
|
|
154
155
|
@port = @openstack_management_uri.port
|
|
155
156
|
@scheme = @openstack_management_uri.scheme
|
|
156
157
|
|
|
158
|
+
# Not all implementations have identity service in the catalog
|
|
159
|
+
if @openstack_identity_public_endpoint || @openstack_management_url
|
|
160
|
+
@identity_connection = Fog::Core::Connection.new(
|
|
161
|
+
@openstack_identity_public_endpoint || @openstack_management_url,
|
|
162
|
+
false, @connection_options)
|
|
163
|
+
end
|
|
164
|
+
|
|
157
165
|
true
|
|
158
166
|
end
|
|
159
167
|
end
|
|
@@ -409,7 +417,7 @@ module Fog
|
|
|
409
417
|
auth_token = options[:openstack_auth_token] || options[:unscoped_token]
|
|
410
418
|
uri = options[:openstack_auth_uri]
|
|
411
419
|
|
|
412
|
-
|
|
420
|
+
identity_v2_connection = Fog::Core::Connection.new(uri.to_s, false, connection_options)
|
|
413
421
|
request_body = {:auth => Hash.new}
|
|
414
422
|
|
|
415
423
|
if auth_token
|
|
@@ -424,7 +432,7 @@ module Fog
|
|
|
424
432
|
end
|
|
425
433
|
request_body[:auth][:tenantName] = tenant_name if tenant_name
|
|
426
434
|
|
|
427
|
-
response =
|
|
435
|
+
response = identity_v2_connection.request({
|
|
428
436
|
:expects => [200, 204],
|
|
429
437
|
:headers => {'Content-Type' => 'application/json'},
|
|
430
438
|
:body => Fog::JSON.encode(request_body),
|
|
@@ -574,7 +582,11 @@ module Fog
|
|
|
574
582
|
end
|
|
575
583
|
|
|
576
584
|
def self.get_supported_version_path(supported_versions, uri, auth_token, connection_options = {})
|
|
577
|
-
|
|
585
|
+
# Find a version in the path (e.g. the v1 in /xyz/v1/tenantid/abc) and get the path up until that version (e.g. /xyz))
|
|
586
|
+
path_components = uri.path.split '/'
|
|
587
|
+
version_component_index = path_components.index{|comp| comp.match(/v[0-9].?[0-9]?/) }
|
|
588
|
+
versionless_path = (path_components.take(version_component_index).join '/' if version_component_index) || ''
|
|
589
|
+
connection = Fog::Core::Connection.new("#{uri.scheme}://#{uri.host}:#{uri.port}#{versionless_path}", false, connection_options)
|
|
578
590
|
response = connection.request({
|
|
579
591
|
:expects => [200, 204, 300],
|
|
580
592
|
:headers => {'Content-Type' => 'application/json',
|