Skip to content

Commit

Permalink
Add table azure_virtual_network_gateway. Closes #152 (#157)
Browse files Browse the repository at this point in the history
  • Loading branch information
bigdatasourav authored Jul 13, 2021
1 parent b19fad1 commit 048bce9
Show file tree
Hide file tree
Showing 15 changed files with 493 additions and 0 deletions.
Empty file.
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
resource "null_resource" "delay" {
provisioner "local-exec" {
command = "sleep 3600"
}
}

resource "null_resource" "named_test_resource" {
depends_on = [
null_resource.delay
]
provisioner "local-exec" {
command = "az network vnet-gateway delete -g {{ resourceName }} -n {{ resourceName }}"
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
[
{
"enable_bgp": false,
"id": "{{ output.resource_id.value }}",
"name": "{{ resourceName }}",
"region": "{{ output.region.value }}",
"resource_group": "{{ resourceName }}",
"type": "Microsoft.Network/virtualNetworkGateways"
}
]
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
select name, id, region, type, enable_bgp, resource_group
from azure.azure_virtual_network_gateway
where name = '{{ resourceName }}' and resource_group = '{{ resourceName }}';
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
[
{
"id": "{{ output.resource_id.value }}",
"name": "{{ resourceName }}"
}
]
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
select id, name
from azure.azure_virtual_network_gateway
where name = '{{ resourceName }}';
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
null
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
select name, akas, title
from azure.azure_virtual_network_gateway
where name = 'dummy-{{ resourceName }}' and resource_group = '{{ resourceName }}';
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
[
{
"akas": [
"{{ output.resource_aka.value }}",
"{{ output.resource_aka_lower.value }}"
],
"name": "{{ resourceName }}",
"title": "{{ resourceName }}"
}
]
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
select name, akas, title
from azure.azure_virtual_network_gateway
where name = '{{ resourceName }}' and resource_group = '{{ resourceName }}';
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{}
104 changes: 104 additions & 0 deletions azure-test/tests/azure_virtual_network_gateway/variables.tf
Original file line number Diff line number Diff line change
@@ -0,0 +1,104 @@
variable "resource_name" {
type = string
default = "turbot-test-20200125-create-update"
description = "Name of the resource used throughout the test."
}

variable "azure_environment" {
type = string
default = "public"
description = "Azure environment used for the test."
}

variable "azure_subscription" {
type = string
default = "3510ae4d-530b-497d-8f30-53b9616fc6c1"
description = "Azure subscription used for the test."
}

provider "azurerm" {
# Cannot be passed as a variable
version = "=1.36.0"
environment = var.azure_environment
subscription_id = var.azure_subscription
}

data "azurerm_client_config" "current" {}

data "null_data_source" "resource" {
inputs = {
scope = "azure:///subscriptions/${data.azurerm_client_config.current.subscription_id}"
}
}

resource "azurerm_resource_group" "named_test_resource" {
name = var.resource_name
location = "East US"
}

resource "azurerm_virtual_network" "named_test_resource" {
name = var.resource_name
address_space = ["10.0.0.0/16"]
location = azurerm_resource_group.named_test_resource.location
resource_group_name = azurerm_resource_group.named_test_resource.name
}

resource "azurerm_subnet" "named_test_resource" {
name = "GatewaySubnet"
resource_group_name = azurerm_resource_group.named_test_resource.name
virtual_network_name = azurerm_virtual_network.named_test_resource.name
address_prefix = "10.0.1.0/24"
}

resource "azurerm_public_ip" "named_test_resource" {
depends_on = [azurerm_subnet.named_test_resource]
name = var.resource_name
location = azurerm_resource_group.named_test_resource.location
resource_group_name = azurerm_resource_group.named_test_resource.name
allocation_method = "Dynamic"
}

locals {
path = "${path.cwd}/info.json"
}

resource "null_resource" "named_test_resource" {
depends_on = [azurerm_public_ip.named_test_resource]
provisioner "local-exec" {
command = "az network vnet-gateway create --gateway-type Vpn --location ${azurerm_resource_group.named_test_resource.location} --name ${var.resource_name} --no-wait --public-ip-addresses ${var.resource_name} --resource-group ${var.resource_name} --vnet ${var.resource_name}"
}
provisioner "local-exec" {
command = "az network vnet-gateway show -g ${var.resource_name} -n ${var.resource_name} > ${local.path}"
}
}

data "local_file" "input" {
depends_on = [null_resource.named_test_resource]
filename = local.path
}

output "resource_aka" {
depends_on = [null_resource.named_test_resource]
value = "azure://${jsondecode(data.local_file.input.content).id}"
}

output "resource_aka_lower" {
depends_on = [null_resource.named_test_resource]
value = "azure://${lower(jsondecode(data.local_file.input.content).id)}"
}

output "resource_name" {
value = var.resource_name
}

output "resource_id" {
value = jsondecode(data.local_file.input.content).id
}

output "subscription_id" {
value = var.azure_subscription
}

output "region" {
value = azurerm_resource_group.named_test_resource.location
}
1 change: 1 addition & 0 deletions azure/plugin.go
Original file line number Diff line number Diff line change
Expand Up @@ -93,6 +93,7 @@ func Plugin(ctx context.Context) *plugin.Plugin {
"azure_subscription": tableAzureSubscription(ctx),
"azure_tenant": tableAzureTenant(ctx),
"azure_virtual_network": tableAzureVirtualNetwork(ctx),
"azure_virtual_network_gateway": tableAzureVirtualNetworkGateway(ctx),
// "azure_storage_table": tableAzureStorageTable(ctx),
},
}
Expand Down
Loading

0 comments on commit 048bce9

Please sign in to comment.