fog-azure-rm 0.1.0 → 0.1.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +20 -0
- data/README.md +2 -1
- data/fog-azure-rm.gemspec +11 -9
- data/lib/fog/azurerm.rb +1 -0
- data/lib/fog/azurerm/compute.rb +3 -3
- data/lib/fog/azurerm/config.rb +33 -0
- data/lib/fog/azurerm/credentials.rb +1 -1
- data/lib/fog/azurerm/dns.rb +2 -2
- data/lib/fog/azurerm/docs/storage.md +120 -66
- data/lib/fog/azurerm/models/application_gateway/gateway.rb +30 -31
- data/lib/fog/azurerm/models/application_gateway/gateways.rb +4 -4
- data/lib/fog/azurerm/models/compute/availability_sets.rb +4 -4
- data/lib/fog/azurerm/models/compute/server.rb +14 -14
- data/lib/fog/azurerm/models/compute/servers.rb +4 -4
- data/lib/fog/azurerm/models/compute/virtual_machine_extension.rb +3 -5
- data/lib/fog/azurerm/models/compute/virtual_machine_extensions.rb +5 -5
- data/lib/fog/azurerm/models/dns/record_sets.rb +4 -4
- data/lib/fog/azurerm/models/dns/zones.rb +4 -4
- data/lib/fog/azurerm/models/network/express_route_circuit.rb +2 -5
- data/lib/fog/azurerm/models/network/express_route_circuit_authorization.rb +1 -1
- data/lib/fog/azurerm/models/network/express_route_circuit_authorizations.rb +4 -4
- data/lib/fog/azurerm/models/network/express_route_circuit_peering.rb +3 -5
- data/lib/fog/azurerm/models/network/express_route_circuit_peerings.rb +4 -4
- data/lib/fog/azurerm/models/network/express_route_circuits.rb +4 -4
- data/lib/fog/azurerm/models/network/express_route_service_providers.rb +2 -2
- data/lib/fog/azurerm/models/network/load_balancers.rb +5 -5
- data/lib/fog/azurerm/models/network/local_network_gateway.rb +1 -1
- data/lib/fog/azurerm/models/network/local_network_gateways.rb +4 -4
- data/lib/fog/azurerm/models/network/network_interfaces.rb +5 -5
- data/lib/fog/azurerm/models/network/network_security_groups.rb +5 -5
- data/lib/fog/azurerm/models/network/network_security_rule.rb +3 -4
- data/lib/fog/azurerm/models/network/network_security_rules.rb +4 -4
- data/lib/fog/azurerm/models/network/public_ips.rb +4 -4
- data/lib/fog/azurerm/models/network/subnets.rb +4 -4
- data/lib/fog/azurerm/models/network/virtual_network_gateway.rb +6 -7
- data/lib/fog/azurerm/models/network/virtual_network_gateway_connection.rb +5 -5
- data/lib/fog/azurerm/models/network/virtual_network_gateway_connections.rb +4 -4
- data/lib/fog/azurerm/models/network/virtual_network_gateways.rb +4 -4
- data/lib/fog/azurerm/models/network/virtual_networks.rb +4 -4
- data/lib/fog/azurerm/models/resources/azure_resources.rb +2 -2
- data/lib/fog/azurerm/models/resources/deployments.rb +4 -4
- data/lib/fog/azurerm/models/resources/resource_groups.rb +4 -4
- data/lib/fog/azurerm/models/sql/firewall_rule.rb +1 -1
- data/lib/fog/azurerm/models/sql/firewall_rules.rb +4 -4
- data/lib/fog/azurerm/models/sql/sql_database.rb +28 -24
- data/lib/fog/azurerm/models/sql/sql_databases.rb +5 -6
- data/lib/fog/azurerm/models/sql/sql_servers.rb +4 -4
- data/lib/fog/azurerm/models/storage/directories.rb +49 -24
- data/lib/fog/azurerm/models/storage/directory.rb +126 -40
- data/lib/fog/azurerm/models/storage/file.rb +226 -114
- data/lib/fog/azurerm/models/storage/files.rb +168 -13
- data/lib/fog/azurerm/models/storage/recovery_vault.rb +1 -1
- data/lib/fog/azurerm/models/storage/recovery_vaults.rb +4 -4
- data/lib/fog/azurerm/models/storage/storage_account.rb +5 -5
- data/lib/fog/azurerm/models/storage/storage_accounts.rb +4 -4
- data/lib/fog/azurerm/models/traffic_manager/traffic_manager_end_point.rb +1 -1
- data/lib/fog/azurerm/models/traffic_manager/traffic_manager_end_points.rb +4 -4
- data/lib/fog/azurerm/models/traffic_manager/traffic_manager_profile.rb +4 -4
- data/lib/fog/azurerm/models/traffic_manager/traffic_manager_profiles.rb +4 -4
- data/lib/fog/azurerm/network.rb +1 -1
- data/lib/fog/azurerm/requests/compute/create_virtual_machine.rb +17 -13
- data/lib/fog/azurerm/requests/network/list_virtual_networks.rb +1 -1
- data/lib/fog/azurerm/requests/resources/create_deployment.rb +1 -1
- data/lib/fog/azurerm/requests/resources/create_resource_group.rb +1 -1
- data/lib/fog/azurerm/requests/resources/delete_deployment.rb +1 -1
- data/lib/fog/azurerm/requests/resources/delete_resource_group.rb +1 -1
- data/lib/fog/azurerm/requests/resources/get_deployment.rb +1 -1
- data/lib/fog/azurerm/requests/resources/get_resource_group.rb +1 -1
- data/lib/fog/azurerm/requests/resources/list_deployments.rb +1 -1
- data/lib/fog/azurerm/requests/resources/list_resource_groups.rb +1 -1
- data/lib/fog/azurerm/requests/resources/list_tagged_resources.rb +1 -1
- data/lib/fog/azurerm/requests/resources/tag_resource.rb +1 -1
- data/lib/fog/azurerm/requests/sql/create_or_update_database.rb +3 -3
- data/lib/fog/azurerm/requests/sql/create_or_update_firewall_rule.rb +3 -3
- data/lib/fog/azurerm/requests/sql/create_or_update_sql_server.rb +3 -3
- data/lib/fog/azurerm/requests/sql/delete_database.rb +2 -2
- data/lib/fog/azurerm/requests/sql/delete_firewall_rule.rb +4 -4
- data/lib/fog/azurerm/requests/sql/delete_sql_server.rb +4 -4
- data/lib/fog/azurerm/requests/sql/get_database.rb +3 -3
- data/lib/fog/azurerm/requests/sql/get_firewall_rule.rb +3 -3
- data/lib/fog/azurerm/requests/sql/get_sql_server.rb +3 -3
- data/lib/fog/azurerm/requests/sql/list_databases.rb +3 -3
- data/lib/fog/azurerm/requests/sql/list_firewall_rules.rb +3 -3
- data/lib/fog/azurerm/requests/sql/list_sql_servers.rb +3 -3
- data/lib/fog/azurerm/requests/storage/acquire_blob_lease.rb +5 -2
- data/lib/fog/azurerm/requests/storage/acquire_container_lease.rb +5 -2
- data/lib/fog/azurerm/requests/storage/commit_blob_blocks.rb +30 -0
- data/lib/fog/azurerm/requests/storage/compare_container_blobs.rb +148 -0
- data/lib/fog/azurerm/requests/storage/copy_blob.rb +8 -8
- data/lib/fog/azurerm/requests/storage/copy_blob_from_uri.rb +8 -8
- data/lib/fog/azurerm/requests/storage/create_block_blob.rb +108 -0
- data/lib/fog/azurerm/requests/storage/create_container.rb +12 -10
- data/lib/fog/azurerm/requests/storage/create_disk.rb +45 -19
- data/lib/fog/azurerm/requests/storage/create_or_update_recovery_vault.rb +2 -2
- data/lib/fog/azurerm/requests/storage/create_page_blob.rb +31 -0
- data/lib/fog/azurerm/requests/storage/create_storage_account.rb +2 -2
- data/lib/fog/azurerm/requests/storage/delete_blob.rb +10 -5
- data/lib/fog/azurerm/requests/storage/delete_container.rb +6 -2
- data/lib/fog/azurerm/requests/storage/delete_disk.rb +19 -16
- data/lib/fog/azurerm/requests/storage/get_all_backup_jobs.rb +2 -2
- data/lib/fog/azurerm/requests/storage/get_backup_container.rb +2 -2
- data/lib/fog/azurerm/requests/storage/get_backup_item.rb +2 -2
- data/lib/fog/azurerm/requests/storage/get_backup_job_for_vm.rb +1 -1
- data/lib/fog/azurerm/requests/storage/get_backup_protection_policy.rb +2 -2
- data/lib/fog/azurerm/requests/storage/get_blob.rb +163 -0
- data/lib/fog/azurerm/requests/storage/get_blob_http_url.rb +39 -0
- data/lib/fog/azurerm/requests/storage/get_blob_https_url.rb +39 -0
- data/lib/fog/azurerm/requests/storage/get_blob_properties.rb +37 -35
- data/lib/fog/azurerm/requests/storage/get_blob_url.rb +28 -0
- data/lib/fog/azurerm/requests/storage/get_container_acl.rb +30 -0
- data/lib/fog/azurerm/requests/storage/get_container_properties.rb +16 -12
- data/lib/fog/azurerm/requests/storage/get_container_url.rb +34 -0
- data/lib/fog/azurerm/requests/storage/get_recovery_vault.rb +2 -2
- data/lib/fog/azurerm/requests/storage/get_storage_access_keys.rb +4 -3
- data/lib/fog/azurerm/requests/storage/get_storage_account.rb +2 -2
- data/lib/fog/azurerm/requests/storage/list_blobs.rb +110 -24
- data/lib/fog/azurerm/requests/storage/list_containers.rb +46 -23
- data/lib/fog/azurerm/requests/storage/list_recovery_vaults.rb +2 -2
- data/lib/fog/azurerm/requests/storage/list_storage_account_for_rg.rb +2 -2
- data/lib/fog/azurerm/requests/storage/list_storage_accounts.rb +2 -2
- data/lib/fog/azurerm/requests/storage/multipart_save_block_blob.rb +110 -0
- data/lib/fog/azurerm/requests/storage/put_blob_block.rb +30 -0
- data/lib/fog/azurerm/requests/storage/{set_blob_metadata.rb → put_blob_metadata.rb} +7 -3
- data/lib/fog/azurerm/requests/storage/put_blob_pages.rb +30 -0
- data/lib/fog/azurerm/requests/storage/put_blob_properties.rb +31 -0
- data/lib/fog/azurerm/requests/storage/put_container_acl.rb +31 -0
- data/lib/fog/azurerm/requests/storage/{set_container_metadata.rb → put_container_metadata.rb} +7 -3
- data/lib/fog/azurerm/requests/storage/release_blob_lease.rb +4 -1
- data/lib/fog/azurerm/requests/storage/release_container_lease.rb +4 -1
- data/lib/fog/azurerm/requests/storage/save_page_blob.rb +111 -0
- data/lib/fog/azurerm/requests/storage/start_backup.rb +1 -1
- data/lib/fog/azurerm/requests/storage/wait_blob_copy_operation_to_finish.rb +56 -0
- data/lib/fog/azurerm/resources.rb +2 -2
- data/lib/fog/azurerm/storage.rb +33 -19
- data/lib/fog/azurerm/traffic_manager.rb +1 -1
- data/lib/fog/azurerm/utilities/general.rb +70 -3
- data/lib/fog/azurerm/version.rb +1 -1
- data/rake-script.sh +5 -2
- data/test/api_stub/models/application_gateway/gateway.rb +1 -1
- data/test/api_stub/models/compute/server.rb +1 -1
- data/test/api_stub/models/dns/record_set.rb +2 -2
- data/test/api_stub/models/dns/zone.rb +1 -1
- data/test/api_stub/models/network/express_route_circuit.rb +1 -1
- data/test/api_stub/models/network/express_route_circuit_authorization.rb +1 -1
- data/test/api_stub/models/network/express_route_circuit_peering.rb +1 -1
- data/test/api_stub/models/network/express_route_service_provider.rb +1 -1
- data/test/api_stub/models/network/load_balancer.rb +1 -1
- data/test/api_stub/models/network/network_interface.rb +1 -1
- data/test/api_stub/models/network/network_security_group.rb +1 -1
- data/test/api_stub/models/network/network_security_rule.rb +1 -1
- data/test/api_stub/models/network/public_ip.rb +1 -1
- data/test/api_stub/models/network/subnet.rb +1 -1
- data/test/api_stub/models/network/virtual_network.rb +1 -1
- data/test/api_stub/models/network/virtual_network_gateway.rb +1 -1
- data/test/api_stub/models/network/virtual_network_gateway_connection.rb +1 -1
- data/test/api_stub/models/resources/resource.rb +2 -2
- data/test/api_stub/models/resources/resource_group.rb +1 -1
- data/test/api_stub/models/storage/directory.rb +148 -62
- data/test/api_stub/models/storage/file.rb +122 -119
- data/test/api_stub/models/traffic_manager/traffic_manager_end_point.rb +1 -1
- data/test/api_stub/models/traffic_manager/traffic_manager_profile.rb +1 -1
- data/test/api_stub/requests/application_gateway/gateway.rb +2 -2
- data/test/api_stub/requests/compute/availability_set.rb +3 -3
- data/test/api_stub/requests/compute/virtual_machine.rb +9 -9
- data/test/api_stub/requests/dns/record_set.rb +3 -3
- data/test/api_stub/requests/dns/zone.rb +18 -18
- data/test/api_stub/requests/network/express_route_circuit.rb +2 -2
- data/test/api_stub/requests/network/express_route_circuit_authorization.rb +1 -1
- data/test/api_stub/requests/network/express_route_circuit_peering.rb +2 -2
- data/test/api_stub/requests/network/express_route_service_provider.rb +1 -1
- data/test/api_stub/requests/network/load_balancer.rb +2 -2
- data/test/api_stub/requests/network/network_interface.rb +4 -4
- data/test/api_stub/requests/network/network_security_group.rb +3 -3
- data/test/api_stub/requests/network/network_security_rule.rb +2 -2
- data/test/api_stub/requests/network/public_ip.rb +2 -2
- data/test/api_stub/requests/network/subnet.rb +2 -2
- data/test/api_stub/requests/network/virtual_network.rb +2 -2
- data/test/api_stub/requests/network/virtual_network_gateway.rb +2 -2
- data/test/api_stub/requests/network/virtual_network_gateway_connection.rb +3 -3
- data/test/api_stub/requests/resources/resource.rb +2 -2
- data/test/api_stub/requests/resources/resource_group.rb +2 -2
- data/test/api_stub/requests/storage/directory.rb +59 -65
- data/test/api_stub/requests/storage/file.rb +183 -113
- data/test/api_stub/requests/storage/storageaccount.rb +1 -1
- data/test/api_stub/requests/traffic_manager/traffic_manager_endpoint.rb +1 -1
- data/test/api_stub/requests/traffic_manager/traffic_manager_profile.rb +2 -2
- data/test/integration/Virtual_network_gateway_connection.rb +189 -182
- data/test/integration/application_gateway.rb +208 -183
- data/test/integration/availability_set.rb +44 -27
- data/test/integration/blob.rb +293 -169
- data/test/integration/container.rb +93 -42
- data/test/integration/data_disk.rb +57 -46
- data/test/integration/deployment.rb +40 -32
- data/test/integration/express_route_circuit.rb +86 -82
- data/test/integration/external_load_balancer.rb +108 -100
- data/test/integration/internal_load_balancer.rb +115 -106
- data/test/integration/local_network_gateway.rb +46 -39
- data/test/integration/network_interface.rb +119 -107
- data/test/integration/network_security_group.rb +86 -74
- data/test/integration/network_security_rule.rb +65 -57
- data/test/integration/public_ip.rb +50 -42
- data/test/integration/record_set.rb +90 -78
- data/test/integration/resource_group.rb +26 -14
- data/test/integration/resource_tag.rb +56 -45
- data/test/integration/server.rb +152 -135
- data/test/integration/server_custom_image.rb +85 -76
- data/test/integration/sql_server.rb +130 -117
- data/test/integration/storage_account.rb +82 -70
- data/test/integration/subnet.rb +87 -74
- data/test/integration/traffic_manager.rb +86 -74
- data/test/integration/virtual_machine_extension.rb +115 -106
- data/test/integration/virtual_network.rb +121 -100
- data/test/integration/virtual_network_gateway.rb +86 -79
- data/test/integration/virtual_network_gateway_connection_to_express_route.rb +94 -87
- data/test/integration/zone.rb +36 -28
- data/test/models/storage/test_directories.rb +26 -71
- data/test/models/storage/test_directory.rb +111 -58
- data/test/models/storage/test_file.rb +179 -143
- data/test/models/storage/test_files.rb +197 -30
- data/test/models/storage/test_storage_account.rb +1 -1
- data/test/requests/compute/test_attach_data_disk_to_vm.rb +15 -17
- data/test/requests/storage/test_acquire_blob_lease.rb +23 -4
- data/test/requests/storage/test_acquire_container_lease.rb +24 -5
- data/test/requests/storage/test_commit_blob_blocks.rb +34 -0
- data/test/requests/storage/test_compare_container_blobs.rb +36 -0
- data/test/requests/storage/test_copy_blob.rb +22 -3
- data/test/requests/storage/test_copy_blob_from_uri.rb +23 -4
- data/test/requests/storage/test_create_block_blob.rb +80 -0
- data/test/requests/storage/test_create_container.rb +18 -13
- data/test/requests/storage/test_create_disk.rb +57 -4
- data/test/requests/storage/test_create_page_blob.rb +34 -0
- data/test/requests/storage/test_delete_blob.rb +25 -5
- data/test/requests/storage/test_delete_container.rb +21 -9
- data/test/requests/storage/test_delete_disk.rb +14 -7
- data/test/requests/storage/test_get_blob.rb +141 -0
- data/test/requests/storage/test_get_blob_http_url.rb +30 -0
- data/test/requests/storage/test_get_blob_https_url.rb +30 -0
- data/test/requests/storage/test_get_blob_properties.rb +29 -7
- data/test/requests/storage/test_get_blob_url.rb +33 -0
- data/test/requests/storage/test_get_container_acl.rb +37 -0
- data/test/requests/storage/test_get_container_properties.rb +25 -11
- data/test/requests/storage/test_get_container_url.rb +33 -0
- data/test/requests/storage/test_list_blobs.rb +77 -0
- data/test/requests/storage/test_list_containers.rb +38 -7
- data/test/requests/storage/test_multipart_save_block_blob.rb +105 -0
- data/test/requests/storage/test_put_blob_block.rb +34 -0
- data/test/requests/storage/test_put_blob_metadata.rb +36 -0
- data/test/requests/storage/test_put_blob_pages.rb +34 -0
- data/test/requests/storage/test_put_blob_properties.rb +39 -0
- data/test/requests/storage/test_put_container_acl.rb +34 -0
- data/test/requests/storage/test_put_container_metadata.rb +36 -0
- data/test/requests/storage/test_release_blob_lease.rb +20 -2
- data/test/requests/storage/test_release_container_lease.rb +21 -3
- data/test/requests/storage/test_save_page_blob.rb +115 -0
- data/test/requests/storage/test_wait_blob_copy_operation_to_finish.rb +148 -0
- data/test/test_helper.rb +34 -21
- metadata +92 -46
- data/lib/fog/azurerm/requests/storage/check_blob_exist.rb +0 -25
- data/lib/fog/azurerm/requests/storage/compare_blob.rb +0 -73
- data/lib/fog/azurerm/requests/storage/download_blob_to_file.rb +0 -56
- data/lib/fog/azurerm/requests/storage/get_blob_metadata.rb +0 -59
- data/lib/fog/azurerm/requests/storage/get_container_access_control_list.rb +0 -30
- data/lib/fog/azurerm/requests/storage/get_container_metadata.rb +0 -32
- data/lib/fog/azurerm/requests/storage/set_blob_properties.rb +0 -26
- data/lib/fog/azurerm/requests/storage/upload_block_blob_from_file.rb +0 -60
- data/test/requests/storage/test_check_blob_exist.rb +0 -17
- data/test/requests/storage/test_compare_blob.rb +0 -17
- data/test/requests/storage/test_download_blob_to_file.rb +0 -25
- data/test/requests/storage/test_get_blob_metadata.rb +0 -18
- data/test/requests/storage/test_get_container_access_control_list.rb +0 -31
- data/test/requests/storage/test_get_container_metadata.rb +0 -18
- data/test/requests/storage/test_list_blobs_in_container.rb +0 -23
- data/test/requests/storage/test_set_blob_metadata.rb +0 -17
- data/test/requests/storage/test_set_blob_properties.rb +0 -16
- data/test/requests/storage/test_set_container_metadata.rb +0 -17
- data/test/requests/storage/test_upload_block_blob_from_file.rb +0 -23
@@ -1,59 +0,0 @@
|
|
1
|
-
module Fog
|
2
|
-
module Storage
|
3
|
-
class AzureRM
|
4
|
-
# This class provides the actual implementation for service calls.
|
5
|
-
class Real
|
6
|
-
def get_blob_metadata(container_name, name, options = {})
|
7
|
-
msg = "Getting Blob #{name} metadata in container #{container_name}."
|
8
|
-
Fog::Logger.debug msg
|
9
|
-
begin
|
10
|
-
blob = @blob_client.get_blob_metadata(container_name, name, options)
|
11
|
-
rescue Azure::Core::Http::HTTPError => ex
|
12
|
-
raise_azure_exception(ex, msg)
|
13
|
-
end
|
14
|
-
Fog::Logger.debug "Getting metadata of blob #{name} successfully."
|
15
|
-
blob.metadata
|
16
|
-
end
|
17
|
-
end
|
18
|
-
# This class provides the mock implementation for unit tests.
|
19
|
-
class Mock
|
20
|
-
def get_blob_metadata(container_name, name, _options = {})
|
21
|
-
{
|
22
|
-
'name' => name,
|
23
|
-
'snapshot' => nil,
|
24
|
-
'metadata' => {
|
25
|
-
'container-name' => container_name,
|
26
|
-
'blob-name' => name,
|
27
|
-
'category' => 'Images',
|
28
|
-
'resolution' => 'High'
|
29
|
-
},
|
30
|
-
'properties' =>
|
31
|
-
{
|
32
|
-
'last_modified' => 'Mon, 04 Jul 2016 09:30:31 GMT',
|
33
|
-
'etag' => '0x8D3A3EDD7C2B777',
|
34
|
-
'lease_status' => 'unlocked',
|
35
|
-
'lease_state' => 'available',
|
36
|
-
'lease_duration' => nil,
|
37
|
-
'content_length' => 4_194_304,
|
38
|
-
'content_type' => 'application/octet-stream',
|
39
|
-
'content_encoding' => nil,
|
40
|
-
'content_language' => nil,
|
41
|
-
'content_disposition' => nil,
|
42
|
-
'content_md5' => 'tXAohIyxuu/t94Lp/ujeRw==',
|
43
|
-
'cache_control' => nil,
|
44
|
-
'sequence_number' => 0,
|
45
|
-
'blob_type' => 'PageBlob',
|
46
|
-
'copy_id' => '095adc3b-e277-4c3d-97e0-0abca881f60c',
|
47
|
-
'copy_status' => 'success',
|
48
|
-
'copy_source' => 'https://testaccount.blob.core.windows.net/testblob/4m?snapshot=2016-02-04T08%3A35%3A50.3157696Z',
|
49
|
-
'copy_progress' => '4194304/4194304',
|
50
|
-
'copy_completion_time' => 'Thu, 04 Feb 2016 08:35:52 GMT',
|
51
|
-
'copy_status_description' => nil,
|
52
|
-
'accept_ranges' => 0
|
53
|
-
}
|
54
|
-
}
|
55
|
-
end
|
56
|
-
end
|
57
|
-
end
|
58
|
-
end
|
59
|
-
end
|
@@ -1,30 +0,0 @@
|
|
1
|
-
module Fog
|
2
|
-
module Storage
|
3
|
-
class AzureRM
|
4
|
-
# This class provides the actual implementation for service calls.
|
5
|
-
class Real
|
6
|
-
def get_container_access_control_list(name, options = {})
|
7
|
-
msg = "Get container ACL: #{name}."
|
8
|
-
Fog::Logger.debug msg
|
9
|
-
begin
|
10
|
-
container_acl = @blob_client.get_container_acl(name, options)
|
11
|
-
rescue Azure::Core::Http::HTTPError => ex
|
12
|
-
raise_azure_exception(ex, msg)
|
13
|
-
end
|
14
|
-
Fog::Logger.debug "Getting ACL of container #{name} successfully."
|
15
|
-
container_acl
|
16
|
-
end
|
17
|
-
end
|
18
|
-
|
19
|
-
# This class provides the mock implementation for unit tests.
|
20
|
-
class Mock
|
21
|
-
def get_container_access_control_list(*)
|
22
|
-
[{
|
23
|
-
'name' => 'testcontainer1',
|
24
|
-
'public_access_level' => 'blob'
|
25
|
-
}, {}]
|
26
|
-
end
|
27
|
-
end
|
28
|
-
end
|
29
|
-
end
|
30
|
-
end
|
@@ -1,32 +0,0 @@
|
|
1
|
-
module Fog
|
2
|
-
module Storage
|
3
|
-
class AzureRM
|
4
|
-
# This class provides the actual implementation for service calls.
|
5
|
-
class Real
|
6
|
-
def get_container_metadata(name, options = {})
|
7
|
-
msg = "Getting Container #{name} metadata."
|
8
|
-
Fog::Logger.debug msg
|
9
|
-
begin
|
10
|
-
container = @blob_client.get_container_metadata(name, options)
|
11
|
-
rescue Azure::Core::Http::HTTPError => ex
|
12
|
-
raise_azure_exception(ex, msg)
|
13
|
-
end
|
14
|
-
Fog::Logger.debug "Getting metadata of container #{name} successfully."
|
15
|
-
container.metadata
|
16
|
-
end
|
17
|
-
end
|
18
|
-
# This class provides the mock implementation for unit tests.
|
19
|
-
class Mock
|
20
|
-
def get_container_metadata(*)
|
21
|
-
{
|
22
|
-
'container-name' => 'testcontainer1',
|
23
|
-
'created-by' => 'User',
|
24
|
-
'source-machine' => 'Test-machine',
|
25
|
-
'category' => 'guidance',
|
26
|
-
'doctype' => 'textDocuments'
|
27
|
-
}
|
28
|
-
end
|
29
|
-
end
|
30
|
-
end
|
31
|
-
end
|
32
|
-
end
|
@@ -1,26 +0,0 @@
|
|
1
|
-
module Fog
|
2
|
-
module Storage
|
3
|
-
class AzureRM
|
4
|
-
# This class provides the actual implemention for service calls.
|
5
|
-
class Real
|
6
|
-
def set_blob_properties(container_name, name, properties = {})
|
7
|
-
Fog::Logger.debug "Set Blob #{name} properties #{properties.inspect} in container #{container_name}."
|
8
|
-
begin
|
9
|
-
@blob_client.set_blob_properties(container_name, name, properties)
|
10
|
-
Fog::Logger.debug "Setting properties of blob #{name} successfully."
|
11
|
-
true
|
12
|
-
rescue Azure::Core::Http::HTTPError => ex
|
13
|
-
raise "Exception in setting properties of blob #{name}: #{ex.inspect}"
|
14
|
-
end
|
15
|
-
end
|
16
|
-
end
|
17
|
-
# This class provides the mock implementation for unit tests.
|
18
|
-
class Mock
|
19
|
-
def set_blob_properties(container_name, name, properties = {})
|
20
|
-
Fog::Logger.debug "Set Blob #{name} properties #{properties.inspect} in a container #{container_name} successfully."
|
21
|
-
true
|
22
|
-
end
|
23
|
-
end
|
24
|
-
end
|
25
|
-
end
|
26
|
-
end
|
@@ -1,60 +0,0 @@
|
|
1
|
-
module Fog
|
2
|
-
module Storage
|
3
|
-
class AzureRM
|
4
|
-
# This class provides the actual implemention for service calls.
|
5
|
-
class Real
|
6
|
-
SINGLE_BLOB_PUT_THRESHOLD = 32 * 1024 * 1024
|
7
|
-
BLOCK_SIZE = 4 * 1024 * 1024
|
8
|
-
|
9
|
-
def upload_block_blob_from_file(container_name, blob_name, file_path, options = {})
|
10
|
-
Fog::Logger.debug "Uploading file #{file_path} as blob #{blob_name} to the container #{container_name}."
|
11
|
-
if file_path.nil?
|
12
|
-
blob = @blob_client.create_block_blob container_name, blob_name, nil, options
|
13
|
-
Fog::Logger.debug "Blob #{blob_name} created successfully."
|
14
|
-
return blob
|
15
|
-
end
|
16
|
-
|
17
|
-
begin
|
18
|
-
size = ::File.size file_path
|
19
|
-
|
20
|
-
if size <= SINGLE_BLOB_PUT_THRESHOLD
|
21
|
-
blob = @blob_client.create_block_blob container_name, blob_name, IO.binread(::File.expand_path(file_path)), options
|
22
|
-
else
|
23
|
-
blocks = []
|
24
|
-
::File.open file_path, 'rb' do |file|
|
25
|
-
while (read_bytes = file.read(BLOCK_SIZE))
|
26
|
-
block_id = Base64.strict_encode64 random_string(32)
|
27
|
-
@blob_client.put_blob_block container_name, blob_name, block_id, read_bytes, options
|
28
|
-
blocks << [block_id]
|
29
|
-
end
|
30
|
-
end
|
31
|
-
blob = @blob_client.commit_blob_blocks container_name, blob_name, blocks, options
|
32
|
-
end
|
33
|
-
|
34
|
-
Fog::Logger.debug "Uploading #{file_path} successfully."
|
35
|
-
blob
|
36
|
-
rescue IOError => ex
|
37
|
-
raise "Exception in reading #{file_path}: #{ex.inspect}"
|
38
|
-
rescue Azure::Core::Http::HTTPError => ex
|
39
|
-
raise "Exception in uploading #{file_path}: #{ex.inspect}"
|
40
|
-
end
|
41
|
-
end
|
42
|
-
end
|
43
|
-
# This class provides the mock implementation for unit tests.
|
44
|
-
class Mock
|
45
|
-
def upload_block_blob_from_file(_container_name, blob_name, _file_path, _options = {})
|
46
|
-
Fog::Logger.debug 'Blob created successfully.'
|
47
|
-
{
|
48
|
-
'name' => blob_name,
|
49
|
-
'properties' =>
|
50
|
-
{
|
51
|
-
'last_modified' => 'Thu, 28 Jul 2016 06:53:05 GMT',
|
52
|
-
'etag' => '0x8D3B6B3D353FFCA',
|
53
|
-
'content_md5' => 'tXAohIyxuu/t94Lp/ujeRw=='
|
54
|
-
}
|
55
|
-
}
|
56
|
-
end
|
57
|
-
end
|
58
|
-
end
|
59
|
-
end
|
60
|
-
end
|
@@ -1,17 +0,0 @@
|
|
1
|
-
require File.expand_path '../../test_helper', __dir__
|
2
|
-
|
3
|
-
# Storage Blob Class
|
4
|
-
class TestListBlobs < Minitest::Test
|
5
|
-
# This class posesses the test cases for the requests of checking if blob exists.
|
6
|
-
def setup
|
7
|
-
@service = Fog::Storage::AzureRM.new(storage_account_credentials)
|
8
|
-
@blob_client = @service.instance_variable_get(:@blob_client)
|
9
|
-
end
|
10
|
-
|
11
|
-
def test_check_blob_exist_success
|
12
|
-
blob = ApiStub::Requests::Storage::File.get_blob_properties
|
13
|
-
@blob_client.stub :get_blob_properties, blob do
|
14
|
-
assert @service.check_blob_exist('test_container', 'test_blob'), true
|
15
|
-
end
|
16
|
-
end
|
17
|
-
end
|
@@ -1,17 +0,0 @@
|
|
1
|
-
require File.expand_path '../../test_helper', __dir__
|
2
|
-
|
3
|
-
# Storage Blob Class
|
4
|
-
class TestCompareBlobs < Minitest::Test
|
5
|
-
# This class posesses the test cases for the requests of comparing blobs.
|
6
|
-
def setup
|
7
|
-
@service = Fog::Storage::AzureRM.new(storage_account_credentials)
|
8
|
-
@blob_client = @service.instance_variable_get(:@blob_client)
|
9
|
-
@compare_blob_response = ApiStub::Requests::Storage::File.list_blobs_response
|
10
|
-
end
|
11
|
-
|
12
|
-
def test_compare_blobs_success
|
13
|
-
@service.stub :get_identical_blobs_from_containers, @compare_blob_response do
|
14
|
-
assert @service.compare_blob('container1', 'container2'), @compare_blob_response
|
15
|
-
end
|
16
|
-
end
|
17
|
-
end
|
@@ -1,25 +0,0 @@
|
|
1
|
-
require File.expand_path '../../test_helper', __dir__
|
2
|
-
|
3
|
-
# Storage Blob Class
|
4
|
-
class TestDownloadBlob < Minitest::Test
|
5
|
-
# This class posesses the test cases for the requests of getting storage blob properties.
|
6
|
-
def setup
|
7
|
-
@service = Fog::Storage::AzureRM.new(storage_account_credentials)
|
8
|
-
@blob_client = @service.instance_variable_get(:@blob_client)
|
9
|
-
@storage_blob_object = ApiStub::Requests::Storage::File.download_blob_to_file
|
10
|
-
end
|
11
|
-
|
12
|
-
def test_download_blob_with_service_success
|
13
|
-
@blob_client.stub :get_blob, @storage_blob_object do
|
14
|
-
file_path = 'test.dat'
|
15
|
-
assert @service.download_blob_to_file('testcontainer', 'testblob1', file_path)
|
16
|
-
File.delete file_path
|
17
|
-
end
|
18
|
-
end
|
19
|
-
|
20
|
-
def test_download_blob_with_internal_client_success
|
21
|
-
@blob_client.stub :get_blob, @storage_blob_object do
|
22
|
-
assert @blob_client.get_blob('testcontainer', 'testblob1')
|
23
|
-
end
|
24
|
-
end
|
25
|
-
end
|
@@ -1,18 +0,0 @@
|
|
1
|
-
require File.expand_path '../../test_helper', __dir__
|
2
|
-
|
3
|
-
# Blob Class
|
4
|
-
class TestGetBlobMetadata < Minitest::Test
|
5
|
-
# This class posesses the test cases for the requests of Blob service.
|
6
|
-
def setup
|
7
|
-
@service = Fog::Storage::AzureRM.new(storage_account_credentials)
|
8
|
-
@blob_client = @service.instance_variable_get(:@blob_client)
|
9
|
-
@blob_object = ApiStub::Requests::Storage::File.test_get_blob_metadata
|
10
|
-
end
|
11
|
-
|
12
|
-
def test_get_blob_metadata_success
|
13
|
-
metadata_response = ApiStub::Requests::Storage::File.metadata_response
|
14
|
-
@blob_client.stub :get_blob_metadata, @blob_object do
|
15
|
-
assert_equal @service.get_blob_metadata('Test-container', 'Test-blob'), metadata_response
|
16
|
-
end
|
17
|
-
end
|
18
|
-
end
|
@@ -1,31 +0,0 @@
|
|
1
|
-
require File.expand_path '../../test_helper', __dir__
|
2
|
-
|
3
|
-
# Storage Container Class
|
4
|
-
class TestGetContainerACL < Minitest::Test
|
5
|
-
# This class posesses the test cases for the requests of getting storage container properties.
|
6
|
-
def setup
|
7
|
-
@service = Fog::Storage::AzureRM.new(storage_account_credentials)
|
8
|
-
@blob_client = @service.instance_variable_get(:@blob_client)
|
9
|
-
@storage_container_object = ApiStub::Requests::Storage::Directory.get_container_access_control_list
|
10
|
-
end
|
11
|
-
|
12
|
-
def test_get_container_acl_with_service_success
|
13
|
-
@blob_client.stub :get_container_acl, @storage_container_object do
|
14
|
-
assert @service.get_container_access_control_list('testcontainer1')
|
15
|
-
end
|
16
|
-
end
|
17
|
-
|
18
|
-
def test_get_container_acl_with_internal_client_success
|
19
|
-
@blob_client.stub :get_container_acl, @storage_container_object do
|
20
|
-
assert @blob_client.get_container_acl('testcontainer1')
|
21
|
-
end
|
22
|
-
end
|
23
|
-
|
24
|
-
def test_get_container_acl_with_service_exception
|
25
|
-
assert_raises(URI::InvalidURIError) { @service.get_container_access_control_list('testcontainer1#@#@') }
|
26
|
-
end
|
27
|
-
|
28
|
-
def test_get_container_acl_with_internal_client_exception
|
29
|
-
assert_raises(URI::InvalidURIError) { @blob_client.get_container_acl('testcontainer1#@#@') }
|
30
|
-
end
|
31
|
-
end
|
@@ -1,18 +0,0 @@
|
|
1
|
-
require File.expand_path '../../test_helper', __dir__
|
2
|
-
|
3
|
-
# Container Class
|
4
|
-
class TestGetContainerMetadata < Minitest::Test
|
5
|
-
# This class posesses the test cases for the requests of container service.
|
6
|
-
def setup
|
7
|
-
@service = Fog::Storage::AzureRM.new(storage_account_credentials)
|
8
|
-
@blob_client = @service.instance_variable_get(:@blob_client)
|
9
|
-
@container_object = ApiStub::Requests::Storage::Directory.test_get_container_metadata
|
10
|
-
end
|
11
|
-
|
12
|
-
def test_get_container_metadata_success
|
13
|
-
metadata_response = ApiStub::Requests::Storage::Directory.metadata_response
|
14
|
-
@blob_client.stub :get_container_metadata, @container_object do
|
15
|
-
assert_equal @service.get_container_metadata('Test-container'), metadata_response
|
16
|
-
end
|
17
|
-
end
|
18
|
-
end
|
@@ -1,23 +0,0 @@
|
|
1
|
-
require File.expand_path '../../test_helper', __dir__
|
2
|
-
|
3
|
-
# Storage Blob Class
|
4
|
-
class TestListBlobsInContainer < Minitest::Test
|
5
|
-
# This class posesses the test cases for the requests of listing storage containers.
|
6
|
-
def setup
|
7
|
-
@service = Fog::Storage::AzureRM.new(storage_account_credentials)
|
8
|
-
@blob_client = @service.instance_variable_get(:@blob_client)
|
9
|
-
@storage_blob_object = ApiStub::Requests::Storage::File.list_blobs_response
|
10
|
-
end
|
11
|
-
|
12
|
-
def test_list_blobs_with_service_success
|
13
|
-
@blob_client.stub :list_blobs, @storage_blob_object do
|
14
|
-
assert @service.list_blobs('test-container'), @storage_blob_object
|
15
|
-
end
|
16
|
-
end
|
17
|
-
|
18
|
-
def test_list_blobs_with_internal_client_success
|
19
|
-
@blob_client.stub :list_blobs, @storage_blob_object do
|
20
|
-
assert @blob_client.list_blobs('test-container'), @storage_blob_object
|
21
|
-
end
|
22
|
-
end
|
23
|
-
end
|
@@ -1,17 +0,0 @@
|
|
1
|
-
require File.expand_path '../../test_helper', __dir__
|
2
|
-
|
3
|
-
# Blob Class
|
4
|
-
class TestSetBlobMetadata < Minitest::Test
|
5
|
-
# This class posesses the test cases for the requests of blob service.
|
6
|
-
def setup
|
7
|
-
@service = Fog::Storage::AzureRM.new(storage_account_credentials)
|
8
|
-
@blob_client = @service.instance_variable_get(:@blob_client)
|
9
|
-
@metadata = ApiStub::Requests::Storage::File.metadata_response
|
10
|
-
end
|
11
|
-
|
12
|
-
def test_set_blob_metadata_success
|
13
|
-
@blob_client.stub :set_blob_metadata, true do
|
14
|
-
assert @service.set_blob_metadata('Test-container', 'Test-blob', @metadata)
|
15
|
-
end
|
16
|
-
end
|
17
|
-
end
|
@@ -1,16 +0,0 @@
|
|
1
|
-
require File.expand_path '../../test_helper', __dir__
|
2
|
-
|
3
|
-
# Blob Class
|
4
|
-
class TestSetBlobProperties < Minitest::Test
|
5
|
-
# This class posesses the test cases for the requests of blob service.
|
6
|
-
def setup
|
7
|
-
@service = Fog::Storage::AzureRM.new(storage_account_credentials)
|
8
|
-
@blob_client = @service.instance_variable_get(:@blob_client)
|
9
|
-
end
|
10
|
-
|
11
|
-
def test_set_blob_properties_success
|
12
|
-
@blob_client.stub :set_blob_properties, true do
|
13
|
-
assert @service.set_blob_properties('testcontainer', 'testblob10', content_language: 'english', content_disposition: 'attachment')
|
14
|
-
end
|
15
|
-
end
|
16
|
-
end
|
@@ -1,17 +0,0 @@
|
|
1
|
-
require File.expand_path '../../test_helper', __dir__
|
2
|
-
|
3
|
-
# Container Class
|
4
|
-
class TestSetContainerMetadata < Minitest::Test
|
5
|
-
# This class posesses the test cases for the requests of container service.
|
6
|
-
def setup
|
7
|
-
@service = Fog::Storage::AzureRM.new(storage_account_credentials)
|
8
|
-
@blob_client = @service.instance_variable_get(:@blob_client)
|
9
|
-
@metadata = ApiStub::Requests::Storage::Directory.metadata_response
|
10
|
-
end
|
11
|
-
|
12
|
-
def test_set_container_metadata_success
|
13
|
-
@blob_client.stub :set_container_metadata, true do
|
14
|
-
assert @service.set_container_metadata('Test-container', @metadata)
|
15
|
-
end
|
16
|
-
end
|
17
|
-
end
|
@@ -1,23 +0,0 @@
|
|
1
|
-
require File.expand_path '../../test_helper', __dir__
|
2
|
-
|
3
|
-
# Storage Blob Class
|
4
|
-
class TestUploadBlockBlob < Minitest::Test
|
5
|
-
# This class posesses the test cases for the requests of getting storage blob properties.
|
6
|
-
def setup
|
7
|
-
@service = Fog::Storage::AzureRM.new(storage_account_credentials)
|
8
|
-
@blob_client = @service.instance_variable_get(:@blob_client)
|
9
|
-
@storage_blob_object = ApiStub::Requests::Storage::File.upload_block_blob_from_file
|
10
|
-
end
|
11
|
-
|
12
|
-
def test_upload_blob_with_service_success
|
13
|
-
@blob_client.stub :create_block_blob, @storage_blob_object do
|
14
|
-
assert @service.upload_block_blob_from_file('testcontainer', 'testblob1', nil)
|
15
|
-
end
|
16
|
-
end
|
17
|
-
|
18
|
-
def test_upload_blob_with_internal_client_success
|
19
|
-
@blob_client.stub :create_block_blob, @storage_blob_object do
|
20
|
-
assert @blob_client.create_block_blob('testcontainer', 'testblob1')
|
21
|
-
end
|
22
|
-
end
|
23
|
-
end
|