-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Labels
bugSomething isn't workingSomething isn't working
Milestone
Description
Codes & Commit Id
- Terraform Codes
# main.tf
data "aws_acm_certificate" "datasource" {
domain = var.domain
statuses = var.status # ["ISSUED"]
}
# variables.tf
variable "domain" {
type = string
}
variable "status" {
type = list(string)
default = ["ISSUED"]
}
# outputs.tf
output "arn" {
value = data.aws_acm_certificate.datasource.arn
}- Terratest Codes
package main
import (
"testing"
"github.com/gruntwork-io/terratest/modules/terraform"
)
func TestTerraformDataAwsAmi(t *testing.T) {
t.Parallel()
options := terraform.WithDefaultRetryableErrors(t, &terraform.Options{
TerraformDir: "../../../../data/aws/acm",
Vars: map[string]interface{}{
"domain": "example.com",
"status": []string{"ISSUED"},
},
EnvVars: map[string]string{
"AWS_DEFAULT_REGION": "us-east-1",
},
})
defer terraform.Destroy(t, options)
terraform.InitAndValidateE(t, options)
}Expected Result
Success
Real Result
Failed
│ Error: Failed to parse command-line flags
│
│ flag provided but not defined: -var
╵
╷
│ Error: Too many command line arguments
│
│ Expected at most one positional argument.Epxected Issue
In terraform, terraform validate don't required -var or -var-files.
But in terratest, terraform.InitAndValidate or terraform.InitAndValidateE needs vars.
But when I use vars: map[string]interface{} with terratest, terratest typed terraform validate -var ....
But, Terraform don't supports -v option in validate.
So, this implementation of terraform.InitAndValidate(E) can't executeed at any way.
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't working