Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Retries after timeouts on spot resources #9078

Merged
merged 1 commit into from
Jun 21, 2019
Merged

Retries after timeouts on spot resources #9078

merged 1 commit into from
Jun 21, 2019

Conversation

ryndaniels
Copy link
Contributor

Community Note

  • Please vote on this pull request by adding a 👍 reaction to the original pull request comment to help the community and maintainers prioritize this request
  • Please do not leave "+1" comments, they generate extra noise for pull request followers and do not help prioritize the request

Related #7873

Release note for CHANGELOG:

BUG FIXES:
* resource/aws_spot_fleet_request: Add final retry when creating spot fleet request
* resource/aws_spot_instance_request: Add final retry when creating spot instance request

Output from acceptance testing:

make testacc TESTARGS="-run=TestAccAWSSpotFleetRequest"
==> Checking that code complies with gofmt requirements...
TF_ACC=1 go test ./... -v -parallel 20 -run=TestAccAWSSpotFleetRequest -timeout 120m
?       github.com/terraform-providers/terraform-provider-aws   [no test files]
=== RUN   TestAccAWSSpotFleetRequest_basic
=== PAUSE TestAccAWSSpotFleetRequest_basic
=== RUN   TestAccAWSSpotFleetRequest_associatePublicIpAddress
=== PAUSE TestAccAWSSpotFleetRequest_associatePublicIpAddress
=== RUN   TestAccAWSSpotFleetRequest_instanceInterruptionBehavior
=== PAUSE TestAccAWSSpotFleetRequest_instanceInterruptionBehavior
=== RUN   TestAccAWSSpotFleetRequest_fleetType
=== PAUSE TestAccAWSSpotFleetRequest_fleetType
=== RUN   TestAccAWSSpotFleetRequest_iamInstanceProfileArn
=== PAUSE TestAccAWSSpotFleetRequest_iamInstanceProfileArn
=== RUN   TestAccAWSSpotFleetRequest_changePriceForcesNewRequest
=== PAUSE TestAccAWSSpotFleetRequest_changePriceForcesNewRequest
=== RUN   TestAccAWSSpotFleetRequest_updateTargetCapacity
=== PAUSE TestAccAWSSpotFleetRequest_updateTargetCapacity
=== RUN   TestAccAWSSpotFleetRequest_updateExcessCapacityTerminationPolicy
=== PAUSE TestAccAWSSpotFleetRequest_updateExcessCapacityTerminationPolicy
=== RUN   TestAccAWSSpotFleetRequest_lowestPriceAzOrSubnetInRegion
=== PAUSE TestAccAWSSpotFleetRequest_lowestPriceAzOrSubnetInRegion
=== RUN   TestAccAWSSpotFleetRequest_lowestPriceAzInGivenList
=== PAUSE TestAccAWSSpotFleetRequest_lowestPriceAzInGivenList
=== RUN   TestAccAWSSpotFleetRequest_lowestPriceSubnetInGivenList
=== PAUSE TestAccAWSSpotFleetRequest_lowestPriceSubnetInGivenList
=== RUN   TestAccAWSSpotFleetRequest_multipleInstanceTypesInSameAz
=== PAUSE TestAccAWSSpotFleetRequest_multipleInstanceTypesInSameAz
=== RUN   TestAccAWSSpotFleetRequest_multipleInstanceTypesInSameSubnet
=== PAUSE TestAccAWSSpotFleetRequest_multipleInstanceTypesInSameSubnet
=== RUN   TestAccAWSSpotFleetRequest_overriddingSpotPrice
=== PAUSE TestAccAWSSpotFleetRequest_overriddingSpotPrice
=== RUN   TestAccAWSSpotFleetRequest_withoutSpotPrice
=== PAUSE TestAccAWSSpotFleetRequest_withoutSpotPrice
=== RUN   TestAccAWSSpotFleetRequest_diversifiedAllocation
=== PAUSE TestAccAWSSpotFleetRequest_diversifiedAllocation
=== RUN   TestAccAWSSpotFleetRequest_multipleInstancePools
=== PAUSE TestAccAWSSpotFleetRequest_multipleInstancePools
=== RUN   TestAccAWSSpotFleetRequest_withWeightedCapacity
=== PAUSE TestAccAWSSpotFleetRequest_withWeightedCapacity
=== RUN   TestAccAWSSpotFleetRequest_withEBSDisk
=== PAUSE TestAccAWSSpotFleetRequest_withEBSDisk
=== RUN   TestAccAWSSpotFleetRequest_withTags
=== PAUSE TestAccAWSSpotFleetRequest_withTags
=== RUN   TestAccAWSSpotFleetRequest_placementTenancy
=== PAUSE TestAccAWSSpotFleetRequest_placementTenancy
=== RUN   TestAccAWSSpotFleetRequest_WithELBs
=== PAUSE TestAccAWSSpotFleetRequest_WithELBs
=== RUN   TestAccAWSSpotFleetRequest_WithTargetGroups
=== PAUSE TestAccAWSSpotFleetRequest_WithTargetGroups
=== CONT  TestAccAWSSpotFleetRequest_basic
=== CONT  TestAccAWSSpotFleetRequest_placementTenancy
=== CONT  TestAccAWSSpotFleetRequest_updateTargetCapacity
=== CONT  TestAccAWSSpotFleetRequest_associatePublicIpAddress
=== CONT  TestAccAWSSpotFleetRequest_withEBSDisk
=== CONT  TestAccAWSSpotFleetRequest_WithELBs
=== CONT  TestAccAWSSpotFleetRequest_withWeightedCapacity
=== CONT  TestAccAWSSpotFleetRequest_lowestPriceAzOrSubnetInRegion
=== CONT  TestAccAWSSpotFleetRequest_updateExcessCapacityTerminationPolicy
=== CONT  TestAccAWSSpotFleetRequest_lowestPriceAzInGivenList
=== CONT  TestAccAWSSpotFleetRequest_multipleInstancePools
=== CONT  TestAccAWSSpotFleetRequest_diversifiedAllocation
=== CONT  TestAccAWSSpotFleetRequest_withoutSpotPrice
=== CONT  TestAccAWSSpotFleetRequest_overriddingSpotPrice
=== CONT  TestAccAWSSpotFleetRequest_WithTargetGroups
=== CONT  TestAccAWSSpotFleetRequest_multipleInstanceTypesInSameSubnet
=== CONT  TestAccAWSSpotFleetRequest_multipleInstanceTypesInSameAz
=== CONT  TestAccAWSSpotFleetRequest_lowestPriceSubnetInGivenList
=== CONT  TestAccAWSSpotFleetRequest_instanceInterruptionBehavior
=== CONT  TestAccAWSSpotFleetRequest_withTags
--- PASS: TestAccAWSSpotFleetRequest_placementTenancy (75.25s)
=== CONT  TestAccAWSSpotFleetRequest_fleetType
--- PASS: TestAccAWSSpotFleetRequest_withTags (262.12s)
=== CONT  TestAccAWSSpotFleetRequest_changePriceForcesNewRequest
--- PASS: TestAccAWSSpotFleetRequest_multipleInstanceTypesInSameSubnet (262.61s)
=== CONT  TestAccAWSSpotFleetRequest_iamInstanceProfileArn
--- PASS: TestAccAWSSpotFleetRequest_instanceInterruptionBehavior (263.65s)
--- PASS: TestAccAWSSpotFleetRequest_overriddingSpotPrice (266.91s)
--- PASS: TestAccAWSSpotFleetRequest_lowestPriceAzOrSubnetInRegion (266.91s)
--- PASS: TestAccAWSSpotFleetRequest_withoutSpotPrice (267.68s)
--- PASS: TestAccAWSSpotFleetRequest_withWeightedCapacity (268.48s)
--- PASS: TestAccAWSSpotFleetRequest_basic (270.01s)
--- PASS: TestAccAWSSpotFleetRequest_lowestPriceAzInGivenList (271.07s)
--- PASS: TestAccAWSSpotFleetRequest_withEBSDisk (271.15s)
--- PASS: TestAccAWSSpotFleetRequest_multipleInstanceTypesInSameAz (271.55s)
--- PASS: TestAccAWSSpotFleetRequest_multipleInstancePools (272.39s)
--- PASS: TestAccAWSSpotFleetRequest_diversifiedAllocation (273.06s)
--- PASS: TestAccAWSSpotFleetRequest_lowestPriceSubnetInGivenList (273.45s)
--- PASS: TestAccAWSSpotFleetRequest_associatePublicIpAddress (303.36s)
--- PASS: TestAccAWSSpotFleetRequest_WithELBs (309.10s)
--- PASS: TestAccAWSSpotFleetRequest_fleetType (247.72s)
--- PASS: TestAccAWSSpotFleetRequest_WithTargetGroups (432.62s)
--- PASS: TestAccAWSSpotFleetRequest_iamInstanceProfileArn (270.49s)
--- PASS: TestAccAWSSpotFleetRequest_updateExcessCapacityTerminationPolicy (536.78s)
--- PASS: TestAccAWSSpotFleetRequest_updateTargetCapacity (779.05s)
--- PASS: TestAccAWSSpotFleetRequest_changePriceForcesNewRequest (639.50s)
PASS
ok      github.com/terraform-providers/terraform-provider-aws/aws       903.241s

