From 258f0f0e4ee5ff83004269dc4f67c0534d30ece3 Mon Sep 17 00:00:00 2001 From: "Elena Xin (Centific Technologies Inc)" Date: Tue, 9 Jan 2024 16:01:49 +0800 Subject: [PATCH 1/2] support dns_zone for resource azurerm_mssql_managed_instance --- .../mssql_managed_instance_data_source.go | 9 +++++++++ .../mssql_managed_instance_resource.go | 8 ++++++++ website/docs/d/mssql_managed_instance.html.markdown | 2 ++ website/docs/r/mssql_managed_instance.html.markdown | 2 ++ 4 files changed, 21 insertions(+) diff --git a/internal/services/mssqlmanagedinstance/mssql_managed_instance_data_source.go b/internal/services/mssqlmanagedinstance/mssql_managed_instance_data_source.go index 002b704f7d68..fc863f8927c6 100644 --- a/internal/services/mssqlmanagedinstance/mssql_managed_instance_data_source.go +++ b/internal/services/mssqlmanagedinstance/mssql_managed_instance_data_source.go @@ -26,6 +26,7 @@ type MsSqlManagedInstanceDataSourceModel struct { AdministratorLogin string `tfschema:"administrator_login"` Collation string `tfschema:"collation"` CustomerManagedKeyId string `tfschema:"customer_managed_key_id"` + DnsZone string `tfschema:"dns_zone"` DnsZonePartnerId string `tfschema:"dns_zone_partner_id"` Fqdn string `tfschema:"fqdn"` Identity []identity.SystemOrUserAssignedList `tfschema:"identity"` @@ -86,6 +87,11 @@ func (d MsSqlManagedInstanceDataSource) Attributes() map[string]*pluginsdk.Schem Computed: true, }, + "dns_zone": { + Type: schema.TypeString, + Computed: true, + }, + "dns_zone_partner_id": { Type: schema.TypeString, Computed: true, @@ -198,6 +204,9 @@ func (d MsSqlManagedInstanceDataSource) Read() sdk.ResourceFunc { if props.Collation != nil { model.Collation = *props.Collation } + if props.DNSZone != nil { + model.DnsZone = *props.DNSZone + } if props.KeyID != nil { model.CustomerManagedKeyId = *props.KeyID } diff --git a/internal/services/mssqlmanagedinstance/mssql_managed_instance_resource.go b/internal/services/mssqlmanagedinstance/mssql_managed_instance_resource.go index e8e9e539bb20..6926d51ff11b 100644 --- a/internal/services/mssqlmanagedinstance/mssql_managed_instance_resource.go +++ b/internal/services/mssqlmanagedinstance/mssql_managed_instance_resource.go @@ -32,6 +32,7 @@ type MsSqlManagedInstanceModel struct { AdministratorLoginPassword string `tfschema:"administrator_login_password"` Collation string `tfschema:"collation"` DnsZonePartnerId string `tfschema:"dns_zone_partner_id"` + DnsZone string `tfschema:"dns_zone"` Fqdn string `tfschema:"fqdn"` Identity []identity.SystemOrUserAssignedList `tfschema:"identity"` LicenseType string `tfschema:"license_type"` @@ -238,6 +239,10 @@ func (r MsSqlManagedInstanceResource) Arguments() map[string]*pluginsdk.Schema { func (r MsSqlManagedInstanceResource) Attributes() map[string]*pluginsdk.Schema { return map[string]*pluginsdk.Schema{ + "dns_zone": { + Type: schema.TypeString, + Computed: true, + }, "fqdn": { Type: schema.TypeString, Computed: true, @@ -477,6 +482,9 @@ func (r MsSqlManagedInstanceResource) Read() sdk.ResourceFunc { if props.Collation != nil { model.Collation = *props.Collation } + if props.DNSZone != nil { + model.DnsZone = *props.DNSZone + } if props.FullyQualifiedDomainName != nil { model.Fqdn = *props.FullyQualifiedDomainName } diff --git a/website/docs/d/mssql_managed_instance.html.markdown b/website/docs/d/mssql_managed_instance.html.markdown index 84607fabd6b0..cbbae9033b33 100644 --- a/website/docs/d/mssql_managed_instance.html.markdown +++ b/website/docs/d/mssql_managed_instance.html.markdown @@ -37,6 +37,8 @@ The following attributes are exported: * `customer_managed_key` - Specifies KeyVault key, used by SQL Managed Instance for Transparent Data Encryption. +* `dns_zone` - The Dns Zone where the SQL Managed Instance is located. + * `dns_zone_partner_id` - The ID of the SQL Managed Instance which shares the DNS zone. * `fqdn` - The fully qualified domain name of the Azure Managed SQL Instance. diff --git a/website/docs/r/mssql_managed_instance.html.markdown b/website/docs/r/mssql_managed_instance.html.markdown index c352324abe73..362a047a0d94 100644 --- a/website/docs/r/mssql_managed_instance.html.markdown +++ b/website/docs/r/mssql_managed_instance.html.markdown @@ -263,6 +263,8 @@ In addition to the Arguments listed above - the following Attributes are exporte * `id` - The SQL Managed Instance ID. +* `dns_zone` - The Dns Zone where the SQL Managed Instance is located. + * `fqdn` - The fully qualified domain name of the Azure Managed SQL Instance --- From 1ee3098f7037ac61b519d5da5173856b078c718c Mon Sep 17 00:00:00 2001 From: Elena Xin Date: Mon, 15 Jan 2024 16:25:47 +0800 Subject: [PATCH 2/2] update code --- .../mssql_managed_instance_data_source_test.go | 1 + 1 file changed, 1 insertion(+) diff --git a/internal/services/mssqlmanagedinstance/mssql_managed_instance_data_source_test.go b/internal/services/mssqlmanagedinstance/mssql_managed_instance_data_source_test.go index 581a1f5498ac..a2f226e482fa 100644 --- a/internal/services/mssqlmanagedinstance/mssql_managed_instance_data_source_test.go +++ b/internal/services/mssqlmanagedinstance/mssql_managed_instance_data_source_test.go @@ -24,6 +24,7 @@ func TestAccDataSourceSqlManagedInstance_basic(t *testing.T) { check.That(data.ResourceName).Key("name").Exists(), check.That(data.ResourceName).Key("resource_group_name").Exists(), check.That(data.ResourceName).Key("tags.%").HasValue("2"), + check.That(data.ResourceName).Key("dns_zone").Exists(), ), }, })