Files
threshold/enos/enos-variables.hcl
T
9169c6bacb [QTI-220] Add infrastructure integration testing (#2282)
* [QTI-275] Add infrastructure integration testing

On pull requests that originate from branches of the `hashicorp/boundary`
repo, we now conditionally dispatch infrastructure integration tests using
the Enos framework. The `integration` Enos scenario includes two `builder`
variants which allow developers or CI to deploy a Boundary cluster in AWS
using either a local `boundary` install bundle or that which is produced
in the `build` workflow for CRT. The `test` variants determine which type
of infrastructure integration test to run. At present those options are
`cli_ui` (Bats CLI tests) or `smoke` (creates target instances and a
target host catalog and verifies that `boundary` works).

In addition to the new workflow and quality scenarios, we simplified the
some `build` workflow steps and added Go module caching to speed up the
build pipeline.

See the [enos/README.md](https://github.com/hashicorp/boundary/blob/main/enos/README.md)
for a detailed explanation on how to configure and execute Enos scenarios
from your machine.

Signed-off-by: Ryan Cragun <me@ryan.ec>
Co-authored-by: Rebecca Willett <rwillett@hashicorp.com>
Co-authored-by: Josh Branch <jbrand@hashicorp.com>
2022-07-28 14:48:51 -06:00

94 lines
2.1 KiB
HCL

# Infrastructure
variable "aws_ssh_keypair_name" {
description = "Name of the AWS keypair Enos will use to connect"
type = string
}
variable "aws_ssh_private_key_path" {
description = "Path to the SSH key Enos will use to connect"
type = string
}
# Tagging
variable "environment" {
description = "A environment name to use for resource tagging"
type = string
default = "dev"
}
variable "enos_user" {
description = "The user running the tests, this is by default your OS user or Github User"
type = string
}
# Test configs
variable "worker_instance_type" {
description = "EC2 Instance type"
type = string
default = "t3a.small"
}
variable "worker_count" {
description = "How many worker instances to create"
type = number
default = 1
}
variable "controller_instance_type" {
description = "EC2 Instance type"
type = string
default = "t3a.small"
}
variable "controller_count" {
description = "How many controller instances to create"
type = number
default = 1
}
variable "alb_listener_api_port" {
description = "What port the ALB will listen on to proxy controller API requests"
type = string
default = 9200
}
variable "target_instance_type" {
description = "Instance type for test target nodes"
type = string
default = "t2.micro"
}
variable "target_count" {
description = "How many target instances to create"
type = number
default = 1
}
variable "local_boundary_dir" {
description = "Path to local boundary executable"
type = string
}
variable "crt_bundle_path" {
description = "Path to CRT generated boundary bundle"
type = string
default = null
}
variable "boundary_install_dir" {
description = "Path boundary binaries will be installed to on remote instances"
type = string
default = "/opt/boundary/bin"
}
variable "tfc_api_token" {
description = "The Terraform Cloud QTI Organization API token."
type = string
}
variable "skip_failing_bats_tests" {
description = "Skip known Bats test failures"
type = string
default = "false"
}