From c359527714affb0db97812ff8bd2143f957126ac Mon Sep 17 00:00:00 2001 From: "ankit.patil" Date: Tue, 26 Mar 2024 14:43:09 +0530 Subject: [PATCH 1/4] fix for ESCL-4868 , defaulting wit_time to 0 to avoid drift --- .goreleaser.yml | 2 +- GNUmakefile | 2 +- docs/resources/appdata_dsource.md | 2 +- docs/resources/oracle_dsource.md | 2 +- internal/provider/resource_appdata_dsource.go | 7 ++++++- internal/provider/resource_oracle_dsource.go | 1 - 6 files changed, 10 insertions(+), 6 deletions(-) diff --git a/.goreleaser.yml b/.goreleaser.yml index 2364b68..924629d 100644 --- a/.goreleaser.yml +++ b/.goreleaser.yml @@ -1,7 +1,7 @@ # Visit https://goreleaser.com for documentation on how to customize this # behavior. env: - - PROVIDER_VERSION=3.2.0 + - PROVIDER_VERSION=3.2.1 before: hooks: # this is just an example and not a requirement for provider building/publishing diff --git a/GNUmakefile b/GNUmakefile index 0372d0b..ae4f039 100644 --- a/GNUmakefile +++ b/GNUmakefile @@ -3,7 +3,7 @@ HOSTNAME=delphix.com NAMESPACE=dct NAME=delphix BINARY=terraform-provider-${NAME} -VERSION=3.2.0 +VERSION=3.2.1 OS_ARCH=darwin_amd64 default: install diff --git a/docs/resources/appdata_dsource.md b/docs/resources/appdata_dsource.md index 27d4e7a..a2076f8 100644 --- a/docs/resources/appdata_dsource.md +++ b/docs/resources/appdata_dsource.md @@ -183,4 +183,4 @@ resource "delphix_appdata_dsource" "dsource_name" { * `skip_wait_for_snapshot_creation` - (Optional) By default this resource will wait for a snapshot to be created post-dSource creation. This ensure a snapshot is available during the VDB provisioning. This behavior can be skipped by setting this parameter to `true`. -* `wait_time` - (Optional) By default this resource waits 3 minutes for a snapshot to be created. Increase the integer value as needed for larger dSource snapshots. This parameter can be ignored if 'skip_wait_for_snapshot_creation' is set to `true`. +* `wait_time` - (Optional) By default this resource waits 0 minutes for a snapshot to be created. Increase the integer value as needed for larger dSource snapshots. This parameter can be ignored if 'skip_wait_for_snapshot_creation' is set to `true`. diff --git a/docs/resources/oracle_dsource.md b/docs/resources/oracle_dsource.md index b96cdb0..dd50df0 100644 --- a/docs/resources/oracle_dsource.md +++ b/docs/resources/oracle_dsource.md @@ -197,4 +197,4 @@ resource "delphix_oracle_dsource" "test_oracle_dsource" { * `skip_wait_for_snapshot_creation` - (Optional) By default this resource will wait for a snapshot to be created post-dSource creation. This ensure a snapshot is available during the VDB provisioning. This behavior can be skipped by setting this parameter to `true`. -* `wait_time` - (Optional) By default this resource waits 3 minutes for a snapshot to be created. Increase the integer value as needed for larger dSource snapshots. This parameter can be ignored if 'skip_wait_for_snapshot_creation' is set to `true`. \ No newline at end of file +* `wait_time` - (Optional) By default this resource waits 0 minutes for a snapshot to be created. Increase the integer value as needed for larger dSource snapshots. This parameter can be ignored if 'skip_wait_for_snapshot_creation' is set to `true`. \ No newline at end of file diff --git a/internal/provider/resource_appdata_dsource.go b/internal/provider/resource_appdata_dsource.go index 0f250e1..95aac5e 100644 --- a/internal/provider/resource_appdata_dsource.go +++ b/internal/provider/resource_appdata_dsource.go @@ -329,7 +329,6 @@ func resourceAppdataDsource() *schema.Resource { }, "wait_time": { Type: schema.TypeInt, - Default: 3, Optional: true, }, "skip_wait_for_snapshot_creation": { @@ -558,6 +557,12 @@ func resourceDsourceUpdate(ctx context.Context, d *schema.ResourceData, meta int d.Set(key, old) } + //if d.HasChanges("wait_time", "skip_wait_for_snapshot_creation") { + // d.Set("wait_time", 3) + // d.Set("skip_wait_for_snapshot_creation", false) + // return diag.Diagnostics{} + //} + return diag.Errorf("Action update not implemented for resource : dSource") } diff --git a/internal/provider/resource_oracle_dsource.go b/internal/provider/resource_oracle_dsource.go index 2927ff7..e1233a7 100644 --- a/internal/provider/resource_oracle_dsource.go +++ b/internal/provider/resource_oracle_dsource.go @@ -533,7 +533,6 @@ func resourceOracleDsource() *schema.Resource { }, "wait_time": { Type: schema.TypeInt, - Default: 3, Optional: true, }, "skip_wait_for_snapshot_creation": { From a077b5d2c318090558cbbf2a622c314fd855f61c Mon Sep 17 00:00:00 2001 From: "ankit.patil" Date: Tue, 26 Mar 2024 14:44:18 +0530 Subject: [PATCH 2/4] minor update --- internal/provider/resource_appdata_dsource.go | 6 ------ 1 file changed, 6 deletions(-) diff --git a/internal/provider/resource_appdata_dsource.go b/internal/provider/resource_appdata_dsource.go index 95aac5e..739e119 100644 --- a/internal/provider/resource_appdata_dsource.go +++ b/internal/provider/resource_appdata_dsource.go @@ -557,12 +557,6 @@ func resourceDsourceUpdate(ctx context.Context, d *schema.ResourceData, meta int d.Set(key, old) } - //if d.HasChanges("wait_time", "skip_wait_for_snapshot_creation") { - // d.Set("wait_time", 3) - // d.Set("skip_wait_for_snapshot_creation", false) - // return diag.Diagnostics{} - //} - return diag.Errorf("Action update not implemented for resource : dSource") } From 17c1c6c9a3f1fe0cd1204c40cbadf9ab9863fb7d Mon Sep 17 00:00:00 2001 From: "ankit.patil" Date: Tue, 26 Mar 2024 15:18:41 +0530 Subject: [PATCH 3/4] updated method in test file --- internal/provider/resource_vdb_test.go | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/internal/provider/resource_vdb_test.go b/internal/provider/resource_vdb_test.go index c76a93f..fa8af22 100644 --- a/internal/provider/resource_vdb_test.go +++ b/internal/provider/resource_vdb_test.go @@ -141,8 +141,8 @@ func testAccCheckDctVDBBookmarkConfigBasic() string { vdb_req := client.VDBsApi.ProvisionVdbBySnapshot(context.Background()) vdb_res, vdb_http_res, vdb_err := vdb_req.ProvisionVDBBySnapshotParameters(*provisionVDBBySnapshotParameters).Execute() - if diags := apiErrorResponseHelper(vdb_res, vdb_http_res, vdb_err); diags != nil { - println("An error occured during vdb creation: " + vdb_err.Error()) + if diags := apiErrorResponseHelper(context.Background(), vdb_res, vdb_http_res, vdb_err); diags != nil { + println("An error occurred during vdb creation: " + vdb_err.Error()) return "" // return empty config to indicate config error } vdb_id = *vdb_res.VdbId @@ -163,8 +163,8 @@ func testAccCheckDctVDBBookmarkConfigBasic() string { bookmark_req := client.BookmarksApi.CreateBookmark(context.Background()).BookmarkCreateParameters(*bookmark) bk_res, bk_http_res, bk_err := bookmark_req.Execute() - if diags := apiErrorResponseHelper(bk_res, bk_http_res, bk_err); diags != nil { - println("An error occured during bookmark creation: " + bk_err.Error()) + if diags := apiErrorResponseHelper(context.Background(), bk_res, bk_http_res, bk_err); diags != nil { + println("An error occurred during bookmark creation: " + bk_err.Error()) return "" } bookmark_id = *bk_res.Bookmark.Id @@ -173,7 +173,7 @@ func testAccCheckDctVDBBookmarkConfigBasic() string { bk_job_res, bk_job_err := PollJobStatus(*bk_res.Job.Id, context.Background(), client) if bk_job_res == Failed || bk_job_res == Canceled || bk_job_res == Abandoned { - println("An error occured during bookmark job polling: " + bk_job_err) + println("An error occurred during bookmark job polling: " + bk_job_err) return "" // return empty config to indicate config error } From f8a82e188add139e6590685b5622fa81ed77521d Mon Sep 17 00:00:00 2001 From: "ankit.patil" Date: Tue, 26 Mar 2024 18:30:12 +0530 Subject: [PATCH 4/4] updates to documentation and default to 0 for wait_time --- docs/resources/appdata_dsource.md | 5 ++++- internal/provider/resource_appdata_dsource.go | 1 + internal/provider/resource_oracle_dsource.go | 1 + 3 files changed, 6 insertions(+), 1 deletion(-) diff --git a/docs/resources/appdata_dsource.md b/docs/resources/appdata_dsource.md index a2076f8..27ccd4a 100644 --- a/docs/resources/appdata_dsource.md +++ b/docs/resources/appdata_dsource.md @@ -8,7 +8,10 @@ The Appdata dSource resource allows Terraform to create and delete AppData dSour ## System Requirements * Data Control Tower v10.0.1+ is required for dSource management. Lower versions are not supported. -* This Appdata dSource Resource only supports Appdata based datasources , such as POSTGRES,SAP HANA, IBM Db2, etc.The below examples are shown from the PostgreSQL context. See the Oracle dSource Resource for the support of Oracle. The Delphix Provider does not support Oracle, SQL Server, or SAP ASE. +* This Appdata dSource Resource only supports Appdata based datasource's , such as POSTGRES,SAP HANA, IBM Db2, etc.The below examples are shown from the PostgreSQL context. See the Oracle dSource Resource for the support of Oracle. The Delphix Provider does not support Oracle, SQL Server, or SAP ASE. + +## Upgrade Guide +* Any new dSource created post Version>=3.2.1 can set `wait_time` to wait for snapshot creation , dSources created prior to this version will not support this capability ## Example Usage diff --git a/internal/provider/resource_appdata_dsource.go b/internal/provider/resource_appdata_dsource.go index 739e119..2260b1a 100644 --- a/internal/provider/resource_appdata_dsource.go +++ b/internal/provider/resource_appdata_dsource.go @@ -329,6 +329,7 @@ func resourceAppdataDsource() *schema.Resource { }, "wait_time": { Type: schema.TypeInt, + Default: 0, Optional: true, }, "skip_wait_for_snapshot_creation": { diff --git a/internal/provider/resource_oracle_dsource.go b/internal/provider/resource_oracle_dsource.go index e1233a7..b2d99dd 100644 --- a/internal/provider/resource_oracle_dsource.go +++ b/internal/provider/resource_oracle_dsource.go @@ -533,6 +533,7 @@ func resourceOracleDsource() *schema.Resource { }, "wait_time": { Type: schema.TypeInt, + Default: 0, Optional: true, }, "skip_wait_for_snapshot_creation": {