make testacc TESTARGS="-run=TestAccAWSSpotInstanceRequest"
==> Checking that code complies with gofmt requirements...
TF_ACC=1 go test ./... -v -parallel 20 -run=TestAccAWSSpotInstanceRequest -timeout 120m
?       github.com/terraform-providers/terraform-provider-aws   [no test files]
=== RUN   TestAccAWSSpotInstanceRequest_basic
=== PAUSE TestAccAWSSpotInstanceRequest_basic
=== RUN   TestAccAWSSpotInstanceRequest_withLaunchGroup
=== PAUSE TestAccAWSSpotInstanceRequest_withLaunchGroup
=== RUN   TestAccAWSSpotInstanceRequest_withBlockDuration
=== PAUSE TestAccAWSSpotInstanceRequest_withBlockDuration
=== RUN   TestAccAWSSpotInstanceRequest_vpc
=== PAUSE TestAccAWSSpotInstanceRequest_vpc
=== RUN   TestAccAWSSpotInstanceRequest_validUntil
=== PAUSE TestAccAWSSpotInstanceRequest_validUntil
=== RUN   TestAccAWSSpotInstanceRequest_withoutSpotPrice
=== PAUSE TestAccAWSSpotInstanceRequest_withoutSpotPrice
=== RUN   TestAccAWSSpotInstanceRequest_SubnetAndSGAndPublicIpAddress
=== PAUSE TestAccAWSSpotInstanceRequest_SubnetAndSGAndPublicIpAddress
=== RUN   TestAccAWSSpotInstanceRequest_NetworkInterfaceAttributes
=== PAUSE TestAccAWSSpotInstanceRequest_NetworkInterfaceAttributes
=== RUN   TestAccAWSSpotInstanceRequest_getPasswordData
=== PAUSE TestAccAWSSpotInstanceRequest_getPasswordData
=== RUN   TestAccAWSSpotInstanceRequestInterruptStop
=== PAUSE TestAccAWSSpotInstanceRequestInterruptStop
=== RUN   TestAccAWSSpotInstanceRequestInterruptHibernate
=== PAUSE TestAccAWSSpotInstanceRequestInterruptHibernate
=== CONT  TestAccAWSSpotInstanceRequest_basic
=== CONT  TestAccAWSSpotInstanceRequestInterruptHibernate
=== CONT  TestAccAWSSpotInstanceRequest_withoutSpotPrice
=== CONT  TestAccAWSSpotInstanceRequest_NetworkInterfaceAttributes
=== CONT  TestAccAWSSpotInstanceRequest_SubnetAndSGAndPublicIpAddress
=== CONT  TestAccAWSSpotInstanceRequest_vpc
=== CONT  TestAccAWSSpotInstanceRequest_withBlockDuration
=== CONT  TestAccAWSSpotInstanceRequest_withLaunchGroup
=== CONT  TestAccAWSSpotInstanceRequest_validUntil
=== CONT  TestAccAWSSpotInstanceRequest_getPasswordData
=== CONT  TestAccAWSSpotInstanceRequestInterruptStop
--- PASS: TestAccAWSSpotInstanceRequestInterruptStop (72.77s)
--- PASS: TestAccAWSSpotInstanceRequest_basic (85.93s)
--- PASS: TestAccAWSSpotInstanceRequestInterruptHibernate (95.09s)
--- PASS: TestAccAWSSpotInstanceRequest_withoutSpotPrice (96.68s)
--- PASS: TestAccAWSSpotInstanceRequest_validUntil (96.70s)
--- PASS: TestAccAWSSpotInstanceRequest_SubnetAndSGAndPublicIpAddress (118.14s)
--- PASS: TestAccAWSSpotInstanceRequest_withLaunchGroup (118.28s)
--- PASS: TestAccAWSSpotInstanceRequest_withBlockDuration (118.55s)
--- PASS: TestAccAWSSpotInstanceRequest_NetworkInterfaceAttributes (225.32s)
--- PASS: TestAccAWSSpotInstanceRequest_vpc (233.96s)
--- PASS: TestAccAWSSpotInstanceRequest_getPasswordData (281.14s)
PASS
ok      github.com/terraform-providers/terraform-provider-aws/aws       281.965s

