variable "aws_region" {
  description = "AWS region to launch servers."
  default     = "us-east-1"
}

variable "environment" {
  description = "Which environment this is running in"
  default     = "dev"
  type        = string
}

variable "aws_stack_name" {
  description = "Stack name, will be used as DNS prefix, e.g. jenkins-chef"
  type        = string
}

variable "vpc_id" {
  description = "ID of existing vpc"
  default     = "vpc-34dbfd51"
}

variable "vpc_ssh_group" {
  description = "Name of security group to allow ssh"
  default     = "vpn_ssh"
}

variable "aws_asg_min_size" {
  description = "Minimal ASG size"
  default     = "1"
}

variable "aws_asg_max_size" {
  description = "Maximal ASG size"
  default     = "2"
}

variable "aws_asg_desired_capacity" {
  description = "Desired capacity for ASG"
  default     = "1"
}

variable "vpc_private_subnet_ids" {
  description = "IDs for private subnets in VPC"
  type        = list(string)
}

variable "aws_instance_type" {
  description = "AWS instance type"
  default     = "t2.medium"
}

variable "aws_volume_size" {
  description = "AWS root volume size"
  default     = "8"
}

variable "aws_key_name" {
  description = "Desired name of AWS key pair"
  default     = "orcd-dev"
}

variable "user_data" {
  description = "User data script"
  default     = ""
}

variable "aws_cluster_sg" {
  description = "SG for cluster instances"
  type        = string
}

variable "jenkins_master_url" {
  description = "URL for jenkins master"
  type        = string
}

variable "ecr_ro_repositories" {
  description = "ECR repositories to which grant RO access"
  type        = list(string)
  default     = []
}

variable "slave_labels" {
  description = "Labels to use for jenkins slaves"
  type        = list(string)
  default     = []
}

variable "additional_mount" {
  description = "Additional volumes to be created and mounted"
  type        = map(string)
  default = {
    "device" = "/dev/xvdf"
    "size"   = "50"
    "path"   = "/var/lib/docker"
  }
}

