Skip to content

Commit

Permalink
EC2 Select availability zone
Browse files Browse the repository at this point in the history
  • Loading branch information
pdostal committed Jan 19, 2024
1 parent bb96b5d commit b1fa9a3
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 1 deletion.
5 changes: 5 additions & 0 deletions data/publiccloud/terraform/ec2.tf
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,10 @@ variable "vpc_security_group_ids" {
default = ""
}

variable "availability_zone" {
default = ""
}

variable "subnet_id" {
default = ""
}
Expand Down Expand Up @@ -91,6 +95,7 @@ resource "aws_instance" "openqa" {
instance_type = var.type
key_name = aws_key_pair.openqa-keypair.key_name
vpc_security_group_ids = [var.vpc_security_group_ids]
availability_zone = var.availability_zone
subnet_id = var.subnet_id
ipv6_address_count = var.ipv6_address_count

Expand Down
4 changes: 3 additions & 1 deletion lib/publiccloud/provider.pm
Original file line number Diff line number Diff line change
Expand Up @@ -472,9 +472,11 @@ sub terraform_apply {
}
if (is_ec2) {
my $vpc_security_group_ids = script_output("aws ec2 describe-security-groups --region '" . $self->provider_client->region . "' --filters 'Name=group-name,Values=tf-sg' --query 'SecurityGroups[0].GroupId' --output text");
my $subnet_id = script_output("aws ec2 describe-subnets --region '" . $self->provider_client->region . "' --filters 'Name=tag:Name,Values=tf-subnet' --query 'Subnets[0].SubnetId' --output text");
my $availability_zone = script_output("aws ec2 describe-instance-type-offerings --location-type availability-zone --filters Name=instance-type,Values=m6g.medium --region '" . $self->provider_client->region . "' --query 'InstanceTypeOfferings[0].Location' --output 'text'");
my $subnet_id = script_output("aws ec2 describe-subnets --region '" . $self->provider_client->region . "' --filters 'Name=tag:Name,Values=tf-subnet' 'Name=availabilityZone,Values=" . $availability_zone . "' --query 'Subnets[0].SubnetId' --output text");
my $ipv6_address_count = get_var('PUBLIC_CLOUD_EC2_IPV6_ADDRESS_COUNT', 1);
$cmd .= "-var 'vpc_security_group_ids=$vpc_security_group_ids' " if ($vpc_security_group_ids);
$cmd .= "-var 'availability_zone=$availability_zone' " if ($availability_zone);
$cmd .= "-var 'subnet_id=$subnet_id' " if ($subnet_id);
$cmd .= "-var 'ipv6_address_count=$ipv6_address_count' " if ($ipv6_address_count);
} elsif (is_azure) {
Expand Down

0 comments on commit b1fa9a3

Please sign in to comment.