stuartpreston-azure-sdk-for-ruby 0.7.1 → 0.7.2
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/.gitignore +11 -11
- data/.travis.yml +10 -10
- data/ChangeLog.txt +70 -68
- data/Gemfile +15 -15
- data/README.md +618 -618
- data/Rakefile +133 -133
- data/azure.gemspec +44 -44
- data/lib/azure.rb +52 -52
- data/lib/azure/base_management/affinity_group.rb +32 -32
- data/lib/azure/base_management/base_management_service.rb +304 -304
- data/lib/azure/base_management/location.rb +27 -27
- data/lib/azure/base_management/management_http_request.rb +171 -171
- data/lib/azure/base_management/serialization.rb +129 -129
- data/lib/azure/base_management/sql_management_http_request.rb +45 -45
- data/lib/azure/blob/blob.rb +31 -31
- data/lib/azure/blob/blob_service.rb +1423 -1423
- data/lib/azure/blob/block.rb +30 -30
- data/lib/azure/blob/container.rb +31 -31
- data/lib/azure/blob/serialization.rb +284 -284
- data/lib/azure/cloud_service_management/cloud_service.rb +38 -38
- data/lib/azure/cloud_service_management/cloud_service_management_service.rb +140 -140
- data/lib/azure/cloud_service_management/serialization.rb +117 -117
- data/lib/azure/core.rb +39 -39
- data/lib/azure/core/auth/authorizer.rb +36 -36
- data/lib/azure/core/auth/shared_key.rb +110 -110
- data/lib/azure/core/auth/shared_key_lite.rb +48 -48
- data/lib/azure/core/auth/signer.rb +48 -48
- data/lib/azure/core/configuration.rb +211 -211
- data/lib/azure/core/error.rb +22 -22
- data/lib/azure/core/filtered_service.rb +43 -43
- data/lib/azure/core/http/debug_filter.rb +35 -35
- data/lib/azure/core/http/http_error.rb +88 -88
- data/lib/azure/core/http/http_filter.rb +52 -52
- data/lib/azure/core/http/http_request.rb +157 -157
- data/lib/azure/core/http/http_response.rb +140 -140
- data/lib/azure/core/http/retry_policy.rb +73 -73
- data/lib/azure/core/http/signer_filter.rb +33 -33
- data/lib/azure/core/service.rb +62 -62
- data/lib/azure/core/signed_service.rb +42 -42
- data/lib/azure/core/utility.rb +190 -190
- data/lib/azure/queue/message.rb +29 -29
- data/lib/azure/queue/queue.rb +28 -28
- data/lib/azure/queue/queue_service.rb +567 -567
- data/lib/azure/queue/serialization.rb +106 -106
- data/lib/azure/service/access_policy.rb +25 -25
- data/lib/azure/service/cors.rb +11 -11
- data/lib/azure/service/cors_rule.rb +15 -15
- data/lib/azure/service/enumeration_results.rb +20 -20
- data/lib/azure/service/logging.rb +31 -31
- data/lib/azure/service/metrics.rb +30 -30
- data/lib/azure/service/retention_policy.rb +24 -24
- data/lib/azure/service/serialization.rb +297 -297
- data/lib/azure/service/signed_identifier.rb +29 -29
- data/lib/azure/service/storage_service.rb +82 -82
- data/lib/azure/service/storage_service_properties.rb +37 -37
- data/lib/azure/service_bus/action.rb +21 -21
- data/lib/azure/service_bus/auth/wrap_service.rb +88 -88
- data/lib/azure/service_bus/auth/wrap_signer.rb +68 -68
- data/lib/azure/service_bus/brokered_message.rb +123 -123
- data/lib/azure/service_bus/brokered_message_serializer.rb +159 -159
- data/lib/azure/service_bus/correlation_filter.rb +45 -45
- data/lib/azure/service_bus/empty_rule_action.rb +29 -29
- data/lib/azure/service_bus/false_filter.rb +38 -38
- data/lib/azure/service_bus/filter.rb +21 -21
- data/lib/azure/service_bus/interval.rb +103 -103
- data/lib/azure/service_bus/queue.rb +229 -229
- data/lib/azure/service_bus/relay.rb +87 -87
- data/lib/azure/service_bus/resource.rb +108 -108
- data/lib/azure/service_bus/rule.rb +97 -97
- data/lib/azure/service_bus/rule_aspect.rb +34 -34
- data/lib/azure/service_bus/serialization.rb +161 -161
- data/lib/azure/service_bus/service_bus_service.rb +896 -896
- data/lib/azure/service_bus/sql_filter.rb +50 -50
- data/lib/azure/service_bus/sql_rule_action.rb +50 -50
- data/lib/azure/service_bus/subscription.rb +183 -183
- data/lib/azure/service_bus/topic.rb +186 -186
- data/lib/azure/service_bus/true_filter.rb +38 -38
- data/lib/azure/sql_database_management/serialization.rb +111 -111
- data/lib/azure/sql_database_management/sql_database.rb +31 -31
- data/lib/azure/sql_database_management/sql_database_management_service.rb +200 -200
- data/lib/azure/storage_management/serialization.rb +184 -184
- data/lib/azure/storage_management/storage_account.rb +40 -40
- data/lib/azure/storage_management/storage_management_service.rb +166 -166
- data/lib/azure/table/auth/shared_key.rb +92 -92
- data/lib/azure/table/auth/shared_key_lite.rb +44 -44
- data/lib/azure/table/batch.rb +329 -329
- data/lib/azure/table/batch_response.rb +118 -118
- data/lib/azure/table/edmtype.rb +126 -126
- data/lib/azure/table/entity.rb +30 -30
- data/lib/azure/table/guid.rb +23 -23
- data/lib/azure/table/query.rb +111 -111
- data/lib/azure/table/serialization.rb +107 -107
- data/lib/azure/table/table_service.rb +559 -559
- data/lib/azure/version.rb +31 -31
- data/lib/azure/virtual_machine_image_management/serialization.rb +66 -66
- data/lib/azure/virtual_machine_image_management/virtual_machine_disk.rb +25 -25
- data/lib/azure/virtual_machine_image_management/virtual_machine_image.rb +25 -25
- data/lib/azure/virtual_machine_image_management/virtual_machine_image_management_service.rb +94 -94
- data/lib/azure/virtual_machine_management/serialization.rb +462 -462
- data/lib/azure/virtual_machine_management/virtual_machine.rb +45 -45
- data/lib/azure/virtual_machine_management/virtual_machine_management_service.rb +588 -588
- data/lib/azure/virtual_network_management/serialization.rb +190 -190
- data/lib/azure/virtual_network_management/virtual_network.rb +37 -37
- data/lib/azure/virtual_network_management/virtual_network_management_service.rb +109 -109
- data/test/fixtures/affinity_group.xml +33 -33
- data/test/fixtures/all_containers.xml +20 -20
- data/test/fixtures/all_tables.xml +22 -22
- data/test/fixtures/certificate.pem +21 -21
- data/test/fixtures/container_acl.xml +11 -11
- data/test/fixtures/create_sql_database_server.xml +1 -1
- data/test/fixtures/create_storage_desc_error.xml +5 -5
- data/test/fixtures/create_storage_extendedprop_error.xml +8 -8
- data/test/fixtures/create_storage_extendedpropname_error.xml +6 -6
- data/test/fixtures/create_storage_full_error.xml +6 -6
- data/test/fixtures/create_storage_label_error.xml +5 -5
- data/test/fixtures/create_storage_location_error.xml +5 -5
- data/test/fixtures/create_storage_name_error.xml +6 -6
- data/test/fixtures/create_table_response_entry.xml +15 -15
- data/test/fixtures/delete_storage_container_error.xml +5 -5
- data/test/fixtures/delete_storage_error.xml +5 -5
- data/test/fixtures/deployment_error.xml +5 -5
- data/test/fixtures/get_storage_account_error.xml +5 -5
- data/test/fixtures/get_storage_account_properties.xml +31 -31
- data/test/fixtures/get_storage_account_properties_new.xml +31 -31
- data/test/fixtures/http_error.xml +5 -5
- data/test/fixtures/insert_entity_response_entry.xml +25 -25
- data/test/fixtures/list_affinity_groups.xml +22 -22
- data/test/fixtures/list_blobs.xml +120 -120
- data/test/fixtures/list_block_all_with_none_committed.xml +21 -21
- data/test/fixtures/list_blocks_all.xml +22 -22
- data/test/fixtures/list_blocks_committed.xml +12 -12
- data/test/fixtures/list_cloud_services.xml +38 -38
- data/test/fixtures/list_containers.xml +37 -37
- data/test/fixtures/list_firewall_management_endpoint.xml +27 -27
- data/test/fixtures/list_images.xml +110 -110
- data/test/fixtures/list_locations.xml +62 -62
- data/test/fixtures/list_page_ranges.xml +10 -10
- data/test/fixtures/list_sql_database.xml +36 -36
- data/test/fixtures/list_sql_server_firewall.xml +23 -23
- data/test/fixtures/list_storage_account_single.xml +24 -24
- data/test/fixtures/list_storage_accounts.xml +45 -45
- data/test/fixtures/list_virtual_networks.xml +92 -92
- data/test/fixtures/logging.xml +11 -11
- data/test/fixtures/management_certificate.pem +55 -55
- data/test/fixtures/messages.xml +12 -12
- data/test/fixtures/metrics.xml +10 -10
- data/test/fixtures/privatekey.key +28 -28
- data/test/fixtures/query_entities_empty_response.xml +7 -7
- data/test/fixtures/query_entities_response.xml +45 -45
- data/test/fixtures/queue_service_properties.xml +22 -22
- data/test/fixtures/queue_service_properties_original.xml +19 -19
- data/test/fixtures/queues.xml +16 -16
- data/test/fixtures/retention_policy.xml +5 -5
- data/test/fixtures/sb_default_create_queue_response.xml +23 -23
- data/test/fixtures/sb_default_create_relay_response.xml +15 -15
- data/test/fixtures/sb_default_create_topic_response.xml +18 -18
- data/test/fixtures/sb_get_access_token_response.txt +1 -1
- data/test/fixtures/sb_queues_runtime_peek_message_response_headers.txt +9 -9
- data/test/fixtures/storage_service_properties.xml +54 -54
- data/test/fixtures/update_storage_account.xml +16 -16
- data/test/fixtures/update_storage_error.xml +4 -4
- data/test/fixtures/updated_storage_accounts.xml +52 -52
- data/test/fixtures/virtual_machine.xml +113 -113
- data/test/fixtures/windows_virtual_machine.xml +106 -106
- data/test/integration/affinity_group/Affinity_test.rb +55 -55
- data/test/integration/affinity_group/Create_Affinity_test.rb +63 -63
- data/test/integration/affinity_group/Delete_Affinity_test.rb +56 -56
- data/test/integration/affinity_group/List_Affinity_test.rb +41 -41
- data/test/integration/affinity_group/Update_Affinity_test.rb +82 -82
- data/test/integration/blob/blob_gb18030_test.rb +199 -199
- data/test/integration/blob/blob_metadata_test.rb +75 -75
- data/test/integration/blob/blob_pages_test.rb +119 -119
- data/test/integration/blob/blob_properties_test.rb +77 -77
- data/test/integration/blob/block_blob_test.rb +254 -254
- data/test/integration/blob/container/container_acl_test.rb +69 -69
- data/test/integration/blob/container/container_metadata_test.rb +50 -50
- data/test/integration/blob/container/create_container_test.rb +60 -60
- data/test/integration/blob/container/delete_container_test.rb +39 -39
- data/test/integration/blob/container/get_container_properties_test.rb +48 -48
- data/test/integration/blob/container/list_containers_test.rb +79 -79
- data/test/integration/blob/container/root_container_test.rb +53 -53
- data/test/integration/blob/copy_blob_test.rb +113 -113
- data/test/integration/blob/create_blob_snapshot_test.rb +80 -80
- data/test/integration/blob/create_page_blob_test.rb +83 -83
- data/test/integration/blob/delete_blob_test.rb +159 -159
- data/test/integration/blob/get_blob_test.rb +65 -65
- data/test/integration/blob/informative_errors_test.rb +38 -38
- data/test/integration/blob/lease/acquire_lease_test.rb +36 -36
- data/test/integration/blob/lease/break_lease_test.rb +40 -40
- data/test/integration/blob/lease/release_lease_test.rb +40 -40
- data/test/integration/blob/lease/renew_lease_test.rb +42 -42
- data/test/integration/blob/list_blobs_test.rb +113 -113
- data/test/integration/cloud_service/Cloud_Create_test.rb +44 -44
- data/test/integration/cloud_service/Cloud_Delete_test.rb +44 -44
- data/test/integration/database/create_sql_server_firewall_test.rb +86 -86
- data/test/integration/database/create_sql_server_test.rb +53 -53
- data/test/integration/database/delete_sql_server_firewall_test.rb +70 -70
- data/test/integration/database/delete_sql_server_test.rb +58 -58
- data/test/integration/database/list_sql_server_firewall_test.rb +45 -45
- data/test/integration/database/list_sql_servers_test.rb +44 -44
- data/test/integration/database/reset_password_sql_server_test.rb +55 -55
- data/test/integration/location/Location_List_test.rb +39 -39
- data/test/integration/queue/clear_messages_test.rb +42 -42
- data/test/integration/queue/create_message_test.rb +75 -75
- data/test/integration/queue/create_queue_test.rb +50 -50
- data/test/integration/queue/delete_message_test.rb +67 -67
- data/test/integration/queue/delete_queue_test.rb +45 -45
- data/test/integration/queue/informative_errors_test.rb +41 -41
- data/test/integration/queue/list_messages_encoded_test.rb +79 -79
- data/test/integration/queue/list_messages_test.rb +79 -79
- data/test/integration/queue/list_queues_test.rb +44 -44
- data/test/integration/queue/peek_messages_test.rb +59 -59
- data/test/integration/queue/queue_gb18030_test.rb +131 -131
- data/test/integration/queue/queue_metadata_test.rb +40 -40
- data/test/integration/queue/update_message_test.rb +74 -74
- data/test/integration/service_bus/informative_errors_test.rb +36 -36
- data/test/integration/service_bus/queues_scenario_test.rb +200 -200
- data/test/integration/service_bus/queues_test.rb +265 -265
- data/test/integration/service_bus/relay_test.rb +131 -131
- data/test/integration/service_bus/rules_test.rb +144 -144
- data/test/integration/service_bus/sb_queue_gb18030_test.rb +182 -182
- data/test/integration/service_bus/scenario_test.rb +101 -101
- data/test/integration/service_bus/subscriptions_test.rb +211 -211
- data/test/integration/service_bus/topics_scenario_test.rb +406 -406
- data/test/integration/service_bus/topics_test.rb +129 -129
- data/test/integration/storage_management/storage_management_test.rb +160 -160
- data/test/integration/table/create_table_test.rb +35 -35
- data/test/integration/table/delete_entity_batch_test.rb +106 -106
- data/test/integration/table/delete_entity_test.rb +93 -93
- data/test/integration/table/delete_table_test.rb +39 -39
- data/test/integration/table/get_table_test.rb +36 -36
- data/test/integration/table/informative_errors_test.rb +38 -38
- data/test/integration/table/insert_entity_batch_test.rb +99 -99
- data/test/integration/table/insert_entity_test.rb +87 -87
- data/test/integration/table/insert_or_merge_entity_batch_test.rb +158 -158
- data/test/integration/table/insert_or_merge_entity_test.rb +142 -142
- data/test/integration/table/insert_or_replace_entity_batch_test.rb +151 -151
- data/test/integration/table/insert_or_replace_entity_test.rb +136 -136
- data/test/integration/table/merge_entity_batch_test.rb +127 -127
- data/test/integration/table/merge_entity_test.rb +112 -112
- data/test/integration/table/query_entities_test.rb +194 -194
- data/test/integration/table/query_tables_test.rb +42 -42
- data/test/integration/table/query_test.rb +250 -250
- data/test/integration/table/table_acl_test.rb +51 -51
- data/test/integration/table/table_gb18030_test.rb +355 -355
- data/test/integration/table/update_entity_batch_test.rb +148 -148
- data/test/integration/table/update_entity_test.rb +130 -130
- data/test/integration/test_helper.rb +42 -42
- data/test/integration/vm/VM_Create_test.rb +260 -260
- data/test/integration/vm/VM_Delete_test.rb +55 -55
- data/test/integration/vm/VM_Operations_test.rb +173 -173
- data/test/integration/vm_image/virtual_machine_disk_test.rb +37 -37
- data/test/integration/vm_image/virtual_machine_image_test.rb +36 -36
- data/test/integration/vnet/Virtual_Network_Create_test.rb +122 -122
- data/test/integration/vnet/Virtual_Network_list_test.rb +53 -53
- data/test/support/env.rb +19 -19
- data/test/support/fixtures.rb +36 -36
- data/test/support/name_generator.rb +168 -168
- data/test/support/stubs.rb +42 -42
- data/test/support/virtual_machine_name_generator.rb +102 -102
- data/test/support/virtual_network_helper.rb +73 -73
- data/test/test_helper.rb +53 -53
- data/test/unit/affinity_group/affinity_group_test.rb +192 -192
- data/test/unit/affinity_group/serialization_test.rb +88 -88
- data/test/unit/base_management/location_test.rb +57 -57
- data/test/unit/blob/blob_service_test.rb +1946 -1946
- data/test/unit/cloud_service_management/cloud_service_management_service_test.rb +94 -94
- data/test/unit/cloud_service_management/serialization_test.rb +169 -169
- data/test/unit/core/auth/shared_key_lite_test.rb +51 -51
- data/test/unit/core/auth/shared_key_test.rb +58 -58
- data/test/unit/core/auth/signer_test.rb +30 -30
- data/test/unit/core/http/http_error_test.rb +57 -57
- data/test/unit/core/http/http_request_test.rb +66 -66
- data/test/unit/core/http/http_response_test.rb +45 -45
- data/test/unit/core/http/retry_policy_test.rb +23 -23
- data/test/unit/database/serialization_test.rb +97 -97
- data/test/unit/database/sql_database_server_service_test.rb +288 -288
- data/test/unit/service/serialization_test.rb +532 -532
- data/test/unit/service/storage_service_test.rb +292 -292
- data/test/unit/storage_management/serialization_test.rb +232 -232
- data/test/unit/storage_management/storage_management_service_test.rb +261 -261
- data/test/unit/table/edmtype_test.rb +107 -107
- data/test/unit/virtual_machine_image_management/serialization_test.rb +35 -35
- data/test/unit/virtual_machine_image_management/virtual_machine_image_management_service_test.rb +65 -65
- data/test/unit/virtual_machine_management/serialization_test.rb +258 -258
- data/test/unit/virtual_machine_management/virtual_machine_management_service_test.rb +440 -440
- data/test/unit/vnet/serialization_test.rb +187 -187
- data/test/unit/vnet/virtual_network_management_service_test.rb +131 -131
- metadata +34 -27
@@ -1,109 +1,109 @@
|
|
1
|
-
#-------------------------------------------------------------------------
|
2
|
-
# Copyright 2013 Microsoft Open Technologies, Inc.
|
3
|
-
#
|
4
|
-
# Licensed under the Apache License, Version 2.0 (the "License");
|
5
|
-
# you may not use this file except in compliance with the License.
|
6
|
-
# You may obtain a copy of the License at
|
7
|
-
# http://www.apache.org/licenses/LICENSE-2.0
|
8
|
-
#
|
9
|
-
# Unless required by applicable law or agreed to in writing, software
|
10
|
-
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
-
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
-
# See the License for the specific language governing permissions and
|
13
|
-
# limitations under the License.
|
14
|
-
#--------------------------------------------------------------------------
|
15
|
-
require 'azure/virtual_network_management/serialization'
|
16
|
-
|
17
|
-
module Azure
|
18
|
-
module VirtualNetworkManagement
|
19
|
-
# VirtualNetworkManagementService
|
20
|
-
class VirtualNetworkManagementService < BaseManagementService
|
21
|
-
def initialize
|
22
|
-
super()
|
23
|
-
end
|
24
|
-
|
25
|
-
# Public: Gets a list of virtual network services available under the
|
26
|
-
# current subscription.
|
27
|
-
#
|
28
|
-
# See http://msdn.microsoft.com/en-us/library/windowsazure/jj157185.aspx
|
29
|
-
#
|
30
|
-
# Returns an array of
|
31
|
-
# Azure::VirtualNetworkServiceManagement::VirtualNetwork objects
|
32
|
-
def list_virtual_networks
|
33
|
-
request_path = '/services/networking/virtualnetwork'
|
34
|
-
request = ManagementHttpRequest.new(:get, request_path, nil)
|
35
|
-
response = request.call
|
36
|
-
Serialization.virtual_network_from_xml(response)
|
37
|
-
end
|
38
|
-
|
39
|
-
def set_network_configuration(*args)
|
40
|
-
if args.length == 1
|
41
|
-
set_virtual_network_using_xml(args[0])
|
42
|
-
elsif args.length == 4 || args.length == 3
|
43
|
-
args[3] ||= { subnet: [], dns: [] }
|
44
|
-
set_virtual_network(args[0], args[1], args[2], args[3])
|
45
|
-
else
|
46
|
-
raise 'Wrong number of arguments'
|
47
|
-
end
|
48
|
-
end
|
49
|
-
|
50
|
-
private
|
51
|
-
|
52
|
-
# Private: Configures virtual network.
|
53
|
-
#
|
54
|
-
# ==== Attributes
|
55
|
-
#
|
56
|
-
# * +vnet+ - String. The name of the virtual network.
|
57
|
-
# * +affinity_group+ - String. The name of the affinity group.
|
58
|
-
# * +address_space+ - Array. Contains a collection of Classless
|
59
|
-
# Inter-Domain Routing (CIDR) identifiers that specify the address
|
60
|
-
# space that you will use for your local network site
|
61
|
-
# * +options+ - Hash. Optional parameters.
|
62
|
-
#
|
63
|
-
# ==== Options
|
64
|
-
#
|
65
|
-
# Accepted key/value pairs in options parameter are:
|
66
|
-
# * +:subnets+ - Array. A hash of the name/value pairs.
|
67
|
-
# Contains the name, IPv4 address and Cidr of the DNS server.
|
68
|
-
# (optional)
|
69
|
-
# * +dns_servers+ - Array. A hash of the name/value pairs.
|
70
|
-
# Contains the name and IPv4 address of the DNS server. (optional)
|
71
|
-
#
|
72
|
-
# See http://msdn.microsoft.com/en-us/library/windowsazure/jj157181.aspx
|
73
|
-
#
|
74
|
-
# Returns None
|
75
|
-
def set_virtual_network(vnet,
|
76
|
-
affinity_group,
|
77
|
-
address_space,
|
78
|
-
options = {
|
79
|
-
subnet: [],
|
80
|
-
dns: []
|
81
|
-
})
|
82
|
-
request_path = '/services/networking/media'
|
83
|
-
body = Serialization.virtual_network_to_xml(vnet,
|
84
|
-
affinity_group,
|
85
|
-
address_space,
|
86
|
-
options)
|
87
|
-
request = ManagementHttpRequest.new(:put, request_path, body)
|
88
|
-
request.headers['Content-Type'] = 'text/plain'
|
89
|
-
Loggerx.info "Creating virtual network #{vnet}."
|
90
|
-
request.call
|
91
|
-
end
|
92
|
-
|
93
|
-
def set_virtual_network_using_xml(file)
|
94
|
-
request_path = '/services/networking/media'
|
95
|
-
if file !~ /(xml)$/
|
96
|
-
raise 'File expects a .xml extension.'
|
97
|
-
elsif !File.exist?(file)
|
98
|
-
raise "Could not read from file '#{file}'."
|
99
|
-
else
|
100
|
-
body = File.read(file)
|
101
|
-
end
|
102
|
-
request = ManagementHttpRequest.new(:put, request_path, body)
|
103
|
-
request.headers['Content-Type'] = 'text/plain'
|
104
|
-
Loggerx.info 'Creating virtual network.'
|
105
|
-
request.call
|
106
|
-
end
|
107
|
-
end
|
108
|
-
end
|
109
|
-
end
|
1
|
+
#-------------------------------------------------------------------------
|
2
|
+
# Copyright 2013 Microsoft Open Technologies, Inc.
|
3
|
+
#
|
4
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
5
|
+
# you may not use this file except in compliance with the License.
|
6
|
+
# You may obtain a copy of the License at
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
8
|
+
#
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
+
# See the License for the specific language governing permissions and
|
13
|
+
# limitations under the License.
|
14
|
+
#--------------------------------------------------------------------------
|
15
|
+
require 'azure/virtual_network_management/serialization'
|
16
|
+
|
17
|
+
module Azure
|
18
|
+
module VirtualNetworkManagement
|
19
|
+
# VirtualNetworkManagementService
|
20
|
+
class VirtualNetworkManagementService < BaseManagementService
|
21
|
+
def initialize
|
22
|
+
super()
|
23
|
+
end
|
24
|
+
|
25
|
+
# Public: Gets a list of virtual network services available under the
|
26
|
+
# current subscription.
|
27
|
+
#
|
28
|
+
# See http://msdn.microsoft.com/en-us/library/windowsazure/jj157185.aspx
|
29
|
+
#
|
30
|
+
# Returns an array of
|
31
|
+
# Azure::VirtualNetworkServiceManagement::VirtualNetwork objects
|
32
|
+
def list_virtual_networks
|
33
|
+
request_path = '/services/networking/virtualnetwork'
|
34
|
+
request = ManagementHttpRequest.new(:get, request_path, nil)
|
35
|
+
response = request.call
|
36
|
+
Serialization.virtual_network_from_xml(response)
|
37
|
+
end
|
38
|
+
|
39
|
+
def set_network_configuration(*args)
|
40
|
+
if args.length == 1
|
41
|
+
set_virtual_network_using_xml(args[0])
|
42
|
+
elsif args.length == 4 || args.length == 3
|
43
|
+
args[3] ||= { subnet: [], dns: [] }
|
44
|
+
set_virtual_network(args[0], args[1], args[2], args[3])
|
45
|
+
else
|
46
|
+
raise 'Wrong number of arguments'
|
47
|
+
end
|
48
|
+
end
|
49
|
+
|
50
|
+
private
|
51
|
+
|
52
|
+
# Private: Configures virtual network.
|
53
|
+
#
|
54
|
+
# ==== Attributes
|
55
|
+
#
|
56
|
+
# * +vnet+ - String. The name of the virtual network.
|
57
|
+
# * +affinity_group+ - String. The name of the affinity group.
|
58
|
+
# * +address_space+ - Array. Contains a collection of Classless
|
59
|
+
# Inter-Domain Routing (CIDR) identifiers that specify the address
|
60
|
+
# space that you will use for your local network site
|
61
|
+
# * +options+ - Hash. Optional parameters.
|
62
|
+
#
|
63
|
+
# ==== Options
|
64
|
+
#
|
65
|
+
# Accepted key/value pairs in options parameter are:
|
66
|
+
# * +:subnets+ - Array. A hash of the name/value pairs.
|
67
|
+
# Contains the name, IPv4 address and Cidr of the DNS server.
|
68
|
+
# (optional)
|
69
|
+
# * +dns_servers+ - Array. A hash of the name/value pairs.
|
70
|
+
# Contains the name and IPv4 address of the DNS server. (optional)
|
71
|
+
#
|
72
|
+
# See http://msdn.microsoft.com/en-us/library/windowsazure/jj157181.aspx
|
73
|
+
#
|
74
|
+
# Returns None
|
75
|
+
def set_virtual_network(vnet,
|
76
|
+
affinity_group,
|
77
|
+
address_space,
|
78
|
+
options = {
|
79
|
+
subnet: [],
|
80
|
+
dns: []
|
81
|
+
})
|
82
|
+
request_path = '/services/networking/media'
|
83
|
+
body = Serialization.virtual_network_to_xml(vnet,
|
84
|
+
affinity_group,
|
85
|
+
address_space,
|
86
|
+
options)
|
87
|
+
request = ManagementHttpRequest.new(:put, request_path, body)
|
88
|
+
request.headers['Content-Type'] = 'text/plain'
|
89
|
+
Loggerx.info "Creating virtual network #{vnet}."
|
90
|
+
request.call
|
91
|
+
end
|
92
|
+
|
93
|
+
def set_virtual_network_using_xml(file)
|
94
|
+
request_path = '/services/networking/media'
|
95
|
+
if file !~ /(xml)$/
|
96
|
+
raise 'File expects a .xml extension.'
|
97
|
+
elsif !File.exist?(file)
|
98
|
+
raise "Could not read from file '#{file}'."
|
99
|
+
else
|
100
|
+
body = File.read(file)
|
101
|
+
end
|
102
|
+
request = ManagementHttpRequest.new(:put, request_path, body)
|
103
|
+
request.headers['Content-Type'] = 'text/plain'
|
104
|
+
Loggerx.info 'Creating virtual network.'
|
105
|
+
request.call
|
106
|
+
end
|
107
|
+
end
|
108
|
+
end
|
109
|
+
end
|
@@ -1,33 +1,33 @@
|
|
1
|
-
<?xml version="1.0"?>
|
2
|
-
<AffinityGroup xmlns="http://schemas.microsoft.com/windowsazure" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
|
3
|
-
<Name>AG1</Name>
|
4
|
-
<Label>QUcx\n==</Label>
|
5
|
-
<Description>First Affinity Group</Description>
|
6
|
-
<Location>West US</Location>
|
7
|
-
<HostedServices>
|
8
|
-
<HostedService>
|
9
|
-
<Url>https://management.core.windows.net/abcd/services/hostedservices/vnet-1</Url>
|
10
|
-
<ServiceName>vnet-1</ServiceName>
|
11
|
-
<HostedServiceProperties>
|
12
|
-
<Description i:nil="true"/>
|
13
|
-
<AffinityGroup>Test</AffinityGroup>
|
14
|
-
<Label>dm5ldC0x</Label>
|
15
|
-
<Status>Created</Status>
|
16
|
-
<DateCreated>2013-09-11T06:06:42Z</DateCreated>
|
17
|
-
<DateLastModified>2013-09-11T06:06:49Z</DateLastModified>
|
18
|
-
<ExtendedProperties/>
|
19
|
-
</HostedServiceProperties>
|
20
|
-
</HostedService>
|
21
|
-
</HostedServices>
|
22
|
-
<StorageServices>
|
23
|
-
<StorageService>
|
24
|
-
<Url>https://management.core.windows.net/abcd/services/storageservices/mystorageservice</Url>
|
25
|
-
<ServiceName>mystorageservice</ServiceName>
|
26
|
-
<ExtendedProperties/>
|
27
|
-
</StorageService>
|
28
|
-
</StorageServices>
|
29
|
-
<Capabilities>
|
30
|
-
<Capability>PersistentVMRole</Capability>
|
31
|
-
<Capability>HighMemory</Capability>
|
32
|
-
</Capabilities>
|
33
|
-
</AffinityGroup>
|
1
|
+
<?xml version="1.0"?>
|
2
|
+
<AffinityGroup xmlns="http://schemas.microsoft.com/windowsazure" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
|
3
|
+
<Name>AG1</Name>
|
4
|
+
<Label>QUcx\n==</Label>
|
5
|
+
<Description>First Affinity Group</Description>
|
6
|
+
<Location>West US</Location>
|
7
|
+
<HostedServices>
|
8
|
+
<HostedService>
|
9
|
+
<Url>https://management.core.windows.net/abcd/services/hostedservices/vnet-1</Url>
|
10
|
+
<ServiceName>vnet-1</ServiceName>
|
11
|
+
<HostedServiceProperties>
|
12
|
+
<Description i:nil="true"/>
|
13
|
+
<AffinityGroup>Test</AffinityGroup>
|
14
|
+
<Label>dm5ldC0x</Label>
|
15
|
+
<Status>Created</Status>
|
16
|
+
<DateCreated>2013-09-11T06:06:42Z</DateCreated>
|
17
|
+
<DateLastModified>2013-09-11T06:06:49Z</DateLastModified>
|
18
|
+
<ExtendedProperties/>
|
19
|
+
</HostedServiceProperties>
|
20
|
+
</HostedService>
|
21
|
+
</HostedServices>
|
22
|
+
<StorageServices>
|
23
|
+
<StorageService>
|
24
|
+
<Url>https://management.core.windows.net/abcd/services/storageservices/mystorageservice</Url>
|
25
|
+
<ServiceName>mystorageservice</ServiceName>
|
26
|
+
<ExtendedProperties/>
|
27
|
+
</StorageService>
|
28
|
+
</StorageServices>
|
29
|
+
<Capabilities>
|
30
|
+
<Capability>PersistentVMRole</Capability>
|
31
|
+
<Capability>HighMemory</Capability>
|
32
|
+
</Capabilities>
|
33
|
+
</AffinityGroup>
|
@@ -1,20 +1,20 @@
|
|
1
|
-
<?xml version="1.0" encoding="utf-8"?>
|
2
|
-
<EnumerationResults AccountName="http://myaccount.blob.core.windows.net">
|
3
|
-
<Prefix>string-value</Prefix>
|
4
|
-
<Marker>string-value</Marker>
|
5
|
-
<MaxResults>int-value</MaxResults>
|
6
|
-
<Containers>
|
7
|
-
<Container>
|
8
|
-
<Name>container-name</Name>
|
9
|
-
<Url>http://myaccount.blob.core.windows.net/container-name</Url>
|
10
|
-
<Properties>
|
11
|
-
<Last-Modified>date/time-value</Last-Modified>
|
12
|
-
<Etag>etag</Etag>
|
13
|
-
</Properties>
|
14
|
-
<Metadata>
|
15
|
-
<metadata-name>value</metadata-name>
|
16
|
-
</Metadata>
|
17
|
-
</Container>
|
18
|
-
</Containers>
|
19
|
-
<NextMarker>marker-value</NextMarker>
|
20
|
-
</EnumerationResults>
|
1
|
+
<?xml version="1.0" encoding="utf-8"?>
|
2
|
+
<EnumerationResults AccountName="http://myaccount.blob.core.windows.net">
|
3
|
+
<Prefix>string-value</Prefix>
|
4
|
+
<Marker>string-value</Marker>
|
5
|
+
<MaxResults>int-value</MaxResults>
|
6
|
+
<Containers>
|
7
|
+
<Container>
|
8
|
+
<Name>container-name</Name>
|
9
|
+
<Url>http://myaccount.blob.core.windows.net/container-name</Url>
|
10
|
+
<Properties>
|
11
|
+
<Last-Modified>date/time-value</Last-Modified>
|
12
|
+
<Etag>etag</Etag>
|
13
|
+
</Properties>
|
14
|
+
<Metadata>
|
15
|
+
<metadata-name>value</metadata-name>
|
16
|
+
</Metadata>
|
17
|
+
</Container>
|
18
|
+
</Containers>
|
19
|
+
<NextMarker>marker-value</NextMarker>
|
20
|
+
</EnumerationResults>
|
@@ -1,22 +1,22 @@
|
|
1
|
-
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
|
2
|
-
<feed xml:base="http://myaccount.table.core.windows.net/" xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices" xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata" xmlns="http://www.w3.org/2005/Atom">
|
3
|
-
<title type="text">Tables</title>
|
4
|
-
<id>http://myaccount.table.core.windows.net/Tables</id>
|
5
|
-
<updated>2009-01-04T17:18:54.7062347Z</updated>
|
6
|
-
<link rel="self" title="Tables" href="Tables" />
|
7
|
-
<entry>
|
8
|
-
<id>http://myaccount.table.core.windows.net/Tables('mytable')</id>
|
9
|
-
<title type="text"></title>
|
10
|
-
<updated>2009-01-04T17:18:54.7062347Z</updated>
|
11
|
-
<author>
|
12
|
-
<name />
|
13
|
-
</author>
|
14
|
-
<link rel="edit" title="Tables" href="Tables('mytable')" />
|
15
|
-
<category term="myaccount.Tables" scheme="http://schemas.microsoft.com/ado/2007/08/dataservices/scheme" />
|
16
|
-
<content type="application/xml">
|
17
|
-
<m:properties>
|
18
|
-
<d:TableName>mytable</d:TableName>
|
19
|
-
</m:properties>
|
20
|
-
</content>
|
21
|
-
</entry>
|
22
|
-
</feed>
|
1
|
+
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
|
2
|
+
<feed xml:base="http://myaccount.table.core.windows.net/" xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices" xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata" xmlns="http://www.w3.org/2005/Atom">
|
3
|
+
<title type="text">Tables</title>
|
4
|
+
<id>http://myaccount.table.core.windows.net/Tables</id>
|
5
|
+
<updated>2009-01-04T17:18:54.7062347Z</updated>
|
6
|
+
<link rel="self" title="Tables" href="Tables" />
|
7
|
+
<entry>
|
8
|
+
<id>http://myaccount.table.core.windows.net/Tables('mytable')</id>
|
9
|
+
<title type="text"></title>
|
10
|
+
<updated>2009-01-04T17:18:54.7062347Z</updated>
|
11
|
+
<author>
|
12
|
+
<name />
|
13
|
+
</author>
|
14
|
+
<link rel="edit" title="Tables" href="Tables('mytable')" />
|
15
|
+
<category term="myaccount.Tables" scheme="http://schemas.microsoft.com/ado/2007/08/dataservices/scheme" />
|
16
|
+
<content type="application/xml">
|
17
|
+
<m:properties>
|
18
|
+
<d:TableName>mytable</d:TableName>
|
19
|
+
</m:properties>
|
20
|
+
</content>
|
21
|
+
</entry>
|
22
|
+
</feed>
|
@@ -1,21 +1,21 @@
|
|
1
|
-
-----BEGIN CERTIFICATE-----
|
2
|
-
MIIDXTCCAkWgAwIBAgIJANykirZF/EsgMA0GCSqGSIb3DQEBBQUAMEUxCzAJBgNV
|
3
|
-
BAYTAkFVMRMwEQYDVQQIDApTb21lLVN0YXRlMSEwHwYDVQQKDBhJbnRlcm5ldCBX
|
4
|
-
aWRnaXRzIFB0eSBMdGQwHhcNMTMwNTIwMDkxNzI4WhcNMTQwNTIwMDkxNzI4WjBF
|
5
|
-
MQswCQYDVQQGEwJBVTETMBEGA1UECAwKU29tZS1TdGF0ZTEhMB8GA1UECgwYSW50
|
6
|
-
ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB
|
7
|
-
CgKCAQEAvbyc1P9OVJmlvFLHLhoIAn0lZtJ5BhA5Y4xjVxTdSrbvfPuhifN0fZFx
|
8
|
-
W5r/emW2IS9+eMkjTB6HuEMHU818At16TXTSIUiD6zjUs5a4zGbuOnfZXhmSgjqZ
|
9
|
-
FfjpoOpq8BJwNymPyW8bjSzj/FFOxeQ1prIA8listYqm0cKMXYrxHzEm9mfNsiQO
|
10
|
-
ZdR6AGPgBmBtgi2SgBRo5peidSHOWt1Hq09L4b8CvQhCunSMQaQbjaS4PEEiyAAy
|
11
|
-
pNQwtlkbHxfae4pQ4mcNqaXisOIT/OFbF3ipBJZj0GsrdTw5aKBCa4+v4MrlHpIY
|
12
|
-
0IGEst9VusNaHsgZ9fDo2AuHJxYYPwIDAQABo1AwTjAdBgNVHQ4EFgQUMe+pjlnP
|
13
|
-
u45jWWGwDBHj/glY5+QwHwYDVR0jBBgwFoAUMe+pjlnPu45jWWGwDBHj/glY5+Qw
|
14
|
-
DAYDVR0TBAUwAwEB/zANBgkqhkiG9w0BAQUFAAOCAQEAMIHvO+LuVq/e5Fesr6Q7
|
15
|
-
p6PSyth4pfVLfx3tKosvfEzGmdVB7yryx4oVPVUygkmZyHwXqkgU0+k5QH2L0SjF
|
16
|
-
fYS/T9RAke3zAHQ31O97aMj7ourjvOXwa87K4g8d/4y75zBewxtga51MZbZEguNy
|
17
|
-
Edi/eyM7OuU1LFmoNyc0fakq0tBn68J3bDaNvCskptBASXvIGhlUNq1RT3agbGml
|
18
|
-
f8x9SuJofXtqDACgLDQMUGrCWqklMhZohuApMg07Q4bIz/BhXhKETab55gGFX+Ow
|
19
|
-
lroGwF29OCyUvpxWmXmcYxmFNlkVOuol6wJWKoeaGc1JphmyvbmS8qaeqgqxFTkP
|
20
|
-
kw==
|
21
|
-
-----END CERTIFICATE-----
|
1
|
+
-----BEGIN CERTIFICATE-----
|
2
|
+
MIIDXTCCAkWgAwIBAgIJANykirZF/EsgMA0GCSqGSIb3DQEBBQUAMEUxCzAJBgNV
|
3
|
+
BAYTAkFVMRMwEQYDVQQIDApTb21lLVN0YXRlMSEwHwYDVQQKDBhJbnRlcm5ldCBX
|
4
|
+
aWRnaXRzIFB0eSBMdGQwHhcNMTMwNTIwMDkxNzI4WhcNMTQwNTIwMDkxNzI4WjBF
|
5
|
+
MQswCQYDVQQGEwJBVTETMBEGA1UECAwKU29tZS1TdGF0ZTEhMB8GA1UECgwYSW50
|
6
|
+
ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB
|
7
|
+
CgKCAQEAvbyc1P9OVJmlvFLHLhoIAn0lZtJ5BhA5Y4xjVxTdSrbvfPuhifN0fZFx
|
8
|
+
W5r/emW2IS9+eMkjTB6HuEMHU818At16TXTSIUiD6zjUs5a4zGbuOnfZXhmSgjqZ
|
9
|
+
FfjpoOpq8BJwNymPyW8bjSzj/FFOxeQ1prIA8listYqm0cKMXYrxHzEm9mfNsiQO
|
10
|
+
ZdR6AGPgBmBtgi2SgBRo5peidSHOWt1Hq09L4b8CvQhCunSMQaQbjaS4PEEiyAAy
|
11
|
+
pNQwtlkbHxfae4pQ4mcNqaXisOIT/OFbF3ipBJZj0GsrdTw5aKBCa4+v4MrlHpIY
|
12
|
+
0IGEst9VusNaHsgZ9fDo2AuHJxYYPwIDAQABo1AwTjAdBgNVHQ4EFgQUMe+pjlnP
|
13
|
+
u45jWWGwDBHj/glY5+QwHwYDVR0jBBgwFoAUMe+pjlnPu45jWWGwDBHj/glY5+Qw
|
14
|
+
DAYDVR0TBAUwAwEB/zANBgkqhkiG9w0BAQUFAAOCAQEAMIHvO+LuVq/e5Fesr6Q7
|
15
|
+
p6PSyth4pfVLfx3tKosvfEzGmdVB7yryx4oVPVUygkmZyHwXqkgU0+k5QH2L0SjF
|
16
|
+
fYS/T9RAke3zAHQ31O97aMj7ourjvOXwa87K4g8d/4y75zBewxtga51MZbZEguNy
|
17
|
+
Edi/eyM7OuU1LFmoNyc0fakq0tBn68J3bDaNvCskptBASXvIGhlUNq1RT3agbGml
|
18
|
+
f8x9SuJofXtqDACgLDQMUGrCWqklMhZohuApMg07Q4bIz/BhXhKETab55gGFX+Ow
|
19
|
+
lroGwF29OCyUvpxWmXmcYxmFNlkVOuol6wJWKoeaGc1JphmyvbmS8qaeqgqxFTkP
|
20
|
+
kw==
|
21
|
+
-----END CERTIFICATE-----
|
@@ -1,11 +1,11 @@
|
|
1
|
-
<?xml version="1.0" encoding="utf-8"?>
|
2
|
-
<SignedIdentifiers>
|
3
|
-
<SignedIdentifier>
|
4
|
-
<Id>MTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTI=</Id>
|
5
|
-
<AccessPolicy>
|
6
|
-
<Start>2009-09-28T08:49:37.0000000Z</Start>
|
7
|
-
<Expiry>2009-09-29T08:49:37.0000000Z</Expiry>
|
8
|
-
<Permission>rwd</Permission>
|
9
|
-
</AccessPolicy>
|
10
|
-
</SignedIdentifier>
|
11
|
-
</SignedIdentifiers>
|
1
|
+
<?xml version="1.0" encoding="utf-8"?>
|
2
|
+
<SignedIdentifiers>
|
3
|
+
<SignedIdentifier>
|
4
|
+
<Id>MTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTI=</Id>
|
5
|
+
<AccessPolicy>
|
6
|
+
<Start>2009-09-28T08:49:37.0000000Z</Start>
|
7
|
+
<Expiry>2009-09-29T08:49:37.0000000Z</Expiry>
|
8
|
+
<Permission>rwd</Permission>
|
9
|
+
</AccessPolicy>
|
10
|
+
</SignedIdentifier>
|
11
|
+
</SignedIdentifiers>
|
@@ -1,2 +1,2 @@
|
|
1
|
-
<?xml version="1.0"?>
|
1
|
+
<?xml version="1.0"?>
|
2
2
|
<ServerName xmlns="http://schemas.microsoft.com/sqlazure/2010/12/">gxyfzrhx2c</ServerName>
|
@@ -1,5 +1,5 @@
|
|
1
|
-
<?xml version="1.0"?>
|
2
|
-
<Error xmlns="http://schemas.microsoft.com/windowsazure" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
|
3
|
-
<Code>BadRequest</Code>
|
4
|
-
<Message>The description is too long</Message>
|
5
|
-
</Error>
|
1
|
+
<?xml version="1.0"?>
|
2
|
+
<Error xmlns="http://schemas.microsoft.com/windowsazure" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
|
3
|
+
<Code>BadRequest</Code>
|
4
|
+
<Message>The description is too long</Message>
|
5
|
+
</Error>
|