Skip to content

Commit 401b478

Browse files
Suneetha Mariswamysankhsin
authored andcommitted
Added - Support for Stack Monitoring:Telegraf and Collectd Resources Import
1 parent fd8fefa commit 401b478

19 files changed

+2103
-81
lines changed

examples/stack_monitoring/monitored_resource_tasks/monitored_resource_task.tf renamed to examples/stack_monitoring/monitored_resource_tasks/import_resources/import_resources_task.tf

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,6 @@ variable "region" {}
99
variable "compartment_ocid" {}
1010
variable "task_name" {}
1111

12-
13-
1412
provider "oci" {
1513
tenancy_ocid = var.tenancy_ocid
1614
user_ocid = var.user_ocid
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
// Copyright (c) 2017, 2024, Oracle and/or its affiliates. All rights reserved.
2+
// Licensed under the Mozilla Public License v2.0
3+
variable "tenancy_ocid" {}
4+
variable "user_ocid" {}
5+
variable "fingerprint" {}
6+
variable "private_key_path" {}
7+
variable "region" {}
8+
variable "compartment_ocid" {}
9+
variable "task_name" {}
10+
variable "stack_mon_management_agent_id_resource1" {}
11+
12+
13+
provider "oci" {
14+
tenancy_ocid = var.tenancy_ocid
15+
user_ocid = var.user_ocid
16+
fingerprint = var.fingerprint
17+
private_key_path = var.private_key_path
18+
region = var.region
19+
}
20+
21+
resource "oci_stack_monitoring_monitored_resource_task" "test_update_agent_receiver_task" {
22+
#Required
23+
compartment_id = var.compartment_ocid
24+
name = var.task_name
25+
task_details {
26+
type = "UPDATE_AGENT_RECEIVER"
27+
handler_type = "TELEGRAF"
28+
agent_id =var.stack_mon_management_agent_id_resource1
29+
is_enable = false
30+
#receiver_properties {
31+
#
32+
#}
33+
}
34+
35+
#Optional
36+
freeform_tags = { "bar-key" = "test_update_agent_receiver_task.value" }
37+
lifecycle {
38+
ignore_changes = [
39+
freeform_tags, defined_tags, system_tags
40+
]
41+
42+
}
43+
}
44+
45+
data "oci_stack_monitoring_monitored_resource_tasks" "test_update_agent_receiver_tasks" {
46+
#Required
47+
compartment_id = oci_stack_monitoring_monitored_resource_task.test_update_agent_receiver_task.compartment_id
48+
#Optional
49+
status= "SUCCEEDED"
50+
}
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
// Copyright (c) 2017, 2024, Oracle and/or its affiliates. All rights reserved.
2+
// Licensed under the Mozilla Public License v2.0
3+
variable "tenancy_ocid" {}
4+
variable "user_ocid" {}
5+
variable "fingerprint" {}
6+
variable "private_key_path" {}
7+
variable "region" {}
8+
variable "compartment_ocid" {}
9+
variable "task_name" {}
10+
11+
provider "oci" {
12+
tenancy_ocid = var.tenancy_ocid
13+
user_ocid = var.user_ocid
14+
fingerprint = var.fingerprint
15+
private_key_path = var.private_key_path
16+
region = var.region
17+
}
18+
19+
resource "oci_stack_monitoring_monitored_resource_task" "test_update_resource_types_config_task" {
20+
#Required
21+
compartment_id = var.compartment_ocid
22+
name = var.task_name
23+
task_details {
24+
type = "UPDATE_RESOURCE_TYPE_CONFIGS"
25+
handler_type = "TELEGRAF"
26+
resource_types_configuration {
27+
resource_type = "telegraf_abc"
28+
handler_config {
29+
collector_types = [ "abc" ]
30+
telemetry_resource_group = "telegraf_abc"
31+
}
32+
}
33+
}
34+
35+
#Optional
36+
freeform_tags = { "bar-key" = "test_update_resource_types_config_task.value" }
37+
lifecycle {
38+
ignore_changes = [
39+
freeform_tags, defined_tags, system_tags
40+
]
41+
42+
}
43+
}
44+
45+
data "oci_stack_monitoring_monitored_resource_tasks" "test_update_resource_types_config_tasks" {
46+
#Required
47+
compartment_id = oci_stack_monitoring_monitored_resource_task.test_update_resource_types_config_task.compartment_id
48+
#Optional
49+
status= "SUCCEEDED"
50+
}

examples/stack_monitoring/monitored_resource_types/monitored_resource_type.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ resource "oci_stack_monitoring_monitored_resource_type" "test_monitored_resource
3939
}
4040
lifecycle {
4141
ignore_changes = [
42-
freeform_tags, defined_tags, system_tags, compartment_id,
42+
freeform_tags, defined_tags, system_tags, id, name, state, time_created, time_updated, metadata
4343
]
4444

4545
}