@ryndaniels ryndaniels requested a review from a team June 21, 2019 09:05
@ghost ghost added size/XS Managed by automation to categorize the size of a PR. service/ec2 Issues and PRs that pertain to the ec2 service. labels Jun 21, 2019
@ryndaniels ryndaniels added the bug Addresses a defect in current functionality. label Jun 21, 2019
@bflad bflad added this to the v2.17.0 milestone Jun 21, 2019
Copy link
Contributor

@bflad bflad left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM 🚀

--- PASS: TestAccAWSSpotFleetRequest_associatePublicIpAddress (305.50s)
--- PASS: TestAccAWSSpotFleetRequest_basic (440.08s)
--- PASS: TestAccAWSSpotFleetRequest_changePriceForcesNewRequest (506.22s)
--- PASS: TestAccAWSSpotFleetRequest_diversifiedAllocation (305.49s)
--- PASS: TestAccAWSSpotFleetRequest_fleetType (301.93s)
--- PASS: TestAccAWSSpotFleetRequest_iamInstanceProfileArn (242.49s)
--- PASS: TestAccAWSSpotFleetRequest_instanceInterruptionBehavior (302.36s)
--- PASS: TestAccAWSSpotFleetRequest_lowestPriceAzInGivenList (302.36s)
--- PASS: TestAccAWSSpotFleetRequest_lowestPriceAzOrSubnetInRegion (247.59s)
--- PASS: TestAccAWSSpotFleetRequest_lowestPriceSubnetInGivenList (242.14s)
--- PASS: TestAccAWSSpotFleetRequest_multipleInstancePools (249.81s)
--- PASS: TestAccAWSSpotFleetRequest_multipleInstanceTypesInSameAz (305.48s)
--- PASS: TestAccAWSSpotFleetRequest_multipleInstanceTypesInSameSubnet (241.75s)
--- PASS: TestAccAWSSpotFleetRequest_overriddingSpotPrice (241.33s)
--- PASS: TestAccAWSSpotFleetRequest_placementTenancy (51.08s)
--- PASS: TestAccAWSSpotFleetRequest_updateExcessCapacityTerminationPolicy (508.53s)
--- PASS: TestAccAWSSpotFleetRequest_updateTargetCapacity (841.48s)
--- PASS: TestAccAWSSpotFleetRequest_withEBSDisk (304.78s)
--- PASS: TestAccAWSSpotFleetRequest_WithELBs (250.01s)
--- PASS: TestAccAWSSpotFleetRequest_withoutSpotPrice (304.64s)
--- PASS: TestAccAWSSpotFleetRequest_withTags (243.52s)
--- PASS: TestAccAWSSpotFleetRequest_WithTargetGroups (364.52s)
--- PASS: TestAccAWSSpotFleetRequest_withWeightedCapacity (308.84s)
--- PASS: TestAccAWSSpotInstanceRequest_basic (107.52s)
--- PASS: TestAccAWSSpotInstanceRequest_getPasswordData (269.58s)
--- PASS: TestAccAWSSpotInstanceRequest_NetworkInterfaceAttributes (100.90s)
--- PASS: TestAccAWSSpotInstanceRequest_SubnetAndSGAndPublicIpAddress (90.68s)
--- PASS: TestAccAWSSpotInstanceRequest_validUntil (81.82s)
--- PASS: TestAccAWSSpotInstanceRequest_vpc (111.73s)
--- PASS: TestAccAWSSpotInstanceRequest_withBlockDuration (378.69s)
--- PASS: TestAccAWSSpotInstanceRequest_withLaunchGroup (449.50s)
--- PASS: TestAccAWSSpotInstanceRequest_withoutSpotPrice (167.78s)
--- PASS: TestAccAWSSpotInstanceRequestInterruptHibernate (308.82s)
--- PASS: TestAccAWSSpotInstanceRequestInterruptStop (278.61s)

@ryndaniels ryndaniels merged commit f64f57a into master Jun 21, 2019
@ryndaniels ryndaniels deleted the rfd-retry-spot branch June 21, 2019 15:48
@bflad
Copy link
Contributor

bflad commented Jun 28, 2019

This has been released in version 2.17.0 of the Terraform AWS provider. Please see the Terraform documentation on provider versioning or reach out if you need any assistance upgrading.

For further feature requests or bug reports with this functionality, please create a new GitHub issue following the template for triage. Thanks!

@ghost
Copy link

ghost commented Nov 3, 2019

I'm going to lock this issue because it has been closed for 30 days ⏳. This helps our maintainers find and focus on the active issues.

If you feel this issue should be reopened, we encourage creating a new issue linking back to this one for added context. Thanks!

@ghost ghost locked and limited conversation to collaborators Nov 3, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
bug Addresses a defect in current functionality. service/ec2 Issues and PRs that pertain to the ec2 service. size/XS Managed by automation to categorize the size of a PR.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants