Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add table azure_sql_database. closes #89 #93

Merged
merged 4 commits into from
Apr 22, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Empty file.
33 changes: 33 additions & 0 deletions azure-test/tests/azure_sql_database/test-get-expected.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
[
{
"akas": [
"{{ output.resource_aka.value }}",
"{{ output.resource_aka_lower.value }}"
],
"containment_state": 2,
"default_secondary_location": "{{ output.resource_default_secondary_location.value }}",
"earliest_restore_date": null,
"edition": "GeneralPurpose",
"elastic_pool_name": null,
"id": "{{ output.resource_id.value }}",
"location": "{{ output.resource_location.value }}",
"max_size_bytes": "34359738368",
"name": "{{ resourceName }}",
"region": "{{ output.resource_region.value }}",
"requested_service_objective_name": "GP_Gen5_2",
"resource_group": "{{ resourceName }}",
"server_name": "{{ resourceName }}",
"service_level_objective": "GP_Gen5_2",
"status": "Online",
"subscription_id": "{{ output.subscription_id.value }}",
"tags": {
"foo": "bar"
},
"title": "{{ resourceName }}",
"transparent_data_encryption": {
"status": "Enabled"
},
"type": "Microsoft.Sql/servers/databases",
"zone_redundant": false
}
]
6 changes: 6 additions & 0 deletions azure-test/tests/azure_sql_database/test-get-query.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
select name, id, server_name, status, type, containment_state, default_secondary_location, earliest_restore_date, edition, elastic_pool_name, location,max_size_bytes, zone_redundant, requested_service_objective_name, service_level_objective,transparent_data_encryption, title, tags, akas, region, resource_group, subscription_id
from
azure.azure_sql_database
where
name = '{{ resourceName }}'
and resource_group = '{{ resourceName }}';
10 changes: 10 additions & 0 deletions azure-test/tests/azure_sql_database/test-hydrate-expected.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
[
{
"id": "{{ output.resource_id.value }}",
"name": "{{ resourceName }}",
"server_name": "{{ resourceName }}",
"transparent_data_encryption": {
"status": "Enabled"
}
}
]
3 changes: 3 additions & 0 deletions azure-test/tests/azure_sql_database/test-hydrate-query.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
select name, id, server_name, transparent_data_encryption
from azure.azure_sql_database
where name = '{{ resourceName }}' and resource_group = '{{ resourceName }}';
9 changes: 9 additions & 0 deletions azure-test/tests/azure_sql_database/test-list-expected.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
[
{
"id": "{{ output.resource_id.value }}",
"location": "{{ output.resource_location.value }}",
"name": "{{ resourceName }}",
"resource_group": "{{ resourceName }}",
"server_name": "{{ resourceName }}"
}
]
3 changes: 3 additions & 0 deletions azure-test/tests/azure_sql_database/test-list-query.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
select id, name, location, server_name, resource_group
from azure.azure_sql_database
where akas::text = '["{{output.resource_aka.value}}", "{{output.resource_aka_lower.value}}"]';
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
null
3 changes: 3 additions & 0 deletions azure-test/tests/azure_sql_database/test-not-found-query.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
select *
from azure.azure_sql_database
where name = 'test-0000' and resource_group = 'test-0000';
13 changes: 13 additions & 0 deletions azure-test/tests/azure_sql_database/test-turbot-expected.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
[
{
"akas": [
"{{ output.resource_aka.value }}",
"{{ output.resource_aka_lower.value }}"
],
"name": "{{ resourceName }}",
"tags": {
"foo": "bar"
},
"title": "{{ resourceName }}"
}
]
3 changes: 3 additions & 0 deletions azure-test/tests/azure_sql_database/test-turbot-query.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
select name, akas, title, tags
from azure.azure_sql_database
where name = '{{ resourceName }}' and resource_group = '{{ resourceName }}';
1 change: 1 addition & 0 deletions azure-test/tests/azure_sql_database/variables.json
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{}
99 changes: 99 additions & 0 deletions azure-test/tests/azure_sql_database/variables.tf
Original file line number Diff line number Diff line change
@@ -0,0 +1,99 @@

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."
}

variable "azure_location" {
type = string
default = "East US"
description = "Azure location where the resource will be created."
}

provider "azurerm" {
# Cannot be passed as a variable
features {}
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 = var.azure_location
}

resource "azurerm_sql_server" "named_test_resource" {
name = var.resource_name
resource_group_name = azurerm_resource_group.named_test_resource.name
location = azurerm_resource_group.named_test_resource.location
version = "12.0"
administrator_login = "mradministrator"
administrator_login_password = "thisIsDog11"
}

resource "azurerm_sql_database" "named_test_resource" {
name = var.resource_name
resource_group_name = azurerm_resource_group.named_test_resource.name
location = azurerm_resource_group.named_test_resource.location
server_name = azurerm_sql_server.named_test_resource.name
tags = {
foo = "bar"
}
}

output "resource_aka" {
value = "azure://${azurerm_sql_database.named_test_resource.id}"
}

output "resource_aka_lower" {
value = "azure://${lower(azurerm_sql_database.named_test_resource.id)}"
}

output "resource_name" {
value = var.resource_name
}

output "resource_id" {
value = azurerm_sql_database.named_test_resource.id
}

output "resource_location" {
value = var.azure_location
}

output "resource_region" {
value = lower(var.azure_location)
}

output "resource_creation_date" {
value = azurerm_sql_database.named_test_resource.creation_date
}

output "resource_default_secondary_location" {
value = azurerm_sql_database.named_test_resource.default_secondary_location
}

output "subscription_id" {
value = var.azure_subscription
}
1 change: 1 addition & 0 deletions azure/plugin.go
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,7 @@ func Plugin(ctx context.Context) *plugin.Plugin {
"azure_role_definition": tableAzureIamRoleDefinition(ctx),
"azure_route_table": tableAzureRouteTable(ctx),
"azure_sql_server": tableAzureSQLServer(ctx),
"azure_sql_database": tableAzureSqlDatabase(ctx),
"azure_storage_account": tableAzureStorageAccount(ctx),
"azure_storage_blob_service": tableAzureStorageBlobService(ctx),
"azure_storage_container": tableAzureStorageContainer(ctx),
Expand Down
Loading