Skip to content

Commit 02251e3

Browse files
authored
feat: Support max_spot_price_as_percentage_of_optimal_on_demand_price (#276)
1 parent e562239 commit 02251e3

File tree

6 files changed

+32
-26
lines changed

6 files changed

+32
-26
lines changed

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -231,13 +231,13 @@ Note: the default behavior of the module is to create an autoscaling group and l
231231
| Name | Version |
232232
|------|---------|
233233
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.0 |
234-
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.46 |
234+
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.55 |
235235

236236
## Providers
237237

238238
| Name | Version |
239239
|------|---------|
240-
| <a name="provider_aws"></a> [aws](#provider\_aws) | >= 5.46 |
240+
| <a name="provider_aws"></a> [aws](#provider\_aws) | >= 5.55 |
241241

242242
## Modules
243243

examples/complete/README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,13 +30,13 @@ Note that this example may create resources which cost money. Run `terraform des
3030
| Name | Version |
3131
|------|---------|
3232
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.0 |
33-
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.46 |
33+
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 5.55 |
3434

3535
## Providers
3636

3737
| Name | Version |
3838
|------|---------|
39-
| <a name="provider_aws"></a> [aws](#provider\_aws) | >= 5.46 |
39+
| <a name="provider_aws"></a> [aws](#provider\_aws) | >= 5.55 |
4040

4141
## Modules
4242

examples/complete/main.tf

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -490,8 +490,9 @@ module "instance_requirements" {
490490
override = [
491491
{
492492
instance_requirements = {
493-
cpu_manufacturers = ["amd"]
494-
local_storage_types = ["ssd"]
493+
cpu_manufacturers = ["amd"]
494+
local_storage_types = ["ssd"]
495+
max_spot_price_as_percentage_of_optimal_on_demand_price = 60
495496
memory_gib_per_vcpu = {
496497
min = 2
497498
max = 4
@@ -527,6 +528,8 @@ module "instance_requirements" {
527528
instance_generations = ["current"]
528529
local_storage_types = ["ssd", "hdd"]
529530

531+
max_spot_price_as_percentage_of_optimal_on_demand_price = 45
532+
530533
memory_gib_per_vcpu = {
531534
min = 4
532535
max = 16

examples/complete/versions.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ terraform {
44
required_providers {
55
aws = {
66
source = "hashicorp/aws"
7-
version = ">= 5.46"
7+
version = ">= 5.55"
88
}
99
}
1010
}

main.tf

Lines changed: 21 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -190,12 +190,13 @@ resource "aws_launch_template" "this" {
190190
}
191191
}
192192

193-
burstable_performance = try(instance_requirements.value.burstable_performance, null)
194-
cpu_manufacturers = try(instance_requirements.value.cpu_manufacturers, [])
195-
excluded_instance_types = try(instance_requirements.value.excluded_instance_types, null)
196-
instance_generations = try(instance_requirements.value.instance_generations, [])
197-
local_storage = try(instance_requirements.value.local_storage, null)
198-
local_storage_types = try(instance_requirements.value.local_storage_types, [])
193+
burstable_performance = try(instance_requirements.value.burstable_performance, null)
194+
cpu_manufacturers = try(instance_requirements.value.cpu_manufacturers, [])
195+
excluded_instance_types = try(instance_requirements.value.excluded_instance_types, null)
196+
instance_generations = try(instance_requirements.value.instance_generations, [])
197+
local_storage = try(instance_requirements.value.local_storage, null)
198+
local_storage_types = try(instance_requirements.value.local_storage_types, [])
199+
max_spot_price_as_percentage_of_optimal_on_demand_price = try(instance_requirements.value.max_spot_price_as_percentage_of_optimal_on_demand_price, null)
199200

200201
dynamic "memory_gib_per_vcpu" {
201202
for_each = try([instance_requirements.value.memory_gib_per_vcpu], [])
@@ -506,12 +507,13 @@ resource "aws_autoscaling_group" "this" {
506507
}
507508
}
508509

509-
burstable_performance = try(instance_requirements.value.burstable_performance, null)
510-
cpu_manufacturers = try(instance_requirements.value.cpu_manufacturers, null)
511-
excluded_instance_types = try(instance_requirements.value.excluded_instance_types, null)
512-
instance_generations = try(instance_requirements.value.instance_generations, null)
513-
local_storage = try(instance_requirements.value.local_storage, null)
514-
local_storage_types = try(instance_requirements.value.local_storage_types, null)
510+
burstable_performance = try(instance_requirements.value.burstable_performance, null)
511+
cpu_manufacturers = try(instance_requirements.value.cpu_manufacturers, null)
512+
excluded_instance_types = try(instance_requirements.value.excluded_instance_types, null)
513+
instance_generations = try(instance_requirements.value.instance_generations, null)
514+
local_storage = try(instance_requirements.value.local_storage, null)
515+
local_storage_types = try(instance_requirements.value.local_storage_types, null)
516+
max_spot_price_as_percentage_of_optimal_on_demand_price = try(instance_requirements.value.max_spot_price_as_percentage_of_optimal_on_demand_price, null)
515517

516518
dynamic "memory_gib_per_vcpu" {
517519
for_each = try([instance_requirements.value.memory_gib_per_vcpu], [])
@@ -795,12 +797,13 @@ resource "aws_autoscaling_group" "idc" {
795797
}
796798
}
797799

798-
burstable_performance = try(instance_requirements.value.burstable_performance, null)
799-
cpu_manufacturers = try(instance_requirements.value.cpu_manufacturers, null)
800-
excluded_instance_types = try(instance_requirements.value.excluded_instance_types, null)
801-
instance_generations = try(instance_requirements.value.instance_generations, null)
802-
local_storage = try(instance_requirements.value.local_storage, null)
803-
local_storage_types = try(instance_requirements.value.local_storage_types, null)
800+
burstable_performance = try(instance_requirements.value.burstable_performance, null)
801+
cpu_manufacturers = try(instance_requirements.value.cpu_manufacturers, null)
802+
excluded_instance_types = try(instance_requirements.value.excluded_instance_types, null)
803+
instance_generations = try(instance_requirements.value.instance_generations, null)
804+
local_storage = try(instance_requirements.value.local_storage, null)
805+
local_storage_types = try(instance_requirements.value.local_storage_types, null)
806+
max_spot_price_as_percentage_of_optimal_on_demand_price = try(instance_requirements.value.max_spot_price_as_percentage_of_optimal_on_demand_price, null)
804807

805808
dynamic "memory_gib_per_vcpu" {
806809
for_each = try([instance_requirements.value.memory_gib_per_vcpu], [])

versions.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ terraform {
44
required_providers {
55
aws = {
66
source = "hashicorp/aws"
7-
version = ">= 5.46"
7+
version = ">= 5.55"
88
}
99
}
1010
}

0 commit comments

Comments
 (0)