Skip to content

Commit

Permalink
Fix: make cloud_credentials data test isolated (#721)
Browse files Browse the repository at this point in the history
* Fix: make cloud_credentials data test isolated
  • Loading branch information
GiliFaroEnv0 authored Oct 4, 2023
1 parent e005fe1 commit 2c1c6d7
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 8 deletions.
2 changes: 1 addition & 1 deletion env0/data_cloud_credentials.go
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ func dataCloudCredentials() *schema.Resource {
Schema: map[string]*schema.Schema{
"names": {
Type: schema.TypeList,
Description: "list of all cloud credentials (by name), optionaly filtered by credential_type",
Description: "list of all cloud credentials (by name), optionally filtered by credential_type",
Computed: true,
Elem: &schema.Schema{
Type: schema.TypeString,
Expand Down
23 changes: 16 additions & 7 deletions tests/integration/024_cloud_credentials/main.tf
Original file line number Diff line number Diff line change
Expand Up @@ -4,26 +4,35 @@ resource "random_string" "random" {
min_lower = 8
}

resource "env0_aws_credentials" "cred1" {
resource "env0_aws_credentials" "aws_cred1" {
name = "Test Role arn1 ${random_string.random.result}"
arn = "Role ARN1"
}

resource "env0_gcp_credentials" "cred2" {
resource "env0_aws_credentials" "aws_cred2" {
name = "Test Role arn2 ${random_string.random.result}"
arn = "Role ARN2"
}

resource "env0_gcp_credentials" "gcp_cred" {
name = "name ${random_string.random.result}"
service_account_key = "your_account_key"
project_id = "your_project_id"
}

data "env0_cloud_credentials" "aws_credentials" {
data "env0_cloud_credentials" "all_aws_credentials" {
depends_on = [env0_aws_credentials.aws_cred1, env0_aws_credentials.aws_cred2, env0_gcp_credentials.gcp_cred]
credential_type = "AWS_ASSUMED_ROLE_FOR_DEPLOYMENT"
}

data "env0_aws_credentials" "aws_credentials" {
for_each = toset(data.env0_cloud_credentials.aws_credentials.names)
name = each.value
data "env0_aws_credentials" "aws_credentials1" {
name = data.env0_cloud_credentials.all_aws_credentials.names[index(data.env0_cloud_credentials.all_aws_credentials.names, env0_aws_credentials.aws_cred1.name)]
}

data "env0_aws_credentials" "aws_credentials2" {
name = data.env0_cloud_credentials.all_aws_credentials.names[index(data.env0_cloud_credentials.all_aws_credentials.names, env0_aws_credentials.aws_cred2.name)]
}

output "credentials_name" {
value = var.second_run ? replace(data.env0_aws_credentials.aws_credentials["Test Role arn1 ${random_string.random.result}"].name, random_string.random.result, "") : ""
value = var.second_run ? replace(data.env0_aws_credentials.aws_credentials1.name, random_string.random.result, "") : ""
}

0 comments on commit 2c1c6d7

Please sign in to comment.