Skip to content

Commit 7b64c1e

Browse files
miizSrividyaKamakshi
authored andcommitted
Added - OKE Add-ons option list API update, add should_show_all_versions flag
1 parent c071c4f commit 7b64c1e

File tree

4 files changed

+49
-2
lines changed

4 files changed

+49
-2
lines changed

examples/container_engine/addons/main.tf

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -101,6 +101,14 @@ data "oci_containerengine_cluster_option" "test_cluster_option" {
101101
cluster_option_id = "all"
102102
}
103103

104+
data "oci_containerengine_addon_options" "test_addon_options" {
105+
#Required
106+
kubernetes_version = reverse(data.oci_containerengine_cluster_option.test_cluster_option.kubernetes_versions)[0]
107+
108+
#Optional
109+
addon_name = "KubernetesDashboard"
110+
}
111+
104112
locals {
105113
addon_mappings = {
106114
mapping1 = {

internal/integrationtest/containerengine_addon_option_test.go

Lines changed: 30 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,15 @@ var (
2020

2121
// representation for the real testing
2222
ContainerengineAddonOptionDataSourceRepresentation = map[string]interface{}{
23-
"kubernetes_version": acctest.Representation{RepType: acctest.Required, Create: `${data.oci_containerengine_cluster_option.test_cluster_option.kubernetes_versions[length(data.oci_containerengine_cluster_option.test_cluster_option.kubernetes_versions)-2]}`},
24-
"addon_name": acctest.Representation{RepType: acctest.Optional, Create: `${data.oci_containerengine_addon_options.test_adddon_options_dep.addon_options[0].name}`},
23+
"kubernetes_version": acctest.Representation{RepType: acctest.Required, Create: `${data.oci_containerengine_cluster_option.test_cluster_option.kubernetes_versions[length(data.oci_containerengine_cluster_option.test_cluster_option.kubernetes_versions)-2]}`},
24+
"addon_name": acctest.Representation{RepType: acctest.Optional, Create: `${data.oci_containerengine_addon_options.test_adddon_options_dep.addon_options[0].name}`},
25+
"should_show_all_versions": acctest.Representation{RepType: acctest.Optional, Create: `false`},
26+
}
27+
28+
ContainerengineAddonOptionDataSourceRepresentationShowAll = map[string]interface{}{
29+
"kubernetes_version": acctest.Representation{RepType: acctest.Required, Create: `${data.oci_containerengine_cluster_option.test_cluster_option.kubernetes_versions[length(data.oci_containerengine_cluster_option.test_cluster_option.kubernetes_versions)-2]}`},
30+
"addon_name": acctest.Representation{RepType: acctest.Optional, Create: `${data.oci_containerengine_addon_options.test_adddon_options_dep.addon_options[0].name}`},
31+
"should_show_all_versions": acctest.Representation{RepType: acctest.Optional, Create: `true`},
2532
}
2633

2734
// all dependencies for the data source test with required input
@@ -69,6 +76,27 @@ func TestContainerengineAddonOptionResource_basic(t *testing.T) {
6976
Check: acctest.ComposeAggregateTestCheckFuncWrapper(
7077
resource.TestCheckResourceAttrSet(datasourceNameForOptional, "addon_name"),
7178
resource.TestCheckResourceAttrSet(datasourceNameForOptional, "kubernetes_version"),
79+
resource.TestCheckResourceAttr(datasourceNameForOptional, "should_show_all_versions", "false"),
80+
81+
resource.TestCheckResourceAttrSet(datasourceNameForOptional, "addon_options.#"),
82+
resource.TestCheckResourceAttrSet(datasourceNameForOptional, "addon_options.0.addon_group"),
83+
resource.TestCheckResourceAttrSet(datasourceNameForOptional, "addon_options.0.addon_schema_version"),
84+
resource.TestCheckResourceAttrSet(datasourceNameForOptional, "addon_options.0.description"),
85+
resource.TestCheckResourceAttrSet(datasourceNameForOptional, "addon_options.0.is_essential"),
86+
resource.TestCheckResourceAttrSet(datasourceNameForOptional, "addon_options.0.name"),
87+
resource.TestCheckResourceAttrSet(datasourceNameForOptional, "addon_options.0.state"),
88+
resource.TestCheckResourceAttrSet(datasourceNameForOptional, "addon_options.0.time_created"),
89+
resource.TestCheckResourceAttr(datasourceNameForOptional, "addon_options.0.versions.#", "1"),
90+
),
91+
},
92+
// verify show all
93+
{
94+
Config: config + ContainerengineAddonOptionDataSourceDependenciesForRequired + ContainerengineAddonOptionDataSourceDependenciesForOptional +
95+
acctest.GenerateDataSourceFromRepresentationMap("oci_containerengine_addon_options", "test_addon_options_with_name", acctest.Optional, acctest.Create, ContainerengineAddonOptionDataSourceRepresentationShowAll),
96+
Check: acctest.ComposeAggregateTestCheckFuncWrapper(
97+
resource.TestCheckResourceAttrSet(datasourceNameForOptional, "addon_name"),
98+
resource.TestCheckResourceAttrSet(datasourceNameForOptional, "kubernetes_version"),
99+
resource.TestCheckResourceAttr(datasourceNameForOptional, "should_show_all_versions", "true"),
72100

73101
resource.TestCheckResourceAttrSet(datasourceNameForOptional, "addon_options.#"),
74102
resource.TestCheckResourceAttrSet(datasourceNameForOptional, "addon_options.0.addon_group"),

internal/service/containerengine/containerengine_addon_options_data_source.go

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,10 @@ func ContainerengineAddonOptionsDataSource() *schema.Resource {
2626
Type: schema.TypeString,
2727
Required: true,
2828
},
29+
"should_show_all_versions": {
30+
Type: schema.TypeBool,
31+
Optional: true,
32+
},
2933
"addon_options": {
3034
Type: schema.TypeList,
3135
Computed: true,
@@ -203,6 +207,11 @@ func (s *ContainerengineAddonOptionsDataSourceCrud) Get() error {
203207
request.KubernetesVersion = &tmp
204208
}
205209

210+
if shouldShowAllVersions, ok := s.D.GetOkExists("should_show_all_versions"); ok {
211+
tmp := shouldShowAllVersions.(bool)
212+
request.ShouldShowAllVersions = &tmp
213+
}
214+
206215
request.RequestMetadata.RetryPolicy = tfresource.GetRetryPolicy(false, "containerengine")
207216

208217
response, err := s.Client.ListAddonOptions(context.Background(), request)

website/docs/d/containerengine_addon_options.html.markdown

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ data "oci_containerengine_addon_options" "test_addon_options" {
2121
2222
#Optional
2323
addon_name = oci_containerengine_addon.test_addon.name
24+
should_show_all_versions = var.addon_option_should_show_all_versions
2425
}
2526
```
2627

@@ -30,6 +31,7 @@ The following arguments are supported:
3031

3132
* `addon_name` - (Optional) The name of the addon.
3233
* `kubernetes_version` - (Required) The kubernetes version to fetch the addons.
34+
* `should_show_all_versions` - (Optional) Whether to show all add-on versions
3335

3436

3537
## Attributes Reference

0 commit comments

Comments
 (0)