azure_mgmt_resources 0.15.0 → 0.15.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +46 -15
- data/lib/2016-02-01/generated/azure_mgmt_resources/version.rb +1 -1
- data/lib/2016-07-01/generated/azure_mgmt_resources/version.rb +1 -1
- data/lib/2016-09-01/generated/azure_mgmt_resources/version.rb +1 -1
- data/lib/2017-05-10/generated/azure_mgmt_resources/version.rb +1 -1
- data/lib/profiles/common/configurable.rb +22 -9
- data/lib/profiles/common/default.rb +2 -13
- data/lib/profiles/latest/modules/resources_profile_module.rb +1 -1
- data/lib/profiles/latest/resources_latest_profile_client.rb +1 -11
- data/lib/profiles/v2017_03_09/modules/resources_profile_module.rb +1 -1
- data/lib/profiles/v2017_03_09/resources_v2017_03_09_profile_client.rb +1 -11
- data/lib/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4aec1d2bc834fdbb2f6c5baec4d54ab5db824b88
|
4
|
+
data.tar.gz: e5396822d08995575866ace38b21d16776561ffd
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 75575d7e4557362495b53d66c4ef6e430a03eb44453c24e8f2243ee351b4011f4e9f2b95f7425ab02a03bbcfd4ad48d4950e214089b826473b525f18167d53d6
|
7
|
+
data.tar.gz: 90cfa861707cccf962cb5b3fbb58eeda1a2cd14390b8afd9ae361ffda39284f65d444ef66d5c759c689bd55ed70b37838960bc39beeb734ccbaab5fa1d6a81ba
|
data/README.md
CHANGED
@@ -30,28 +30,59 @@ require 'azure_mgmt_resources'
|
|
30
30
|
|
31
31
|
After that you should be ready to start using SDK!
|
32
32
|
|
33
|
-
##
|
33
|
+
## Creating a Client
|
34
|
+
### Option 1 - Using the Resources Profiles
|
35
|
+
You can create a new resources group using the Resources profile.
|
34
36
|
|
35
|
-
```
|
36
|
-
#
|
37
|
-
|
38
|
-
|
39
|
-
```
|
37
|
+
```ruby
|
38
|
+
# Include SDK modules to ease access to resources classes.
|
39
|
+
include Azure::Resources::Profiles::Latest::Mgmt
|
40
|
+
include Azure::Resources::Profiles::Latest::Mgmt::Models
|
40
41
|
|
41
|
-
|
42
|
+
provider = MsRestAzure::ApplicationTokenProvider.new(
|
43
|
+
'YOUR TENANT ID',
|
44
|
+
'YOUR CLIENT ID',
|
45
|
+
'YOUR CLIENT SECRET')
|
46
|
+
credentials = MsRest::TokenCredentials.new(provider)
|
42
47
|
|
43
|
-
## Creating resource group
|
44
|
-
|
45
|
-
```Ruby
|
46
|
-
# Create a client - a point of access to the API and set the subscription id
|
47
48
|
options = {
|
48
|
-
|
49
|
-
|
49
|
+
tenant_id: 'YOUR TENANT ID',
|
50
|
+
client_id: 'YOUR CLIENT ID',
|
51
|
+
client_secret: 'YOUR CLIENT SECRET',
|
52
|
+
subscription_id: 'YOUR SUBSCRIPTION ID',
|
53
|
+
credentials: credentials
|
50
54
|
}
|
51
|
-
client = Azure::Resources::Profiles::Latest::Mgmt::Client.new(options)
|
52
55
|
|
56
|
+
client = Client.new(options)
|
57
|
+
```
|
58
|
+
|
59
|
+
### Option 2 - Using a specific version of Resources
|
60
|
+
You can create a new resources group using a specific version of Resources, say 2017-05-10.
|
61
|
+
|
62
|
+
```ruby
|
63
|
+
# Include SDK modules to ease access to resources classes.
|
64
|
+
include Azure::Resources::Mgmt::V2017_05_10
|
65
|
+
include Azure::Resources::Mgmt::V2017_05_10::Models
|
66
|
+
|
67
|
+
# Note: The tenant_id, client_id, client_secret and subscription_id
|
68
|
+
# must be set using the env variables.
|
69
|
+
|
70
|
+
provider = MsRestAzure::ApplicationTokenProvider.new(
|
71
|
+
ENV['AZURE_TENANT_ID'],
|
72
|
+
ENV['AZURE_CLIENT_ID'],
|
73
|
+
ENV['AZURE_CLIENT_SECRET'])
|
74
|
+
credentials = MsRest::TokenCredentials.new(provider)
|
75
|
+
|
76
|
+
client = ResourceManagementClient.new(credentials)
|
77
|
+
client.subscription_id = ENV['AZURE_SUBSCRIPTION_ID']
|
78
|
+
```
|
79
|
+
|
80
|
+
## Using the client
|
81
|
+
Once the client is initialized, we could create the resource group.
|
82
|
+
|
83
|
+
```ruby
|
53
84
|
# Create a model for resource group.
|
54
|
-
resource_group =
|
85
|
+
resource_group = ResourceGroup.new()
|
55
86
|
resource_group.location = 'westus'
|
56
87
|
|
57
88
|
promise = client.resource_groups.create_or_update_async('new_test_resource_group', resource_group)
|
@@ -2,8 +2,8 @@
|
|
2
2
|
# Copyright (c) Microsoft Corporation. All rights reserved.
|
3
3
|
# Licensed under the MIT License. See License.txt in the project root for license information.
|
4
4
|
|
5
|
-
module Azure::
|
6
|
-
# The Azure::
|
5
|
+
module Azure::Common
|
6
|
+
# The Azure::Common::Configurable module provides basic configuration for Azure activities.
|
7
7
|
module Configurable
|
8
8
|
# @return [String] Azure tenant id (also known as domain).
|
9
9
|
attr_accessor :tenant_id
|
@@ -25,11 +25,11 @@ module Azure::ARM
|
|
25
25
|
|
26
26
|
class << self
|
27
27
|
#
|
28
|
-
# List of configurable keys for {Azure::
|
28
|
+
# List of configurable keys for {Azure::Common::Client}.
|
29
29
|
# @return [Array] of option keys.
|
30
30
|
#
|
31
31
|
def keys
|
32
|
-
@keys ||= [:tenant_id, :client_id, :client_secret, :subscription_id, :active_directory_settings
|
32
|
+
@keys ||= [:tenant_id, :client_id, :client_secret, :subscription_id, :active_directory_settings]
|
33
33
|
end
|
34
34
|
end
|
35
35
|
|
@@ -45,11 +45,23 @@ module Azure::ARM
|
|
45
45
|
# This will also creates MsRest::TokenCredentials to be used for subsequent Azure Resource Manager clients.
|
46
46
|
#
|
47
47
|
def reset!(options = {})
|
48
|
-
Azure::
|
49
|
-
default_value = Azure::
|
48
|
+
Azure::Common::Configurable.keys.each do |key|
|
49
|
+
default_value = Azure::Common::Default.options[key]
|
50
50
|
instance_variable_set(:"@#{key}", options.fetch(key, default_value))
|
51
51
|
end
|
52
52
|
|
53
|
+
fail ArgumentError, 'tenant_id is nil' if self.tenant_id.nil?
|
54
|
+
fail ArgumentError, 'client_id is nil' if self.client_id.nil?
|
55
|
+
fail ArgumentError, 'client_secret is nil' if self.client_secret.nil?
|
56
|
+
fail ArgumentError, 'subscription_id is nil' if self.subscription_id.nil?
|
57
|
+
fail ArgumentError, 'active_directory_settings is nil' if self.active_directory_settings.nil?
|
58
|
+
|
59
|
+
default_value = MsRest::TokenCredentials.new(
|
60
|
+
MsRestAzure::ApplicationTokenProvider.new(
|
61
|
+
self.tenant_id, self.client_id, self.client_secret, self.active_directory_settings))
|
62
|
+
|
63
|
+
instance_variable_set(:"@credentials", options.fetch(:credentials, default_value))
|
64
|
+
|
53
65
|
self
|
54
66
|
end
|
55
67
|
|
@@ -62,11 +74,12 @@ module Azure::ARM
|
|
62
74
|
#
|
63
75
|
# configures configurable options to default values
|
64
76
|
#
|
65
|
-
def
|
77
|
+
def setup_default_options
|
66
78
|
opts = {}
|
67
|
-
Azure::
|
68
|
-
opts[key] = Azure::
|
79
|
+
Azure::Common::Configurable.keys.map do |key|
|
80
|
+
opts[key] = Azure::Common::Default.options[key]
|
69
81
|
end
|
82
|
+
|
70
83
|
opts
|
71
84
|
end
|
72
85
|
end
|
@@ -2,8 +2,7 @@
|
|
2
2
|
# Copyright (c) Microsoft Corporation. All rights reserved.
|
3
3
|
# Licensed under the MIT License. See License.txt in the project root for license information.
|
4
4
|
|
5
|
-
module Azure::
|
6
|
-
# Default configuration options for {Azure::ARM.Client}
|
5
|
+
module Azure::Common
|
7
6
|
module Default
|
8
7
|
class << self
|
9
8
|
#
|
@@ -38,16 +37,6 @@ module Azure::ARM
|
|
38
37
|
ENV['AZURE_SUBSCRIPTION_ID']
|
39
38
|
end
|
40
39
|
|
41
|
-
#
|
42
|
-
# Default Azure credentials to authorize HTTP requests made by the service client.
|
43
|
-
# @return [MsRest::ServiceClientCredentials] Azure credentials to authorize HTTP requests made by the service client.
|
44
|
-
#
|
45
|
-
def credentials
|
46
|
-
MsRest::TokenCredentials.new(
|
47
|
-
MsRestAzure::ApplicationTokenProvider.new(
|
48
|
-
self.tenant_id, self.client_id, self.client_secret, self.active_directory_settings))
|
49
|
-
end
|
50
|
-
|
51
40
|
#
|
52
41
|
# Default Azure Active Directory Service Settings.
|
53
42
|
# @return [MsRestAzure::ActiveDirectoryServiceSettings] Azure Active Directory Service Settings.
|
@@ -61,7 +50,7 @@ module Azure::ARM
|
|
61
50
|
# @return [Hash] Configuration options.
|
62
51
|
#
|
63
52
|
def options
|
64
|
-
Hash[Azure::
|
53
|
+
Hash[Azure::Common::Configurable.keys.map { |key| [key, send(key)]}]
|
65
54
|
end
|
66
55
|
end
|
67
56
|
end
|
@@ -12,22 +12,12 @@ module Azure::Resources::Profiles::Latest::Mgmt
|
|
12
12
|
# Client class for the Latest profile SDK.
|
13
13
|
#
|
14
14
|
class Client < ResourcesClass
|
15
|
-
include Azure::
|
15
|
+
include Azure::Common::Configurable
|
16
16
|
|
17
17
|
|
18
18
|
def initialize(options = {})
|
19
19
|
super(options)
|
20
20
|
end
|
21
21
|
|
22
|
-
def credentials
|
23
|
-
if @credentials.nil?
|
24
|
-
self.active_directory_settings ||= Azure::ARM::Default.active_directory_settings
|
25
|
-
|
26
|
-
@credentials = MsRest::TokenCredentials.new(
|
27
|
-
MsRestAzure::ApplicationTokenProvider.new(
|
28
|
-
self.tenant_id, self.client_id, self.client_secret, self.active_directory_settings))
|
29
|
-
end
|
30
|
-
@credentials
|
31
|
-
end
|
32
22
|
end
|
33
23
|
end
|
@@ -12,22 +12,12 @@ module Azure::Resources::Profiles::V2017_03_09::Mgmt
|
|
12
12
|
# Client class for the V2017_03_09 profile SDK.
|
13
13
|
#
|
14
14
|
class Client < ResourcesClass
|
15
|
-
include Azure::
|
15
|
+
include Azure::Common::Configurable
|
16
16
|
|
17
17
|
|
18
18
|
def initialize(options = {})
|
19
19
|
super(options)
|
20
20
|
end
|
21
21
|
|
22
|
-
def credentials
|
23
|
-
if @credentials.nil?
|
24
|
-
self.active_directory_settings ||= Azure::ARM::Default.active_directory_settings
|
25
|
-
|
26
|
-
@credentials = MsRest::TokenCredentials.new(
|
27
|
-
MsRestAzure::ApplicationTokenProvider.new(
|
28
|
-
self.tenant_id, self.client_id, self.client_secret, self.active_directory_settings))
|
29
|
-
end
|
30
|
-
@credentials
|
31
|
-
end
|
32
22
|
end
|
33
23
|
end
|
data/lib/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: azure_mgmt_resources
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.15.
|
4
|
+
version: 0.15.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Microsoft Corporation
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-10-
|
11
|
+
date: 2017-10-30 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|