Skip to content

Commit d40138f

Browse files
committed
examples: improve the examples
1 parent 5f7191c commit d40138f

File tree

8 files changed

+36
-72
lines changed

8 files changed

+36
-72
lines changed

examples/complete/main.tf

Lines changed: 10 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -2,33 +2,15 @@ provider "alicloud" {
22
region = "cn-shanghai"
33
}
44

5-
// create a new directory
6-
module "cloud_sso_directory" {
7-
source = "../../"
8-
9-
#alicloud_cloud_sso_directory
10-
create_directory = true
11-
12-
directory_name = var.directory_name
13-
mfa_authentication_status = var.mfa_authentication_status
14-
scim_synchronization_status = var.scim_synchronization_status
15-
saml_identity_provider_configuration = var.saml_identity_provider_configuration
16-
17-
#alicloud_cloud_sso_group
18-
create_group = false
19-
20-
#alicloud_cloud_sso_user
21-
create_user = false
22-
23-
#alicloud_cloud_sso_user_attachment
24-
add_user_to_group = false
5+
data "alicloud_cloud_sso_directories" "default" {
256

26-
#alicloud_cloud_sso_access_configuration
27-
create_access_configuration = false
7+
}
288

9+
locals {
10+
directory_id = try(data.alicloud_cloud_sso_directories.default.directories[0].id, "")
2911
}
3012

31-
// create a new group using existing directory
13+
# create a new group using existing directory
3214
module "cloud_sso_group" {
3315
source = "../../"
3416

@@ -38,7 +20,7 @@ module "cloud_sso_group" {
3820
#alicloud_cloud_sso_group
3921
create_group = true
4022

41-
directory_id = module.cloud_sso_directory.directory_id
23+
directory_id = local.directory_id
4224
group_name = var.group_name
4325
description = var.description
4426

@@ -53,7 +35,7 @@ module "cloud_sso_group" {
5335

5436
}
5537

56-
// create a list new users and add users into existing group
38+
# create a list new users and add users into existing group
5739
module "cloud_sso_user" {
5840
source = "../../"
5941

@@ -66,7 +48,7 @@ module "cloud_sso_user" {
6648
#alicloud_cloud_sso_user
6749
create_user = true
6850

69-
directory_id = module.cloud_sso_directory.directory_id
51+
directory_id = local.directory_id
7052
users = var.users
7153

7254
#alicloud_cloud_sso_user_attachment
@@ -79,7 +61,7 @@ module "cloud_sso_user" {
7961

8062
}
8163

82-
// create a list new access configurations
64+
# create a list new access configurations
8365
module "cloud_sso_access_configuration" {
8466
source = "../../"
8567

@@ -98,7 +80,7 @@ module "cloud_sso_access_configuration" {
9880
#alicloud_cloud_sso_access_configuration
9981
create_access_configuration = true
10082

101-
directory_id = module.cloud_sso_directory.directory_id
83+
directory_id = local.directory_id
10284
access_configurations = var.access_configurations
10385

10486
}

examples/complete/outputs.tf

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
output "directory_id" {
22
description = "The id of cloud sso directory."
3-
value = module.cloud_sso_directory.directory_id
3+
value = local.directory_id
44
}
55

66
output "group_id" {
@@ -26,4 +26,4 @@ output "user_resource_ids" {
2626
output "access_configuration_ids" {
2727
description = "List of ids of cloud sso access configuration."
2828
value = module.cloud_sso_access_configuration.access_configuration_ids
29-
}
29+
}

examples/complete/variables.tf

Lines changed: 0 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1,34 +1,3 @@
1-
#####################
2-
# Cloud SSO Directory
3-
#####################
4-
variable "directory_name" {
5-
description = "The name of a new cloud sso directory."
6-
type = string
7-
default = "tf-testacc-directory"
8-
}
9-
10-
variable "mfa_authentication_status" {
11-
description = "The mfa authentication status. Valid values: Enabled or Disabled. Default to Enabled."
12-
type = string
13-
default = "Enabled"
14-
}
15-
16-
variable "scim_synchronization_status" {
17-
description = "The scim synchronization status. Valid values: Enabled or Disabled. Default to Disabled."
18-
type = string
19-
default = "Disabled"
20-
}
21-
22-
variable "saml_identity_provider_configuration" {
23-
description = "The saml identity provider configuration. See: https://registry.terraform.io/providers/aliyun/alicloud/latest/docs/resources/cloud_sso_directory#saml_identity_provider_configuration"
24-
type = list(map(string))
25-
default = [
26-
{
27-
sso_status = "Disabled"
28-
encoded_metadata_document = ""
29-
}
30-
]
31-
}
321

332
#####################
343
# Cloud SSO Group

examples/complete/versions.tf

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
terraform {
2+
required_version = ">= 0.13"
3+
required_providers {
4+
alicloud = {
5+
source = "hashicorp/alicloud"
6+
}
7+
}
8+
}

locals.tf

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
locals {
22
# Get ID of cloud sso resources
3-
this_directory_id = var.create_directory ? concat(alicloud_cloud_sso_directory.this.*.id, [""])[0] : var.directory_id
4-
this_user_ids = var.create_user ? alicloud_cloud_sso_user.this.*.user_id : var.add_user_to_group ? var.users.*.user_id : []
5-
this_group_id = var.create_group ? concat(alicloud_cloud_sso_group.this.*.group_id, [""])[0] : var.group_id
3+
this_directory_id = var.create_directory ? concat(alicloud_cloud_sso_directory.this[*].id, [""])[0] : var.directory_id
4+
this_user_ids = var.create_user ? alicloud_cloud_sso_user.this[*].user_id : var.add_user_to_group ? var.users[*].user_id : []
5+
this_group_id = var.create_group ? concat(alicloud_cloud_sso_group.this[*].group_id, [""])[0] : var.group_id
66
}

main.tf

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ resource "alicloud_cloud_sso_group" "this" {
2626
resource "alicloud_cloud_sso_user" "this" {
2727
count = var.create_user ? length(var.users) : 0
2828
directory_id = local.this_directory_id
29-
user_name = lookup(var.users[count.index], "user_name", )
29+
user_name = var.users[count.index]["user_name"]
3030
description = lookup(var.users[count.index], "description", null)
3131
display_name = lookup(var.users[count.index], "display_name", null)
3232
email = lookup(var.users[count.index], "email", null)
@@ -47,17 +47,17 @@ resource "alicloud_cloud_sso_user_attachment" "this" {
4747
resource "alicloud_cloud_sso_access_configuration" "this" {
4848
count = var.create_access_configuration ? length(var.access_configurations) : 0
4949
directory_id = local.this_directory_id
50-
access_configuration_name = lookup(var.access_configurations[count.index], "access_configuration_name", )
51-
description = lookup(var.access_configurations[count.index], "description", )
50+
access_configuration_name = var.access_configurations[count.index]["access_configuration_name"]
51+
description = var.access_configurations[count.index]["description"]
5252
dynamic "permission_policies" {
53-
for_each = lookup(var.access_configurations[count.index], "permission_policies", )
53+
for_each = var.access_configurations[count.index]["permission_policies"]
5454
content {
5555
permission_policy_document = permission_policies.value.permission_policy_document
5656
permission_policy_type = lookup(permission_policies.value, "permission_policy_type", "Inline")
5757
permission_policy_name = permission_policies.value.permission_policy_name
5858
}
5959
}
60-
relay_state = lookup(var.access_configurations[count.index], "relay_state", )
61-
session_duration = lookup(var.access_configurations[count.index], "session_duration", )
60+
relay_state = var.access_configurations[count.index]["relay_state"]
61+
session_duration = var.access_configurations[count.index]["session_duration"]
6262
force_remove_permission_policies = lookup(var.access_configurations[count.index], "force_remove_permission_policies", true)
6363
}

outputs.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,5 +25,5 @@ output "user_resource_ids" {
2525

2626
output "access_configuration_ids" {
2727
description = "List of ids of cloud sso access configuration."
28-
value = alicloud_cloud_sso_access_configuration.this.*.access_configuration_id
28+
value = alicloud_cloud_sso_access_configuration.this[*].access_configuration_id
2929
}

versions.tf

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
11
terraform {
22
required_version = ">= 0.13"
3-
}
3+
required_providers {
4+
alicloud = {
5+
source = "hashicorp/alicloud"
6+
}
7+
}
8+
}

0 commit comments

Comments
 (0)