Skip to content

Commit 7196f81

Browse files
Terraform Team Automationjotruon
authored andcommitted
Bug Fix - Deprecate resource file for discoveryJobResults resource as it should not have been there
1 parent 9dcbf4f commit 7196f81

File tree

5 files changed

+41
-145
lines changed

5 files changed

+41
-145
lines changed

examples/datasafe/discovery_job_result/discovery_job_result.tf

Lines changed: 4 additions & 69 deletions
Original file line numberDiff line numberDiff line change
@@ -8,101 +8,36 @@ variable "private_key_path" {}
88
variable "region" {}
99
variable "compartment_ocid" {}
1010
variable "data_safe_target_ocid" {}
11+
variable "data_safe_discovery_job_ocid" {}
12+
variable "data_safe_discovery_job_result_key" {}
1113

1214
variable "discovery_jobs_result_column_name" {
1315
default = []
1416
}
1517

1618
variable "discovery_jobs_result_discovery_type" {
17-
default = "ALL"
19+
default = "NEW"
1820
}
1921

2022
variable "discovery_jobs_result_is_result_applied" {
2123
default = false
2224
}
2325

24-
variable "discovery_jobs_result_object" {
25-
default = []
26-
}
27-
2826
variable "discovery_jobs_result_planned_action" {
2927
default = "NONE"
3028
}
3129

32-
variable "discovery_jobs_result_schema_name" {
33-
default = []
34-
}
35-
36-
37-
3830
provider "oci" {
3931
tenancy_ocid = var.tenancy_ocid
4032
user_ocid = var.user_ocid
4133
fingerprint = var.fingerprint
4234
private_key_path = var.private_key_path
4335
region = var.region
4436
}
45-
# sensitive data model
46-
variable "sensitive_data_model_display_name" {
47-
default = "displayName"
48-
}
49-
50-
variable "sensitive_data_model_schemas_for_discovery" {
51-
default = []
52-
}
53-
54-
variable "sensitive_data_model_sensitive_type_ids_for_discovery" {
55-
default = []
56-
}
57-
58-
resource "oci_data_safe_sensitive_data_model" "test_sensitive_data_model" {
59-
#Required
60-
compartment_id = var.compartment_ocid
61-
target_id = var.data_safe_target_ocid
62-
63-
#Optional
64-
display_name = var.sensitive_data_model_display_name
65-
schemas_for_discovery = var.sensitive_data_model_schemas_for_discovery
66-
sensitive_type_ids_for_discovery = var.sensitive_data_model_sensitive_type_ids_for_discovery
67-
}
68-
# ---------
69-
70-
# discovery job
71-
variable "discovery_job_discovery_type" {
72-
default = "ALL"
73-
}
74-
75-
variable "discovery_job_is_include_all_schemas" {
76-
default = true
77-
}
78-
79-
variable "discovery_job_is_include_all_sensitive_types" {
80-
default = true
81-
}
82-
83-
resource "oci_data_safe_discovery_job" "test_discovery_job" {
84-
#Required
85-
compartment_id = var.compartment_ocid
86-
sensitive_data_model_id = oci_data_safe_sensitive_data_model.test_sensitive_data_model.id
87-
88-
#Optional
89-
discovery_type = var.discovery_job_discovery_type
90-
is_include_all_schemas = var.discovery_job_is_include_all_schemas
91-
is_include_all_sensitive_types = var.discovery_job_is_include_all_sensitive_types
92-
}
93-
94-
# -------------
95-
96-
97-
98-
resource "oci_data_safe_discovery_jobs_result" "test_discovery_jobs_result" {
99-
#Required
100-
discovery_job_id = oci_data_safe_discovery_job.test_discovery_job.id
101-
}
10237