internal/integrationtest/stack_monitoring_monitored_resource_task_test.go

Lines changed: 32 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -21,33 +21,33 @@ import (
2121
)
2222

2323
var (
24-
StackMonitoringMonitoredResourceTaskRequiredOnlyResource = StackMonitoringMonitoredResourceTaskResourceDependencies +
25-
acctest.GenerateResourceFromRepresentationMap("oci_stack_monitoring_monitored_resource_task", "test_monitored_resource_task", acctest.Required, acctest.Create, StackMonitoringMonitoredResourceTaskRepresentation)
24+
StackMonitoringImportResourcesTaskRequiredOnlyResource = StackMonitoringImportResourcesTaskResourceDependencies +
25+
acctest.GenerateResourceFromRepresentationMap("oci_stack_monitoring_monitored_resource_task", "test_monitored_resource_task", acctest.Required, acctest.Create, StackMonitoringImportResourcesTaskRepresentation)
2626

27-
StackMonitoringMonitoredResourceTaskResourceConfig = StackMonitoringMonitoredResourceTaskResourceDependencies +
28-
acctest.GenerateResourceFromRepresentationMap("oci_stack_monitoring_monitored_resource_task", "test_monitored_resource_task", acctest.Optional, acctest.Update, StackMonitoringMonitoredResourceTaskRepresentation)
27+
StackMonitoringImportResourcesTaskResourceConfig = StackMonitoringImportResourcesTaskResourceDependencies +
28+
acctest.GenerateResourceFromRepresentationMap("oci_stack_monitoring_monitored_resource_task", "test_monitored_resource_task", acctest.Optional, acctest.Update, StackMonitoringImportResourcesTaskRepresentation)
2929

30-
StackMonitoringMonitoredResourceTaskSingularDataSourceRepresentation = map[string]interface{}{
30+
StackMonitoringImportResourcesTaskSingularDataSourceRepresentation = map[string]interface{}{
3131
"monitored_resource_task_id": acctest.Representation{RepType: acctest.Required, Create: `${oci_stack_monitoring_monitored_resource_task.test_monitored_resource_task.id}`},
3232
}
3333

34-
StackMonitoringMonitoredResourceTaskDataSourceRepresentation = map[string]interface{}{
34+
StackMonitoringImportResourcesTaskDataSourceRepresentation = map[string]interface{}{
3535
"compartment_id": acctest.Representation{RepType: acctest.Required, Create: `${var.compartment_id}`},
3636
"status": acctest.Representation{RepType: acctest.Optional, Create: `ACCEPTED`},
37-
"filter": acctest.RepresentationGroup{RepType: acctest.Required, Group: StackMonitoringMonitoredResourceTaskDataSourceFilterRepresentation}}
38-
StackMonitoringMonitoredResourceTaskDataSourceFilterRepresentation = map[string]interface{}{
37+
"filter": acctest.RepresentationGroup{RepType: acctest.Required, Group: StackMonitoringImportResourcesTaskDataSourceFilterRepresentation}}
38+
StackMonitoringImportResourcesTaskDataSourceFilterRepresentation = map[string]interface{}{
3939
"name": acctest.Representation{RepType: acctest.Required, Create: `id`},
4040
"values": acctest.Representation{RepType: acctest.Required, Create: []string{`${oci_stack_monitoring_monitored_resource_task.test_monitored_resource_task.id}`}},
4141
}
4242

43-
StackMonitoringMonitoredResourceTaskRepresentation = map[string]interface{}{
43+
StackMonitoringImportResourcesTaskRepresentation = map[string]interface{}{
4444
"compartment_id": acctest.Representation{RepType: acctest.Required, Create: `${var.compartment_id}`},
45-
"task_details": acctest.RepresentationGroup{RepType: acctest.Required, Group: StackMonitoringMonitoredResourceTaskTaskDetailsRepresentation},
45+
"task_details": acctest.RepresentationGroup{RepType: acctest.Required, Group: StackMonitoringImportResourcesTaskTaskDetailsRepresentation},
4646
"freeform_tags": acctest.Representation{RepType: acctest.Optional, Create: map[string]string{"bar-key": "value"}, Update: map[string]string{"Department": "Accounting"}},
4747
"name": acctest.Representation{RepType: acctest.Optional, Create: `${var.task_name}`},
4848
"lifecycle": acctest.RepresentationGroup{RepType: acctest.Required, Group: ignoreTaskSensitiveDataRepresentation},
4949
}
50-
StackMonitoringMonitoredResourceTaskTaskDetailsRepresentation = map[string]interface{}{
50+
StackMonitoringImportResourcesTaskTaskDetailsRepresentation = map[string]interface{}{
5151
"namespace": acctest.Representation{RepType: acctest.Required, Create: `oci_terraform_namespace`},
5252
"source": acctest.Representation{RepType: acctest.Required, Create: `OCI_TELEMETRY_NATIVE`},
5353
"type": acctest.Representation{RepType: acctest.Required, Create: `IMPORT_OCI_TELEMETRY_RESOURCES`},
@@ -69,16 +69,16 @@ var (
6969
ignoreTaskSensitiveDataRepresentation = map[string]interface{}{
7070
"ignore_changes": acctest.Representation{
7171
RepType: acctest.Required, Create: []string{
72-
`freeform_tags`, `defined_tags`, `system_tags`,
72+
`freeform_tags`, `defined_tags`, `system_tags`, `task_details`,
7373
}},
7474
}
7575

76-
StackMonitoringMonitoredResourceTaskResourceDependencies = ""
76+
StackMonitoringImportResourcesTaskResourceDependencies = ""
7777
)
7878

7979
// issue-routing-tag: stack_monitoring/default
80-
func TestStackMonitoringMonitoredResourceTaskResource_basic(t *testing.T) {
81-
httpreplay.SetScenario("TestStackMonitoringMonitoredResourceTaskResource_basic")
80+
func TestStackMonitoringImportResourcesTaskResource_basic(t *testing.T) {
81+
httpreplay.SetScenario("TestStackMonitoringImportResourcesTaskResource_basic")
8282
defer httpreplay.SaveScenario()
8383

8484
config := acctest.ProviderTestConfig()
@@ -99,14 +99,14 @@ func TestStackMonitoringMonitoredResourceTaskResource_basic(t *testing.T) {
9999

100100
var resId, resId2 string
101101
// Save TF content to Create resource with optional properties. This has to be exactly the same as the config part in the "create with optionals" step in the test.
102-
acctest.SaveConfigContent(config+compartmentIdVariableStr+taskNameVariableStr+StackMonitoringMonitoredResourceTaskResourceDependencies+
103-
acctest.GenerateResourceFromRepresentationMap("oci_stack_monitoring_monitored_resource_task", "test_monitored_resource_task", acctest.Optional, acctest.Create, StackMonitoringMonitoredResourceTaskRepresentation), "stackmonitoring", "monitoredResourceTask", t)
102+
acctest.SaveConfigContent(config+compartmentIdVariableStr+taskNameVariableStr+StackMonitoringImportResourcesTaskResourceDependencies+
103+
acctest.GenerateResourceFromRepresentationMap("oci_stack_monitoring_monitored_resource_task", "test_monitored_resource_task", acctest.Optional, acctest.Create, StackMonitoringImportResourcesTaskRepresentation), "stackmonitoring", "ImportResourcesTask", t)
104104

105105
acctest.ResourceTest(t, nil, []resource.TestStep{
106106
// verify Create
107107
{
108-
Config: config + compartmentIdVariableStr + taskNameVariableStr + StackMonitoringMonitoredResourceTaskResourceDependencies +
109-
acctest.GenerateResourceFromRepresentationMap("oci_stack_monitoring_monitored_resource_task", "test_monitored_resource_task", acctest.Required, acctest.Create, StackMonitoringMonitoredResourceTaskRepresentation),
108+
Config: config + compartmentIdVariableStr + taskNameVariableStr + StackMonitoringImportResourcesTaskResourceDependencies +
109+
acctest.GenerateResourceFromRepresentationMap("oci_stack_monitoring_monitored_resource_task", "test_monitored_resource_task", acctest.Required, acctest.Create, StackMonitoringImportResourcesTaskRepresentation),
110110
Check: acctest.ComposeAggregateTestCheckFuncWrapper(
111111
resource.TestCheckResourceAttr(resourceName, "compartment_id", compartmentId),
112112
resource.TestCheckResourceAttr(resourceName, "task_details.#", "1"),
@@ -123,12 +123,12 @@ func TestStackMonitoringMonitoredResourceTaskResource_basic(t *testing.T) {
123123

124124
// delete before next Create
125125
{
126-
Config: config + compartmentIdVariableStr + taskNameVariableStr + StackMonitoringMonitoredResourceTaskResourceDependencies,
126+
Config: config + compartmentIdVariableStr + taskNameVariableStr + StackMonitoringImportResourcesTaskResourceDependencies,
127127
},
128128
// verify Create with optionals
129129
{
130-
Config: config + compartmentIdVariableStr + taskNameVariableStr + StackMonitoringMonitoredResourceTaskResourceDependencies +
131-
acctest.GenerateResourceFromRepresentationMap("oci_stack_monitoring_monitored_resource_task", "test_monitored_resource_task", acctest.Optional, acctest.Create, StackMonitoringMonitoredResourceTaskRepresentation),
130+
Config: config + compartmentIdVariableStr + taskNameVariableStr + StackMonitoringImportResourcesTaskResourceDependencies +
131+
acctest.GenerateResourceFromRepresentationMap("oci_stack_monitoring_monitored_resource_task", "test_monitored_resource_task", acctest.Optional, acctest.Create, StackMonitoringImportResourcesTaskRepresentation),
132132
Check: acctest.ComposeAggregateTestCheckFuncWrapper(
133133
resource.TestCheckResourceAttr(resourceName, "compartment_id", compartmentId),
134134
resource.TestCheckResourceAttr(resourceName, "freeform_tags.%", "1"),
@@ -165,9 +165,9 @@ func TestStackMonitoringMonitoredResourceTaskResource_basic(t *testing.T) {
165165

166166
// verify Update to the compartment (the compartment will be switched back in the next step)
167167
{
168-
Config: config + compartmentIdVariableStr + compartmentIdUVariableStr + taskNameVariableStr + StackMonitoringMonitoredResourceTaskResourceDependencies +
168+
Config: config + compartmentIdVariableStr + compartmentIdUVariableStr + taskNameVariableStr + StackMonitoringImportResourcesTaskResourceDependencies +
169169
acctest.GenerateResourceFromRepresentationMap("oci_stack_monitoring_monitored_resource_task", "test_monitored_resource_task", acctest.Optional, acctest.Create,
170-
acctest.RepresentationCopyWithNewProperties(StackMonitoringMonitoredResourceTaskRepresentation, map[string]interface{}{
170+
acctest.RepresentationCopyWithNewProperties(StackMonitoringImportResourcesTaskRepresentation, map[string]interface{}{
171171
"compartment_id": acctest.Representation{RepType: acctest.Required, Create: `${var.compartment_id_for_update}`},
172172
})),
173173
Check: acctest.ComposeAggregateTestCheckFuncWrapper(
@@ -204,8 +204,8 @@ func TestStackMonitoringMonitoredResourceTaskResource_basic(t *testing.T) {
204204

205205
// verify updates to updatable parameters
206206
{
207-
Config: config + compartmentIdVariableStr + taskNameVariableStr + StackMonitoringMonitoredResourceTaskResourceDependencies +
208-
acctest.GenerateResourceFromRepresentationMap("oci_stack_monitoring_monitored_resource_task", "test_monitored_resource_task", acctest.Optional, acctest.Update, StackMonitoringMonitoredResourceTaskRepresentation),
207+
Config: config + compartmentIdVariableStr + taskNameVariableStr + StackMonitoringImportResourcesTaskResourceDependencies +
208+
acctest.GenerateResourceFromRepresentationMap("oci_stack_monitoring_monitored_resource_task", "test_monitored_resource_task", acctest.Optional, acctest.Update, StackMonitoringImportResourcesTaskRepresentation),
209209
Check: acctest.ComposeAggregateTestCheckFuncWrapper(
210210
resource.TestCheckResourceAttr(resourceName, "compartment_id", compartmentId),
211211
resource.TestCheckResourceAttr(resourceName, "freeform_tags.%", "1"),
@@ -240,22 +240,21 @@ func TestStackMonitoringMonitoredResourceTaskResource_basic(t *testing.T) {
240240
// verify datasource
241241
{
242242
Config: config +
243-
acctest.GenerateDataSourceFromRepresentationMap("oci_stack_monitoring_monitored_resource_tasks", "test_monitored_resource_tasks", acctest.Optional, acctest.Update, StackMonitoringMonitoredResourceTaskDataSourceRepresentation) +
244-
compartmentIdVariableStr + taskNameVariableStr + StackMonitoringMonitoredResourceTaskResourceDependencies +
245-
acctest.GenerateResourceFromRepresentationMap("oci_stack_monitoring_monitored_resource_task", "test_monitored_resource_task", acctest.Optional, acctest.Update, StackMonitoringMonitoredResourceTaskRepresentation),
243+
acctest.GenerateDataSourceFromRepresentationMap("oci_stack_monitoring_monitored_resource_tasks", "test_monitored_resource_tasks", acctest.Optional, acctest.Update, StackMonitoringImportResourcesTaskDataSourceRepresentation) +
244+
compartmentIdVariableStr + taskNameVariableStr + StackMonitoringImportResourcesTaskResourceDependencies +
245+
acctest.GenerateResourceFromRepresentationMap("oci_stack_monitoring_monitored_resource_task", "test_monitored_resource_task", acctest.Optional, acctest.Update, StackMonitoringImportResourcesTaskRepresentation),
246246
Check: acctest.ComposeAggregateTestCheckFuncWrapper(
247247
resource.TestCheckResourceAttr(datasourceName, "compartment_id", compartmentId),
248248
resource.TestCheckResourceAttr(datasourceName, "status", "ACCEPTED"),
249-
250249
resource.TestCheckResourceAttr(datasourceName, "monitored_resource_tasks_collection.#", "1"),
251250
resource.TestCheckResourceAttr(datasourceName, "monitored_resource_tasks_collection.0.items.#", "0"),
252251
),
253252
},
254253
// verify singular datasource
255254
{
256255
Config: config +
257-
acctest.GenerateDataSourceFromRepresentationMap("oci_stack_monitoring_monitored_resource_task", "test_monitored_resource_task", acctest.Required, acctest.Create, StackMonitoringMonitoredResourceTaskSingularDataSourceRepresentation) +
258-
compartmentIdVariableStr + taskNameVariableStr + StackMonitoringMonitoredResourceTaskResourceConfig,
256+
acctest.GenerateDataSourceFromRepresentationMap("oci_stack_monitoring_monitored_resource_task", "test_monitored_resource_task", acctest.Required, acctest.Create, StackMonitoringImportResourcesTaskSingularDataSourceRepresentation) +
257+
compartmentIdVariableStr + taskNameVariableStr + StackMonitoringImportResourcesTaskResourceConfig,
259258
Check: acctest.ComposeAggregateTestCheckFuncWrapper(
260259
resource.TestCheckResourceAttrSet(singularDatasourceName, "monitored_resource_task_id"),
261260

@@ -288,7 +287,7 @@ func TestStackMonitoringMonitoredResourceTaskResource_basic(t *testing.T) {
288287
},
289288
// verify resource import
290289
{
291-
Config: config + compartmentIdVariableStr + taskNameVariableStr + StackMonitoringMonitoredResourceTaskRequiredOnlyResource,
290+
Config: config + compartmentIdVariableStr + taskNameVariableStr + StackMonitoringImportResourcesTaskRequiredOnlyResource,
292291
ImportState: true,
293292
ImportStateVerify: true,
294293
ImportStateVerifyIgnore: []string{"defined_tags"},

0 commit comments

Comments
 (0)