fog-azure-rm 0.1.2 → 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +11 -0
- data/Gemfile +1 -1
- data/README.md +0 -1
- data/fog-azure-rm.gemspec +4 -1
- data/lib/fog/azurerm.rb +7 -0
- data/lib/fog/azurerm/application_gateway.rb +10 -2
- data/lib/fog/azurerm/compute.rb +14 -4
- data/lib/fog/azurerm/config.rb +0 -51
- data/lib/fog/azurerm/constants.rb +51 -0
- data/lib/fog/azurerm/dns.rb +12 -4
- data/lib/fog/azurerm/docs/application_gateway.md +38 -4
- data/lib/fog/azurerm/docs/compute.md +23 -4
- data/lib/fog/azurerm/docs/dns.md +18 -4
- data/lib/fog/azurerm/docs/key_vault.md +88 -0
- data/lib/fog/azurerm/docs/network.md +98 -9
- data/lib/fog/azurerm/docs/resources.md +24 -4
- data/lib/fog/azurerm/docs/sql.md +5 -6
- data/lib/fog/azurerm/docs/storage.md +12 -0
- data/lib/fog/azurerm/docs/traffic_manager.md +22 -4
- data/lib/fog/azurerm/key_vault.rb +51 -0
- data/lib/fog/azurerm/models/application_gateway/backend_address_pool.rb +2 -0
- data/lib/fog/azurerm/models/application_gateway/backend_http_setting.rb +2 -0
- data/lib/fog/azurerm/models/application_gateway/frontend_ip_configuration.rb +4 -0
- data/lib/fog/azurerm/models/application_gateway/frontend_port.rb +2 -0
- data/lib/fog/azurerm/models/application_gateway/gateway.rb +2 -6
- data/lib/fog/azurerm/models/application_gateway/gateways.rb +4 -0
- data/lib/fog/azurerm/models/application_gateway/http_listener.rb +2 -0
- data/lib/fog/azurerm/models/application_gateway/ip_configuration.rb +3 -0
- data/lib/fog/azurerm/models/application_gateway/probe.rb +2 -0
- data/lib/fog/azurerm/models/application_gateway/request_routing_rule.rb +2 -0
- data/lib/fog/azurerm/models/application_gateway/ssl_certificate.rb +2 -0
- data/lib/fog/azurerm/models/application_gateway/url_path_map.rb +2 -0
- data/lib/fog/azurerm/models/compute/availability_sets.rb +4 -0
- data/lib/fog/azurerm/models/compute/servers.rb +4 -0
- data/lib/fog/azurerm/models/compute/virtual_machine_extensions.rb +4 -0
- data/lib/fog/azurerm/models/dns/record_sets.rb +4 -0
- data/lib/fog/azurerm/models/dns/zones.rb +2 -2
- data/lib/fog/azurerm/models/key_vault/access_policy_entry.rb +31 -0
- data/lib/fog/azurerm/models/key_vault/vault.rb +76 -0
- data/lib/fog/azurerm/models/key_vault/vaults.rb +27 -0
- data/lib/fog/azurerm/models/network/express_route_circuit_authorizations.rb +4 -0
- data/lib/fog/azurerm/models/network/express_route_circuits.rb +4 -0
- data/lib/fog/azurerm/models/network/load_balancers.rb +12 -2
- data/lib/fog/azurerm/models/network/local_network_gateways.rb +4 -0
- data/lib/fog/azurerm/models/network/network_interfaces.rb +4 -0
- data/lib/fog/azurerm/models/network/network_security_groups.rb +4 -0
- data/lib/fog/azurerm/models/network/network_security_rules.rb +4 -0
- data/lib/fog/azurerm/models/network/public_ips.rb +2 -9
- data/lib/fog/azurerm/models/network/subnets.rb +4 -0
- data/lib/fog/azurerm/models/network/virtual_network_gateway_connections.rb +4 -0
- data/lib/fog/azurerm/models/network/virtual_network_gateways.rb +4 -0
- data/lib/fog/azurerm/models/network/virtual_networks.rb +9 -11
- data/lib/fog/azurerm/models/resources/azure_resources.rb +4 -0
- data/lib/fog/azurerm/models/resources/deployments.rb +4 -0
- data/lib/fog/azurerm/models/resources/resource_groups.rb +4 -0
- data/lib/fog/azurerm/models/sql/firewall_rule.rb +5 -17
- data/lib/fog/azurerm/models/sql/firewall_rules.rb +4 -0
- data/lib/fog/azurerm/models/sql/sql_database.rb +4 -21
- data/lib/fog/azurerm/models/sql/sql_databases.rb +4 -0
- data/lib/fog/azurerm/models/sql/sql_server.rb +5 -18
- data/lib/fog/azurerm/models/sql/sql_servers.rb +4 -0
- data/lib/fog/azurerm/models/storage/directories.rb +4 -0
- data/lib/fog/azurerm/models/storage/storage_accounts.rb +4 -0
- data/lib/fog/azurerm/models/traffic_manager/traffic_manager_end_points.rb +4 -0
- data/lib/fog/azurerm/models/traffic_manager/traffic_manager_profiles.rb +4 -0
- data/lib/fog/azurerm/network.rb +22 -4
- data/lib/fog/azurerm/requests/application_gateway/check_ag_exists.rb +31 -0
- data/lib/fog/azurerm/requests/application_gateway/create_or_update_application_gateway.rb +6 -0
- data/lib/fog/azurerm/requests/compute/check_availability_set_exists.rb +31 -0
- data/lib/fog/azurerm/requests/compute/check_vm_exists.rb +31 -0
- data/lib/fog/azurerm/requests/compute/check_vm_extension_exists.rb +31 -0
- data/lib/fog/azurerm/requests/dns/check_record_set_exists.rb +31 -0
- data/lib/fog/azurerm/requests/dns/{check_for_zone.rb → check_zone_exists.rb} +4 -2
- data/lib/fog/azurerm/requests/dns/list_record_sets.rb +1 -1
- data/lib/fog/azurerm/requests/dns/list_zones.rb +2 -2
- data/lib/fog/azurerm/requests/key_vault/check_vault_exists.rb +31 -0
- data/lib/fog/azurerm/requests/key_vault/create_or_update_vault.rb +105 -0
- data/lib/fog/azurerm/requests/key_vault/delete_vault.rb +28 -0
- data/lib/fog/azurerm/requests/key_vault/get_vault.rb +54 -0
- data/lib/fog/azurerm/requests/key_vault/list_vaults.rb +56 -0
- data/lib/fog/azurerm/requests/network/check_express_route_cir_auth_exists.rb +31 -0
- data/lib/fog/azurerm/requests/network/check_express_route_circuit_exists.rb +31 -0
- data/lib/fog/azurerm/requests/network/check_load_balancer_exists.rb +31 -0
- data/lib/fog/azurerm/requests/network/check_local_net_gateway_exists.rb +31 -0
- data/lib/fog/azurerm/requests/network/check_net_sec_group_exists.rb +31 -0
- data/lib/fog/azurerm/requests/network/check_net_sec_rule_exists.rb +31 -0
- data/lib/fog/azurerm/requests/network/check_network_interface_exists.rb +31 -0
- data/lib/fog/azurerm/requests/network/{check_for_public_ip.rb → check_public_ip_exists.rb} +12 -5
- data/lib/fog/azurerm/requests/network/check_subnet_exists.rb +32 -0
- data/lib/fog/azurerm/requests/network/{check_for_virtual_network.rb → check_virtual_network_exists.rb} +11 -6
- data/lib/fog/azurerm/requests/network/check_vnet_gateway_connection_exists.rb +32 -0
- data/lib/fog/azurerm/requests/network/check_vnet_gateway_exists.rb +32 -0
- data/lib/fog/azurerm/requests/network/list_load_balancers_in_subscription.rb +31 -0
- data/lib/fog/azurerm/requests/network/list_virtual_networks_in_subscription.rb +74 -0
- data/lib/fog/azurerm/requests/resources/check_azure_resource_exists.rb +40 -0
- data/lib/fog/azurerm/requests/resources/check_deployment_exists.rb +30 -0
- data/lib/fog/azurerm/requests/resources/check_resource_group_exists.rb +30 -0
- data/lib/fog/azurerm/requests/sql/check_database_exists.rb +21 -0
- data/lib/fog/azurerm/requests/sql/check_firewall_rule_exists.rb +21 -0
- data/lib/fog/azurerm/requests/sql/check_sql_server_exists.rb +21 -0
- data/lib/fog/azurerm/requests/sql/create_or_update_database.rb +26 -32
- data/lib/fog/azurerm/requests/sql/create_or_update_firewall_rule.rb +8 -22
- data/lib/fog/azurerm/requests/sql/create_or_update_sql_server.rb +14 -24
- data/lib/fog/azurerm/requests/sql/delete_database.rb +2 -9
- data/lib/fog/azurerm/requests/sql/delete_firewall_rule.rb +2 -9
- data/lib/fog/azurerm/requests/sql/delete_sql_server.rb +3 -9
- data/lib/fog/azurerm/requests/sql/get_database.rb +4 -10
- data/lib/fog/azurerm/requests/sql/get_firewall_rule.rb +4 -10
- data/lib/fog/azurerm/requests/sql/get_sql_server.rb +3 -10
- data/lib/fog/azurerm/requests/sql/list_databases.rb +3 -10
- data/lib/fog/azurerm/requests/sql/list_firewall_rules.rb +4 -10
- data/lib/fog/azurerm/requests/sql/list_sql_servers.rb +3 -10
- data/lib/fog/azurerm/requests/storage/check_container_exists.rb +30 -0
- data/lib/fog/azurerm/requests/storage/check_storage_account_exists.rb +31 -0
- data/lib/fog/azurerm/requests/storage/create_or_update_recovery_vault.rb +1 -1
- data/lib/fog/azurerm/requests/storage/delete_recovery_vault.rb +1 -1
- data/lib/fog/azurerm/requests/storage/disable_backup_protection.rb +1 -1
- data/lib/fog/azurerm/requests/storage/enable_backup_protection.rb +1 -1
- data/lib/fog/azurerm/requests/storage/get_all_backup_jobs.rb +1 -1
- data/lib/fog/azurerm/requests/storage/get_backup_container.rb +1 -1
- data/lib/fog/azurerm/requests/storage/get_backup_item.rb +1 -1
- data/lib/fog/azurerm/requests/storage/get_backup_protection_policy.rb +1 -1
- data/lib/fog/azurerm/requests/storage/get_recovery_vault.rb +1 -1
- data/lib/fog/azurerm/requests/storage/list_recovery_vaults.rb +1 -1
- data/lib/fog/azurerm/requests/storage/set_recovery_vault_context.rb +1 -1
- data/lib/fog/azurerm/requests/storage/start_backup.rb +1 -1
- data/lib/fog/azurerm/requests/traffic_manager/check_traffic_manager_endpoint_exists.rb +31 -0
- data/lib/fog/azurerm/requests/traffic_manager/check_traffic_manager_profile_exists.rb +31 -0
- data/lib/fog/azurerm/resources.rb +10 -2
- data/lib/fog/azurerm/sql.rb +18 -10
- data/lib/fog/azurerm/storage.rb +4 -0
- data/lib/fog/azurerm/traffic_manager.rb +9 -2
- data/lib/fog/azurerm/version.rb +1 -1
- data/rake-script.sh +3 -10
- data/test/api_stub.rb +8 -0
- data/test/api_stub/models/key_vault/vault.rb +39 -0
- data/test/api_stub/models/sql/sql_database.rb +18 -16
- data/test/api_stub/models/sql/sql_firewall_rule.rb +12 -10
- data/test/api_stub/models/sql/sql_server.rb +12 -10
- data/test/api_stub/requests/key_vault/vault.rb +95 -0
- data/test/api_stub/requests/sql/database.rb +8 -6
- data/test/api_stub/requests/sql/firewall_rule.rb +8 -4
- data/test/api_stub/requests/sql/sql_server.rb +8 -4
- data/test/integration/Virtual_network_gateway_connection.rb +7 -0
- data/test/integration/application_gateway.rb +8 -0
- data/test/integration/availability_set.rb +13 -2
- data/test/integration/blob.rb +0 -6
- data/test/integration/container.rb +7 -0
- data/test/integration/deployment.rb +7 -0
- data/test/integration/express_route_circuit.rb +16 -0
- data/test/integration/external_load_balancer.rb +18 -0
- data/test/integration/key_vault.rb +98 -0
- data/test/integration/local_network_gateway.rb +8 -0
- data/test/integration/network_interface.rb +8 -0
- data/test/integration/network_security_group.rb +8 -0
- data/test/integration/network_security_rule.rb +8 -0
- data/test/integration/public_ip.rb +3 -2
- data/test/integration/record_set.rb +8 -0
- data/test/integration/resource_group.rb +12 -4
- data/test/integration/resource_tag.rb +7 -0
- data/test/integration/server.rb +8 -0
- data/test/integration/sql_server.rb +23 -3
- data/test/integration/storage_account.rb +8 -1
- data/test/integration/subnet.rb +7 -0
- data/test/integration/traffic_manager.rb +14 -0
- data/test/integration/virtual_machine_extension.rb +8 -0
- data/test/integration/virtual_network.rb +13 -4
- data/test/integration/virtual_network_gateway.rb +7 -0
- data/test/integration/zone.rb +8 -0
- data/test/models/application_gateway/test_gateway.rb +1 -0
- data/test/models/application_gateway/test_gateways.rb +14 -1
- data/test/models/compute/test_availability_sets.rb +14 -1
- data/test/models/compute/test_servers.rb +14 -1
- data/test/models/compute/test_virtual_machine_extensions.rb +14 -1
- data/test/models/dns/test_record_sets.rb +14 -1
- data/test/models/dns/test_zones.rb +7 -7
- data/test/models/key_vault/test_vault.rb +39 -0
- data/test/models/key_vault/test_vaults.rb +55 -0
- data/test/models/network/test_express_route_circuit_authorizations.rb +14 -1
- data/test/models/network/test_express_route_circuits.rb +14 -1
- data/test/models/network/test_load_balancers.rb +14 -1
- data/test/models/network/test_local_network_gateways.rb +14 -1
- data/test/models/network/test_network_interfaces.rb +14 -1
- data/test/models/network/test_network_security_groups.rb +14 -1
- data/test/models/network/test_network_security_rules.rb +14 -1
- data/test/models/network/test_public_ips.rb +6 -6
- data/test/models/network/test_subnets.rb +14 -1
- data/test/models/network/test_virtual_network_gateway_connections.rb +14 -1
- data/test/models/network/test_virtual_network_gateways.rb +14 -1
- data/test/models/network/test_virtual_networks.rb +20 -8
- data/test/models/resources/test_deployments.rb +14 -1
- data/test/models/resources/test_resource_groups.rb +14 -1
- data/test/models/resources/test_resources.rb +16 -3
- data/test/models/sql/test_database.rb +3 -4
- data/test/models/sql/test_databases.rb +5 -5
- data/test/models/sql/test_firewall_rule.rb +2 -1
- data/test/models/sql/test_firewall_rules.rb +3 -2
- data/test/models/sql/test_sql_server.rb +2 -1
- data/test/models/sql/test_sql_servers.rb +5 -5
- data/test/models/storage/test_directories.rb +14 -1
- data/test/models/storage/test_storage_accounts.rb +14 -1
- data/test/models/traffic_manager/test_traffic_manager_end_points.rb +14 -1
- data/test/models/traffic_manager/test_traffic_manager_profiles.rb +14 -1
- data/test/requests/application_gateway/test_check_ag_exists.rb +31 -0
- data/test/requests/compute/test_check_availability_set_exists.rb +31 -0
- data/test/requests/compute/test_check_vm_exists.rb +31 -0
- data/test/requests/compute/test_check_vm_extension_exists.rb +31 -0
- data/test/requests/dns/test_check_record_set_exists.rb +31 -0
- data/test/requests/dns/test_check_zone_exists.rb +35 -0
- data/test/requests/dns/test_list_record_sets.rb +35 -0
- data/test/requests/dns/{test_check_for_zone.rb → test_list_zones.rb} +10 -8
- data/test/requests/key_vault/test_check_vault_exists.rb +31 -0
- data/test/requests/key_vault/test_create_or_update_vault.rb +25 -0
- data/test/requests/key_vault/test_delete_vault.rb +23 -0
- data/test/requests/key_vault/test_get_vault.rb +24 -0
- data/test/requests/key_vault/test_list_vaults.rb +24 -0
- data/test/requests/network/test_check_express_route_cir_auth_exists.rb +31 -0
- data/test/requests/network/test_check_express_route_circuit_exists.rb +31 -0
- data/test/requests/network/test_check_load_balancer_exists.rb +31 -0
- data/test/requests/network/test_check_local_net_gateway_exists.rb +31 -0
- data/test/requests/network/test_check_net_sec_group_exists.rb +31 -0
- data/test/requests/network/test_check_net_sec_rule_exists.rb +31 -0
- data/test/requests/network/test_check_network_interface_exists.rb +31 -0
- data/test/requests/network/{test_check_for_public_ip.rb → test_check_public_ip_exists.rb} +8 -8
- data/test/requests/network/test_check_subnet_exists.rb +31 -0
- data/test/requests/network/{test_check_for_virtual_network.rb → test_check_virtual_network_exists.rb} +8 -8
- data/test/requests/network/test_check_vnet_gateway_connection_exists.rb +31 -0
- data/test/requests/network/test_check_vnet_gateway_exists.rb +31 -0
- data/test/requests/network/test_list_virtual_networks_in_subscription.rb +24 -0
- data/test/requests/resources/test_check_azure_resource_exists.rb +22 -0
- data/test/requests/resources/test_check_deployment_exists.rb +29 -0
- data/test/requests/resources/test_check_resource_group_exists.rb +29 -0
- data/test/requests/sql/test_create_or_update_database.rb +9 -12
- data/test/requests/sql/test_create_or_update_firewall_rule.rb +9 -11
- data/test/requests/sql/test_create_or_update_sql_server.rb +9 -12
- data/test/requests/sql/test_delete_database.rb +6 -17
- data/test/requests/sql/test_delete_firewall_rule.rb +6 -17
- data/test/requests/sql/test_delete_sql_server.rb +6 -17
- data/test/requests/sql/test_get_database.rb +7 -18
- data/test/requests/sql/test_get_firewall_rule.rb +7 -18
- data/test/requests/sql/test_get_sql_server.rb +7 -18
- data/test/requests/sql/test_list_databases.rb +7 -18
- data/test/requests/sql/test_list_firewall_rules.rb +7 -18
- data/test/requests/sql/test_list_sql_servers.rb +7 -18
- data/test/requests/storage/test_check_container_exists.rb +18 -0
- data/test/requests/storage/test_check_storage_account_exists.rb +32 -0
- data/test/requests/traffic_manager/test_check_traffic_manager_endpoint_exists.rb +31 -0
- data/test/requests/traffic_manager/test_check_traffic_manager_profile_exists.rb +31 -0
- data/test/test_helper.rb +39 -4
- metadata +125 -10
@@ -0,0 +1,88 @@
|
|
1
|
+
# Key Vault
|
2
|
+
|
3
|
+
This document explains how to get started using Azure Key Vault Service with Fog to manage Vault. With this gem you can create/list/delete Vault.
|
4
|
+
|
5
|
+
## Usage
|
6
|
+
|
7
|
+
First of all, you need to require the Fog library by executing:
|
8
|
+
|
9
|
+
```ruby
|
10
|
+
require 'fog/azurerm'
|
11
|
+
```
|
12
|
+
## Create Connection
|
13
|
+
|
14
|
+
Next, create a connection to the Key Vault Service:
|
15
|
+
|
16
|
+
```ruby
|
17
|
+
azure_key_vault_service = Fog::KeyVault::AzureRM.new(
|
18
|
+
tenant_id: '<Tenantid>', # Tenant id of Azure Active Directory Application
|
19
|
+
client_id: '<Clientid>', # Client id of Azure Active Directory Application
|
20
|
+
client_secret: '<ClientSecret>', # Client Secret of Azure Active Directory Application
|
21
|
+
subscription_id: '<Subscriptionid>' # Subscription id of an Azure Account
|
22
|
+
)
|
23
|
+
```
|
24
|
+
|
25
|
+
## Check Vault Existence
|
26
|
+
|
27
|
+
```ruby
|
28
|
+
azure_key_vault_service.vaults.check_vault_exists(<Resource Group name>, <Vault Name>)
|
29
|
+
```
|
30
|
+
|
31
|
+
## Create Vault
|
32
|
+
|
33
|
+
Create a new Vault.
|
34
|
+
|
35
|
+
```ruby
|
36
|
+
vault = azure_key_vault_service.vaults.create(
|
37
|
+
name: '<Vault Name>',
|
38
|
+
location: 'eastus',
|
39
|
+
resource_group: '<Resource Group name>',
|
40
|
+
tenant_id: <Tenantid>,
|
41
|
+
sku_family: 'A',
|
42
|
+
sku_name: 'standard',
|
43
|
+
access_policies: [
|
44
|
+
{
|
45
|
+
tenant_id: <Tenantid>,
|
46
|
+
object_id: <Tenantid>,
|
47
|
+
permissions: {
|
48
|
+
keys: ['all'],
|
49
|
+
secrets: ['all']
|
50
|
+
}
|
51
|
+
}
|
52
|
+
]
|
53
|
+
|
54
|
+
)
|
55
|
+
```
|
56
|
+
|
57
|
+
## List Vaults
|
58
|
+
|
59
|
+
List all vaults in a resource group
|
60
|
+
|
61
|
+
```ruby
|
62
|
+
vaults = azure_key_vault_service.vaults(resource_group: '<Resource Group Name>')
|
63
|
+
vaults.each do |vault|
|
64
|
+
puts "#{vault.name}"
|
65
|
+
end
|
66
|
+
```
|
67
|
+
|
68
|
+
## Retrieve a single Vault
|
69
|
+
|
70
|
+
Get a single record of Vault
|
71
|
+
|
72
|
+
```ruby
|
73
|
+
vault = azure_key_vault_service
|
74
|
+
.vaults
|
75
|
+
.get('<Resource Group name>', '<Vault Name>')
|
76
|
+
puts "#{vault.name}"
|
77
|
+
```
|
78
|
+
|
79
|
+
## Destroy a single Vault
|
80
|
+
|
81
|
+
Get a vault object from the get method and then destroy that vault.
|
82
|
+
|
83
|
+
```ruby
|
84
|
+
vault.destroy
|
85
|
+
```
|
86
|
+
|
87
|
+
## Support and Feedback
|
88
|
+
Your feedback is highly appreciated! If you have specific issues with the fog ARM, you should file an issue via Github.
|
@@ -15,12 +15,20 @@ Next, create a connection to the Network Service:
|
|
15
15
|
|
16
16
|
```ruby
|
17
17
|
azure_network_service = Fog::Network::AzureRM.new(
|
18
|
-
tenant_id: '<Tenantid>',
|
19
|
-
client_id: '<Clientid>',
|
20
|
-
client_secret: '<ClientSecret>',
|
21
|
-
subscription_id: '<Subscriptionid>'
|
18
|
+
tenant_id: '<Tenantid>', # Tenant id of Azure Active Directory Application
|
19
|
+
client_id: '<Clientid>', # Client id of Azure Active Directory Application
|
20
|
+
client_secret: '<ClientSecret>', # Client Secret of Azure Active Directory Application
|
21
|
+
subscription_id: '<Subscriptionid>', # Subscription id of an Azure Account
|
22
|
+
:environment => '<AzureCloud/AzureChinaCloud/AzureUSGovernment/AzureGermanCloud>' # Azure cloud environment. Default is AzureCloud.
|
22
23
|
)
|
23
24
|
```
|
25
|
+
|
26
|
+
## Check Virtual Network Existence
|
27
|
+
|
28
|
+
```ruby
|
29
|
+
azure_network_service.virtual_networks.check_virtual_network_exists(<Resource Group name>, <Virtual Network Name>)
|
30
|
+
```
|
31
|
+
|
24
32
|
## Create Virtual Network
|
25
33
|
|
26
34
|
Create a new virtual network
|
@@ -44,20 +52,24 @@ Optional parameters for Subnet: network_security_group_id, route_table_id & addr
|
|
44
52
|
)
|
45
53
|
```
|
46
54
|
|
47
|
-
##
|
55
|
+
## List Virtual Networks in Resource Group
|
48
56
|
|
49
|
-
|
57
|
+
List all virtual networks in a resource group
|
50
58
|
|
51
59
|
```ruby
|
52
|
-
azure_network_service.virtual_networks
|
60
|
+
vnets = azure_network_service.virtual_networks(resource_group: '<Resource Group Name>')
|
61
|
+
vnets.each do |vnet|
|
62
|
+
puts "#{vnet.name}"
|
63
|
+
puts "#{vnet.location}"
|
64
|
+
end
|
53
65
|
```
|
54
66
|
|
55
|
-
## List Virtual Networks
|
67
|
+
## List Virtual Networks in Subscription
|
56
68
|
|
57
69
|
List all virtual networks in a subscription
|
58
70
|
|
59
71
|
```ruby
|
60
|
-
vnets = azure_network_service.virtual_networks
|
72
|
+
vnets = azure_network_service.virtual_networks
|
61
73
|
vnets.each do |vnet|
|
62
74
|
puts "#{vnet.name}"
|
63
75
|
puts "#{vnet.location}"
|
@@ -126,6 +138,12 @@ Get virtual network object from the get method and then destroy that virtual net
|
|
126
138
|
vnet.destroy
|
127
139
|
```
|
128
140
|
|
141
|
+
## Check Subnet Existence
|
142
|
+
|
143
|
+
```ruby
|
144
|
+
azure_network_service.subnets.check_subnet_exists(<Resource Group name>, <Virtual Network Name>, <Subnet Name>)
|
145
|
+
```
|
146
|
+
|
129
147
|
## Create Subnet
|
130
148
|
|
131
149
|
Create a new Subnet
|
@@ -217,6 +235,12 @@ Get a subnet object from the get method and then destroy that subnet.
|
|
217
235
|
subnet.destroy
|
218
236
|
```
|
219
237
|
|
238
|
+
## Check Network Interface Card Existence
|
239
|
+
|
240
|
+
```ruby
|
241
|
+
azure_network_service.network_interfaces.check_network_interface_exists(<Resource Group name>, <Network Interface name>)
|
242
|
+
```
|
243
|
+
|
220
244
|
## Create Network Interface Card
|
221
245
|
|
222
246
|
Create a new network interface. Skip public_ip_address_id parameter to create network interface without PublicIP. The parameter, private_ip_allocation_method can be Dynamic or Static.
|
@@ -294,6 +318,12 @@ Get a network interface object from the get method and then destroy that network
|
|
294
318
|
nic.destroy
|
295
319
|
```
|
296
320
|
|
321
|
+
## Check Public IP Existence
|
322
|
+
|
323
|
+
```ruby
|
324
|
+
azure_network_service.public_ips.check_public_ip_exists(<Resource Group name>, <Public IP name>>)
|
325
|
+
```
|
326
|
+
|
297
327
|
## Create Public IP
|
298
328
|
|
299
329
|
Create a new public IP. The parameter, type can be Dynamic or Static.
|
@@ -357,6 +387,12 @@ Get a Public IP object from the get method and then destroy that public IP.
|
|
357
387
|
pubip.destroy
|
358
388
|
```
|
359
389
|
|
390
|
+
## Check Network Security Group Existence
|
391
|
+
|
392
|
+
```ruby
|
393
|
+
azure_network_service.network_security_groups.check_net_sec_group_exists(<Resource Group name>, <Network Security Group name>)
|
394
|
+
```
|
395
|
+
|
360
396
|
## Create Network Security Group
|
361
397
|
|
362
398
|
Network security group requires a resource group to create.
|
@@ -462,6 +498,12 @@ Get a network security group object from the get method and then destroy that ne
|
|
462
498
|
nsg.destroy
|
463
499
|
```
|
464
500
|
|
501
|
+
## Check Network Security Rule Existence
|
502
|
+
|
503
|
+
```ruby
|
504
|
+
azure_network_service.network_security_rules.check_net_sec_rule_exists(<Resource Group name>, <Network Security Group name>, <Security Rule name>)
|
505
|
+
```
|
506
|
+
|
465
507
|
## Create Network Security Rule
|
466
508
|
|
467
509
|
Network security rule requires a resource group and network security group to create.
|
@@ -513,6 +555,12 @@ Get a network security rule object from the get method and then destroy that net
|
|
513
555
|
network_security_rule.destroy
|
514
556
|
```
|
515
557
|
|
558
|
+
## Check External Load Balancer Existence
|
559
|
+
|
560
|
+
```ruby
|
561
|
+
azure_network_service.load_balancers.check_load_balancer_exists(<Resource Group name>, <Load Balancer name>)
|
562
|
+
```
|
563
|
+
|
516
564
|
## Create External Load Balancer
|
517
565
|
|
518
566
|
Create a new load balancer.
|
@@ -637,6 +685,17 @@ List all load balancers in a resource group
|
|
637
685
|
end
|
638
686
|
```
|
639
687
|
|
688
|
+
## List Load Balancers in subscription
|
689
|
+
|
690
|
+
List all load balancers in a subscription
|
691
|
+
|
692
|
+
```ruby
|
693
|
+
lbs = azure_network_service.load_balancers
|
694
|
+
lbs.each do |lb|
|
695
|
+
puts "#{lb.name}"
|
696
|
+
end
|
697
|
+
```
|
698
|
+
|
640
699
|
## Retrieve a single Load Balancer
|
641
700
|
|
642
701
|
Get a single record of Load Balancer
|
@@ -656,6 +715,12 @@ Get a load balancer object from the get method and then destroy that load balanc
|
|
656
715
|
lb.destroy
|
657
716
|
```
|
658
717
|
|
718
|
+
## Check Virtual Network Gateway Existence
|
719
|
+
|
720
|
+
```ruby
|
721
|
+
azure_network_service.virtual_network_gateways.check_vnet_gateway_exists(<Resource Group name>, <Virtual Network Gateway Name>)
|
722
|
+
```
|
723
|
+
|
659
724
|
## Create Virtual Network Gateway
|
660
725
|
|
661
726
|
Create a new Virtual Network Gateway.
|
@@ -737,6 +802,12 @@ Get a virtual network gateway object from the get method and then destroy that v
|
|
737
802
|
network_gateway.destroy
|
738
803
|
```
|
739
804
|
|
805
|
+
## Check Local Network Gateway Existence
|
806
|
+
|
807
|
+
```ruby
|
808
|
+
azure_network_service.local_network_gateways.check_local_net_gateway_exists(<Resource Group name>, <Local Network Gateway Name>)
|
809
|
+
```
|
810
|
+
|
740
811
|
## Create Local Network Gateway
|
741
812
|
|
742
813
|
Create a new Local Network Gateway.
|
@@ -795,6 +866,12 @@ For more details about express route [click here](https://azure.microsoft.com/en
|
|
795
866
|
|
796
867
|
The Circuit represents the entity created by customer to register with an express route service provider with intent to connect to Microsoft.
|
797
868
|
|
869
|
+
## Check Express Route Circuit Existence
|
870
|
+
|
871
|
+
```ruby
|
872
|
+
azure_network_service.express_route_circuits.check_express_route_circuit_exists(<Resource Group name>, <Circuit Name>)
|
873
|
+
```
|
874
|
+
|
798
875
|
## Create an Express Route Circuit
|
799
876
|
|
800
877
|
Create a new Express Route Circuit.
|
@@ -858,6 +935,12 @@ Get an express route circuit object from the get method and then destroy that ex
|
|
858
935
|
|
859
936
|
Authorization is part of Express Route circuit.
|
860
937
|
|
938
|
+
## Check Express Route Circuit Authorization Existence
|
939
|
+
|
940
|
+
```ruby
|
941
|
+
azure_network_service.express_route_circuit_authorizations.check_express_route_cir_auth_exists(<Resource Group name>, <Circuit Name>, <Authorization-Name>)
|
942
|
+
```
|
943
|
+
|
861
944
|
## Create an Express Route Circuit Authorization
|
862
945
|
|
863
946
|
Create a new Express Route Circuit Authorization. Parameter 'authorization_status' can be 'Available' or 'InUse'.
|
@@ -963,6 +1046,12 @@ List all express route service providers
|
|
963
1046
|
puts service_providers
|
964
1047
|
```
|
965
1048
|
|
1049
|
+
## Check Virtual Network Gateway Connection Existence
|
1050
|
+
|
1051
|
+
```ruby
|
1052
|
+
azure_network_service.virtual_network_gateway_connections.check_vnet_gateway_connection_exists(<Resource Group name>, <Virtual Network Gateway Connection Name>)
|
1053
|
+
```
|
1054
|
+
|
966
1055
|
## Create Virtual Network Gateway Connection
|
967
1056
|
|
968
1057
|
Create a new Virtual Network Gateway Connection.
|
@@ -16,12 +16,20 @@ Next, create a connection to the Resources Service:
|
|
16
16
|
|
17
17
|
```ruby
|
18
18
|
azure_resources_service = Fog::Resources::AzureRM.new(
|
19
|
-
tenant_id: '<Tenantid>',
|
20
|
-
client_id: '<Clientid>',
|
21
|
-
client_secret: '<ClientSecret>',
|
22
|
-
subscription_id: '<Subscriptionid>'
|
19
|
+
tenant_id: '<Tenantid>', # Tenant id of Azure Active Directory Application
|
20
|
+
client_id: '<Clientid>', # Client id of Azure Active Directory Application
|
21
|
+
client_secret: '<ClientSecret>', # Client Secret of Azure Active Directory Application
|
22
|
+
subscription_id: '<Subscriptionid>', # Subscription id of an Azure Account
|
23
|
+
:environment => '<AzureCloud/AzureChinaCloud/AzureUSGovernment/AzureGermanCloud>' # Azure cloud environment. Default is AzureCloud.
|
23
24
|
)
|
24
25
|
```
|
26
|
+
|
27
|
+
## Check Resource Group Existence
|
28
|
+
|
29
|
+
```ruby
|
30
|
+
azure_resources_service.resource_groups.check_resource_group_exists(<Resource Group name>)
|
31
|
+
```
|
32
|
+
|
25
33
|
## Create Resource Group
|
26
34
|
|
27
35
|
Create a new resource group
|
@@ -110,6 +118,18 @@ Remove tag from a resource as following:
|
|
110
118
|
)
|
111
119
|
```
|
112
120
|
|
121
|
+
## Check Resource Existence
|
122
|
+
|
123
|
+
```ruby
|
124
|
+
azure_resources_service.azure_resources.check_azure_resource_exists(<Resource-ID>, <API-Version>)
|
125
|
+
```
|
126
|
+
|
127
|
+
## Check Deployment Existence
|
128
|
+
|
129
|
+
```ruby
|
130
|
+
azure_resources_service.deployments.check_deployment_exists(<Resource Group Name>, <Deployment name>)
|
131
|
+
```
|
132
|
+
|
113
133
|
## Create Deployment
|
114
134
|
|
115
135
|
Create a Deployment
|
data/lib/fog/azurerm/docs/sql.md
CHANGED
@@ -16,10 +16,11 @@ Next, create a connection to the SQL Service:
|
|
16
16
|
|
17
17
|
```ruby
|
18
18
|
azure_sql_service = Fog::Sql::AzureRM.new(
|
19
|
-
tenant_id: '<Tenantid>',
|
20
|
-
client_id: '<Clientid>',
|
21
|
-
client_secret: '<ClientSecret>',
|
22
|
-
subscription_id: '<Subscriptionid>'
|
19
|
+
tenant_id: '<Tenantid>', # Tenant id of Azure Active Directory Application
|
20
|
+
client_id: '<Clientid>', # Client id of Azure Active Directory Application
|
21
|
+
client_secret: '<ClientSecret>', # Client Secret of Azure Active Directory Application
|
22
|
+
subscription_id: '<Subscriptionid>', # Subscription id of an Azure Account
|
23
|
+
:environment => '<AzureCloud/AzureChinaCloud/AzureUSGovernment/AzureGermanCloud>' # Azure cloud environment. Default is AzureCloud.
|
23
24
|
)
|
24
25
|
```
|
25
26
|
|
@@ -89,8 +90,6 @@ If parameter {edition} is set to DataWarehouse, the acceptable values for parame
|
|
89
90
|
collation: '<Collation>', # Conditional. Specifies the name of the collation. If createMode is set to Default, then this value must be specified.
|
90
91
|
max_size_bytes: '<Size>', # Conditional. Specifies the maximum size to which the database may grow. If createMode is set to Default, then this value must be specified.
|
91
92
|
requested_service_objective_name: '<Name>' , # Conditional. Specifies the requested service level of the database. If requestedServiceObjectiveId is specified, then this value must not be specified. The acceptable value are: [Basic, S0, S1, S2, S3, P1, P2, P4, P6, P11, ElasticPool]
|
92
|
-
restore_point_in_time: '<String>', # Conditional. Specifies the point in time for the restore. If createMode is set to PointInTimeRestore, then this value must be specified.
|
93
|
-
source_database_deletion_date: '<Date>', # Conditional. Specifies the deletion date of the source database. If createMode is set to Restore, then this value must be specified
|
94
93
|
elastic_pool_name: '<Pool Name>', # Conditional. Specifies the name of the elastic database pool. If requestedServiceObjectiveId or requestedServiceObjectiveName is set to ElasticPool, then this value must be specified.
|
95
94
|
requested_service_objective_id: '<GUID>' # Conditional. Specifies the identifier of the requested service level. If requestedServiceObjectiveName is specified, then this value must not be specified.
|
96
95
|
)
|
@@ -59,6 +59,12 @@ Check Storage Account Name Availability.This operation checks that account name
|
|
59
59
|
azure_storage_service.storage_accounts.check_name_availability('<Storage Account name>')
|
60
60
|
```
|
61
61
|
|
62
|
+
## Check Storage Account Existence
|
63
|
+
|
64
|
+
```ruby
|
65
|
+
azure_storage_service.storage_accounts.check_storage_account_exists(<Resource Group name>, <StorageAccountName>)
|
66
|
+
```
|
67
|
+
|
62
68
|
## Create Storage Account
|
63
69
|
|
64
70
|
Create a new storage account. Replication attribute for Standard and Premium account types are as follows
|
@@ -161,6 +167,12 @@ By default the disk will be deleted from the container 'vhds'. You can specify o
|
|
161
167
|
azure_storage_service.delete_disk('<Data Disk Name>', options = {})
|
162
168
|
```
|
163
169
|
|
170
|
+
## Check Storage Container Existence
|
171
|
+
|
172
|
+
```ruby
|
173
|
+
azure_storage_service.directories.check_container_exists(<container name>)
|
174
|
+
```
|
175
|
+
|
164
176
|
## Create a storage container
|
165
177
|
|
166
178
|
Create a storage container in the current storage account.
|
@@ -15,13 +15,20 @@ Next, create a connection to the Traffic Manager Service:
|
|
15
15
|
|
16
16
|
```ruby
|
17
17
|
azure_traffic_manager_service = Fog::TrafficManager::AzureRM.new(
|
18
|
-
tenant_id: '<Tenantid>',
|
19
|
-
client_id: '<Clientid>',
|
20
|
-
client_secret: '<ClientSecret>',
|
21
|
-
subscription_id: '<Subscriptionid>'
|
18
|
+
tenant_id: '<Tenantid>', # Tenant id of Azure Active Directory Application
|
19
|
+
client_id: '<Clientid>', # Client id of Azure Active Directory Application
|
20
|
+
client_secret: '<ClientSecret>', # Client Secret of Azure Active Directory Application
|
21
|
+
subscription_id: '<Subscriptionid>', # Subscription id of an Azure Account
|
22
|
+
:environment => '<AzureCloud/AzureChinaCloud/AzureUSGovernment/AzureGermanCloud>' # Azure cloud environment. Default is AzureCloud.
|
22
23
|
)
|
23
24
|
```
|
24
25
|
|
26
|
+
## Check Traffic Manager Profile Existence
|
27
|
+
|
28
|
+
```ruby
|
29
|
+
azure_traffic_manager_service.traffic_manager_profiles.check_traffic_manager_profile_exists(<Resource Group Name>, <Profile Name>)
|
30
|
+
```
|
31
|
+
|
25
32
|
## Create Traffic Manager Profile
|
26
33
|
|
27
34
|
Create a new Traffic Manager Profile. The parameter 'traffic_routing_method' can be 'Performance', 'Weighted' or 'Priority'.
|
@@ -83,6 +90,17 @@ Get a Traffic Manager Profile object from the get method and then destroy that T
|
|
83
90
|
profile.destroy
|
84
91
|
```
|
85
92
|
|
93
|
+
## Check Traffic Manager Endpoint Existence
|
94
|
+
|
95
|
+
```ruby
|
96
|
+
azure_network_service.traffic_manager_end_points.check_traffic_manager_endpoint_exists(
|
97
|
+
<Resource Group Name>,
|
98
|
+
<Profile Name>,
|
99
|
+
<Endpoint Name>,
|
100
|
+
<Type(externalEndpoints)>
|
101
|
+
)
|
102
|
+
```
|
103
|
+
|
86
104
|
## Create Traffic Manager Endpoint
|
87
105
|
|
88
106
|
Traffic Manager Profile is pre-requisite of Traffic Manager Endpoint. Create a new Traffic Manager Endpoint. The parameter 'type' can be 'externalEndpoints, 'azureEndpoints' or 'nestedEndpoints'.
|
@@ -0,0 +1,51 @@
|
|
1
|
+
module Fog
|
2
|
+
module KeyVault
|
3
|
+
# This class registers models, requests and collections
|
4
|
+
class AzureRM < Fog::Service
|
5
|
+
requires :tenant_id
|
6
|
+
requires :client_id
|
7
|
+
requires :client_secret
|
8
|
+
requires :subscription_id
|
9
|
+
|
10
|
+
request_path 'fog/azurerm/requests/key_vault'
|
11
|
+
request :get_vault
|
12
|
+
request :list_vaults
|
13
|
+
request :create_or_update_vault
|
14
|
+
request :delete_vault
|
15
|
+
request :check_vault_exists
|
16
|
+
|
17
|
+
model_path 'fog/azurerm/models/key_vault'
|
18
|
+
model :vault
|
19
|
+
model :access_policy_entry
|
20
|
+
collection :vaults
|
21
|
+
|
22
|
+
# This class provides the mock implementation for unit tests.
|
23
|
+
class Mock
|
24
|
+
def initialize(_options = {})
|
25
|
+
begin
|
26
|
+
require 'azure_mgmt_key_vault'
|
27
|
+
rescue LoadError => e
|
28
|
+
retry if require('rubygems')
|
29
|
+
raise e.message
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
33
|
+
|
34
|
+
# This class provides the actual implementation for service calls.
|
35
|
+
class Real
|
36
|
+
def initialize(options)
|
37
|
+
begin
|
38
|
+
require 'azure_mgmt_key_vault'
|
39
|
+
rescue LoadError => e
|
40
|
+
retry if require('rubygems')
|
41
|
+
raise e.message
|
42
|
+
end
|
43
|
+
|
44
|
+
credentials = Fog::Credentials::AzureRM.get_credentials(options[:tenant_id], options[:client_id], options[:client_secret])
|
45
|
+
@key_vault_client = ::Azure::ARM::KeyVault::KeyVaultManagementClient.new(credentials)
|
46
|
+
@key_vault_client.subscription_id = options[:subscription_id]
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|