10338
data "oci_data_safe_discovery_jobs_results" "test_discovery_jobs_results" {
10439
#Required
105-
discovery_job_id = oci_data_safe_discovery_job.test_discovery_job.id
40+
discovery_job_id = var.data_safe_discovery_job_ocid
10641

10742
#Optional
10843
discovery_type = var.discovery_jobs_result_discovery_type

internal/integrationtest/data_safe_discovery_jobs_result_test.go

Lines changed: 20 additions & 69 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,8 @@ package integrationtest
66
import (
77
"context"
88
"fmt"
9-
"strconv"
109
"testing"
1110

12-
"github.com/oracle/terraform-provider-oci/internal/resourcediscovery"
13-
1411
"github.com/oracle/terraform-provider-oci/internal/acctest"
1512
tf_client "github.com/oracle/terraform-provider-oci/internal/client"
1613
"github.com/oracle/terraform-provider-oci/internal/tfresource"
@@ -26,39 +23,22 @@ import (
2623
)
2724

2825
var (
29-
DataSafeDiscoveryJobsResultResourceConfig = DataSafeDiscoveryJobsResultResourceDependencies +
30-
acctest.GenerateResourceFromRepresentationMap("oci_data_safe_discovery_jobs_result", "test_discovery_jobs_result", acctest.Optional, acctest.Update, discoveryJobsResultRepresentation)
31-
3226
DataSafediscoveryJobsResultSingularDataSourceRepresentation = map[string]interface{}{
33-
"discovery_job_id": acctest.Representation{RepType: acctest.Required, Create: `${oci_data_safe_discovery_job.test_discovery_job.id}`},
34-
"result_key": acctest.Representation{RepType: acctest.Required, Create: `${oci_data_safe_discovery_jobs_result.test_discovery_jobs_result.key}`},
27+
"discovery_job_id": acctest.Representation{RepType: acctest.Required, Create: `${var.discovery_job_id}`},
28+
"result_key": acctest.Representation{RepType: acctest.Required, Create: `${var.discovery_job_result_key}`},
3529
}
3630

3731
DataSafediscoveryJobsResultDataSourceRepresentation = map[string]interface{}{
38-
"discovery_job_id": acctest.Representation{RepType: acctest.Required, Create: `${oci_data_safe_discovery_job.test_discovery_job.id}`},
39-
"discovery_type": acctest.Representation{RepType: acctest.Optional, Create: `ALL`},
32+
"discovery_job_id": acctest.Representation{RepType: acctest.Required, Create: `${var.discovery_job_id}`},
33+
"discovery_type": acctest.Representation{RepType: acctest.Optional, Create: `NEW`},
4034
"is_result_applied": acctest.Representation{RepType: acctest.Optional, Create: `false`},
4135
"planned_action": acctest.Representation{RepType: acctest.Optional, Create: `NONE`},
42-
"filter": acctest.RepresentationGroup{RepType: acctest.Required, Group: discoveryJobsResultDataSourceFilterRepresentation}}
43-
discoveryJobsResultDataSourceFilterRepresentation = map[string]interface{}{
44-
"name": acctest.Representation{RepType: acctest.Required, Create: `key`},
45-
"values": acctest.Representation{RepType: acctest.Required, Create: []string{`${oci_data_safe_discovery_jobs_result.test_discovery_jobs_result.key}`}},
46-
}
47-
48-
discoveryJobsResultRepresentation = map[string]interface{}{
49-
"discovery_job_id": acctest.Representation{RepType: acctest.Required, Create: `${oci_data_safe_discovery_job.test_discovery_job.id}`},
50-
}
51-
52-
discoveryJobsResultRepresentation2 = map[string]interface{}{
53-
"discovery_job_id": acctest.Representation{RepType: acctest.Optional, Create: `${oci_data_safe_discovery_job.test_discovery_job.id}`},
5436
}
55-
56-
DataSafeDiscoveryJobsResultResourceDependencies = acctest.GenerateResourceFromRepresentationMap("oci_data_safe_discovery_job", "test_discovery_job", acctest.Optional, acctest.Create, discoveryJobRepresentation) +
57-
acctest.GenerateResourceFromRepresentationMap("oci_data_safe_sensitive_data_model", "test_sensitive_data_model", acctest.Required, acctest.Create, sensitiveDataModelRepresentation)
5837
)
5938

6039
// issue-routing-tag: data_safe/default
6140
func TestDataSafeDiscoveryJobsResultResource_basic(t *testing.T) {
41+
t.Skip("Skipping this test as the discovery job result key is hardcoded and may not exist when the test runs")
6242
httpreplay.SetScenario("TestDataSafeDiscoveryJobsResultResource_basic")
6343
defer httpreplay.SaveScenario()
6444

@@ -70,55 +50,38 @@ func TestDataSafeDiscoveryJobsResultResource_basic(t *testing.T) {
7050
targetId := utils.GetEnvSettingWithBlankDefault("data_safe_target_ocid")
7151
targetIdVariableStr := fmt.Sprintf("variable \"target_id\" { default = \"%s\" }\n", targetId)
7252

73-
resourceName := "oci_data_safe_discovery_jobs_result.test_discovery_jobs_result"
53+
discoveryJobId := utils.GetEnvSettingWithBlankDefault("data_safe_discovery_job_ocid")
54+
discoveryJobIdVariableStr := fmt.Sprintf("variable \"discovery_job_id\" { default = \"%s\" }\n", discoveryJobId)
55+
56+
discoveryJobKey := utils.GetEnvSettingWithBlankDefault("data_safe_discovery_job_result_key")
57+
discoveryJobKeyVariableStr := fmt.Sprintf("variable \"discovery_job_result_key\" { default = \"%s\" }\n", discoveryJobKey)
58+
7459
datasourceName := "data.oci_data_safe_discovery_jobs_results.test_discovery_jobs_results"
7560
singularDatasourceName := "data.oci_data_safe_discovery_jobs_result.test_discovery_jobs_result"
7661

7762
// Save TF content to Create resource with only required properties. This has to be exactly the same as the config part in the create step in the test.
78-
acctest.SaveConfigContent(config+compartmentIdVariableStr+DataSafeDiscoveryJobsResultResourceDependencies+
79-
acctest.GenerateResourceFromRepresentationMap("oci_data_safe_discovery_jobs_result", "test_discovery_jobs_result", acctest.Required, acctest.Create, discoveryJobsResultRepresentation), "datasafe", "discoveryJobsResult", t)
80-
81-
acctest.ResourceTest(t, testAccCheckDataSafeDiscoveryJobsResultDestroy, []resource.TestStep{
82-
// verify Create
83-
{
84-
Config: config + compartmentIdVariableStr + DataSafeDiscoveryJobsResultResourceDependencies + targetIdVariableStr +
85-
acctest.GenerateResourceFromRepresentationMap("oci_data_safe_discovery_jobs_result", "test_discovery_jobs_result", acctest.Optional, acctest.Create, discoveryJobsResultRepresentation2),
86-
Check: acctest.ComposeAggregateTestCheckFuncWrapper(
87-
88-
func(s *terraform.State) (err error) {
89-
var compositeId string
90-
compositeId, err = acctest.FromInstanceState(s, resourceName, "id")
91-
prefix := "oci_data_safe_discovery_jobs_result:"
92-
fullPath := prefix + compositeId
93-
if isEnableExportCompartment, _ := strconv.ParseBool(utils.GetEnvSettingWithDefault("enable_export_compartment", "true")); isEnableExportCompartment {
94-
if errExport := resourcediscovery.TestExportCompartmentWithResourceName(&fullPath, &compartmentId, resourceName); errExport != nil {
95-
return errExport
96-
}
97-
}
98-
return err
99-
},
100-
),
101-
},
63+
acctest.SaveConfigContent(config+compartmentIdVariableStr,
64+
"datasafe", "discoveryJobsResult", t)
10265

66+
acctest.ResourceTest(t, nil, []resource.TestStep{
10367
// verify datasource
10468
{
105-
Config: config + targetIdVariableStr +
69+
Config: config + targetIdVariableStr + discoveryJobIdVariableStr + discoveryJobKeyVariableStr +
10670
acctest.GenerateDataSourceFromRepresentationMap("oci_data_safe_discovery_jobs_results", "test_discovery_jobs_results", acctest.Optional, acctest.Update, DataSafediscoveryJobsResultDataSourceRepresentation) +
107-
compartmentIdVariableStr + DataSafeDiscoveryJobsResultResourceDependencies +
108-
acctest.GenerateResourceFromRepresentationMap("oci_data_safe_discovery_jobs_result", "test_discovery_jobs_result", acctest.Optional, acctest.Update, discoveryJobsResultRepresentation2),
71+
compartmentIdVariableStr,
10972
Check: acctest.ComposeAggregateTestCheckFuncWrapper(
11073
resource.TestCheckResourceAttrSet(datasourceName, "discovery_job_id"),
111-
resource.TestCheckResourceAttr(datasourceName, "discovery_type", "ALL"),
74+
resource.TestCheckResourceAttr(datasourceName, "discovery_type", "NEW"),
11275
resource.TestCheckResourceAttr(datasourceName, "is_result_applied", "false"),
11376
resource.TestCheckResourceAttr(datasourceName, "planned_action", "NONE"),
114-
resource.TestCheckResourceAttr(datasourceName, "discovery_job_result_collection.#", "1"),
11577
),
11678
},
79+
11780
// verify singular datasource
11881
{
119-
Config: config + targetIdVariableStr +
82+
Config: config + discoveryJobIdVariableStr + targetIdVariableStr + discoveryJobKeyVariableStr +
12083
acctest.GenerateDataSourceFromRepresentationMap("oci_data_safe_discovery_jobs_result", "test_discovery_jobs_result", acctest.Required, acctest.Create, DataSafediscoveryJobsResultSingularDataSourceRepresentation) +
121-
compartmentIdVariableStr + DataSafeDiscoveryJobsResultResourceConfig,
84+
compartmentIdVariableStr,
12285
Check: acctest.ComposeAggregateTestCheckFuncWrapper(
12386
resource.TestCheckResourceAttrSet(singularDatasourceName, "discovery_job_id"),
12487
resource.TestCheckResourceAttrSet(singularDatasourceName, "data_type"),
@@ -135,18 +98,6 @@ func TestDataSafeDiscoveryJobsResultResource_basic(t *testing.T) {
13598
resource.TestCheckResourceAttrSet(singularDatasourceName, "sensitive_type_id"),
13699
),
137100
},
138-
// remove singular datasource from previous step so that it doesn't conflict with import tests
139-
{
140-
Config: config + compartmentIdVariableStr + DataSafeDiscoveryJobsResultResourceConfig + targetIdVariableStr,
141-
},
142-
// verify resource import
143-
{
144-
Config: config + targetIdVariableStr,
145-
ImportState: true,
146-
ImportStateVerify: true,
147-
ImportStateVerifyIgnore: []string{},
148-
ResourceName: resourceName,
149-
},
150101
})
151102
}
152103

internal/service/data_safe/data_safe_discovery_jobs_result_resource.go

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -32,9 +32,10 @@ func DataSafeDiscoveryJobsResultResource() *schema.Resource {
3232
Schema: map[string]*schema.Schema{
3333
// Required
3434
"discovery_job_id": {
35-
Type: schema.TypeString,
36-
Required: true,
37-
ForceNew: true,
35+
Type: schema.TypeString,
36+
Required: true,
37+
ForceNew: true,
38+
Deprecated: tfresource.ResourceDeprecated("oci_data_safe_discovery_jobs_result"),
3839
},
3940
// Optional
4041

@@ -66,8 +67,9 @@ func DataSafeDiscoveryJobsResultResource() *schema.Resource {
6667
},
6768
},
6869
"discovery_type": {
69-
Type: schema.TypeString,
70-
Computed: true,
70+
Type: schema.TypeString,
71+
Computed: true,
72+
Deprecated: tfresource.ResourceDeprecated("oci_data_safe_discovery_jobs_result"),
7173
},
7274
"estimated_data_value_count": {
7375
Type: schema.TypeString,
@@ -78,8 +80,9 @@ func DataSafeDiscoveryJobsResultResource() *schema.Resource {
7880
Computed: true,
7981
},
8082
"key": {
81-
Type: schema.TypeString,
82-
Computed: true,
83+
Type: schema.TypeString,
84+
Computed: true,
85+
Deprecated: tfresource.ResourceDeprecated("oci_data_safe_discovery_jobs_result"),
8386
},
8487
"modified_attributes": {
8588
Type: schema.TypeList,

internal/tfresource/crud_helpers.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -557,6 +557,10 @@ func ResourceDeprecatedForAnother(deprecatedResourceName string, newResourceName
557557
return fmt.Sprintf("The '%s' resource has been deprecated. Please use '%s' instead.", deprecatedResourceName, newResourceName)
558558
}
559559

560+
func ResourceDeprecated(deprecatedResourceName string) string {
561+
return fmt.Sprintf("The '%s' resource has been deprecated. It is no longer supported.", deprecatedResourceName)
562+
}
563+
560564
func ResourceNotFoundErrorMessage(resourceName string, reason string) error {
561565
// Use this function to generate an error message for any resource that is not found. The message is specially
562566
// formatted so that it is detected by the handleMissingResourceError function correctly. Do not change the message format.

website/docs/r/data_safe_discovery_jobs_result.html.markdown

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,9 @@ description: |-
88
---
99

1010
# oci_data_safe_discovery_jobs_result
11+
12+
**Deprecated. This resource does not support create and update operations.**
13+
1114
This resource provides the Discovery Jobs Result resource in Oracle Cloud Infrastructure Data Safe service.
1215

1316

0 commit comments

Comments
 (0)