-
Notifications
You must be signed in to change notification settings - Fork 9.3k
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
Add user_data_replace_on_change
field to aws_instance
#23604
Add user_data_replace_on_change
field to aws_instance
#23604
Conversation
user_data_replace_on_change
field to aws_instance
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Welcome @jaredfholgate 👋
It looks like this is your first Pull Request submission to the Terraform AWS Provider! If you haven’t already done so please make sure you have checked out our CONTRIBUTING guide and FAQ to make sure your contribution is adhering to best practice and has all the necessary elements in place for a successful approval.
Also take a look at our FAQ which details how we prioritize Pull Requests for inclusion.
Thanks again, and welcome to the community! 😃
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hi @jaredfholgate , this LGTM. just a couple notes above the test checks since we can luckily re-use some methods already available in the test file.
4d8f9d5
to
a4beb9e
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks again @jaredfholgate , LGTM 🚀
Output of acceptance tests:
make testacc TESTARGS='-run=TestAccEC2Instance_' PKG=ec2 ACCTEST_PARALLELISM=4
==> Checking that code complies with gofmt requirements...
TF_ACC=1 go test ./internal/service/ec2/... -v -count 1 -parallel 4 -run=TestAccEC2Instance_ -timeout 180m
=== RUN TestAccEC2Instance_inDefaultVPCBySgName
=== PAUSE TestAccEC2Instance_inDefaultVPCBySgName
=== RUN TestAccEC2Instance_inDefaultVPCBySgID
=== PAUSE TestAccEC2Instance_inDefaultVPCBySgID
=== RUN TestAccEC2Instance_inEC2Classic
=== PAUSE TestAccEC2Instance_inEC2Classic
=== RUN TestAccEC2Instance_basic
=== PAUSE TestAccEC2Instance_basic
=== RUN TestAccEC2Instance_atLeastOneOtherEBSVolume
=== PAUSE TestAccEC2Instance_atLeastOneOtherEBSVolume
=== RUN TestAccEC2Instance_EBSBlockDevice_kmsKeyARN
=== PAUSE TestAccEC2Instance_EBSBlockDevice_kmsKeyARN
=== RUN TestAccEC2Instance_EBSBlockDevice_invalidIopsForVolumeType
=== PAUSE TestAccEC2Instance_EBSBlockDevice_invalidIopsForVolumeType
=== RUN TestAccEC2Instance_EBSBlockDevice_invalidThroughputForVolumeType
=== PAUSE TestAccEC2Instance_EBSBlockDevice_invalidThroughputForVolumeType
=== RUN TestAccEC2Instance_EBSBlockDevice_RootBlockDevice_removed
=== PAUSE TestAccEC2Instance_EBSBlockDevice_RootBlockDevice_removed
=== RUN TestAccEC2Instance_RootBlockDevice_kmsKeyARN
=== PAUSE TestAccEC2Instance_RootBlockDevice_kmsKeyARN
=== RUN TestAccEC2Instance_userDataBase64
=== PAUSE TestAccEC2Instance_userDataBase64
=== RUN TestAccEC2Instance_userDataBase64_updateWithBashFile
=== PAUSE TestAccEC2Instance_userDataBase64_updateWithBashFile
=== RUN TestAccEC2Instance_userDataBase64_updateWithZipFile
=== PAUSE TestAccEC2Instance_userDataBase64_updateWithZipFile
=== RUN TestAccEC2Instance_userDataBase64_update
=== PAUSE TestAccEC2Instance_userDataBase64_update
=== RUN TestAccEC2Instance_gp2IopsDevice
=== PAUSE TestAccEC2Instance_gp2IopsDevice
=== RUN TestAccEC2Instance_gp2WithIopsValue
=== PAUSE TestAccEC2Instance_gp2WithIopsValue
=== RUN TestAccEC2Instance_blockDevices
=== PAUSE TestAccEC2Instance_blockDevices
=== RUN TestAccEC2Instance_rootInstanceStore
=== PAUSE TestAccEC2Instance_rootInstanceStore
=== RUN TestAccEC2Instance_noAMIEphemeralDevices
=== PAUSE TestAccEC2Instance_noAMIEphemeralDevices
=== RUN TestAccEC2Instance_sourceDestCheck
=== PAUSE TestAccEC2Instance_sourceDestCheck
=== RUN TestAccEC2Instance_disableAPITermination
=== PAUSE TestAccEC2Instance_disableAPITermination
=== RUN TestAccEC2Instance_dedicatedInstance
=== PAUSE TestAccEC2Instance_dedicatedInstance
=== RUN TestAccEC2Instance_outpost
=== PAUSE TestAccEC2Instance_outpost
=== RUN TestAccEC2Instance_placementGroup
=== PAUSE TestAccEC2Instance_placementGroup
=== RUN TestAccEC2Instance_placementPartitionNumber
=== PAUSE TestAccEC2Instance_placementPartitionNumber
=== RUN TestAccEC2Instance_IPv6_supportAddressCount
=== PAUSE TestAccEC2Instance_IPv6_supportAddressCount
=== RUN TestAccEC2Instance_ipv6AddressCountAndSingleAddressCausesError
=== PAUSE TestAccEC2Instance_ipv6AddressCountAndSingleAddressCausesError
=== RUN TestAccEC2Instance_IPv6_supportAddressCountWithIPv4
=== PAUSE TestAccEC2Instance_IPv6_supportAddressCountWithIPv4
=== RUN TestAccEC2Instance_networkInstanceSecurityGroups
=== PAUSE TestAccEC2Instance_networkInstanceSecurityGroups
=== RUN TestAccEC2Instance_networkInstanceRemovingAllSecurityGroups
=== PAUSE TestAccEC2Instance_networkInstanceRemovingAllSecurityGroups
=== RUN TestAccEC2Instance_networkInstanceVPCSecurityGroupIDs
=== PAUSE TestAccEC2Instance_networkInstanceVPCSecurityGroupIDs
=== RUN TestAccEC2Instance_tags
=== PAUSE TestAccEC2Instance_tags
=== RUN TestAccEC2Instance_BlockDeviceTags_volumeTags
=== PAUSE TestAccEC2Instance_BlockDeviceTags_volumeTags
=== RUN TestAccEC2Instance_BlockDeviceTags_withAttachedVolume
=== PAUSE TestAccEC2Instance_BlockDeviceTags_withAttachedVolume
=== RUN TestAccEC2Instance_BlockDeviceTags_ebsAndRoot
=== PAUSE TestAccEC2Instance_BlockDeviceTags_ebsAndRoot
=== RUN TestAccEC2Instance_instanceProfileChange
=== PAUSE TestAccEC2Instance_instanceProfileChange
=== RUN TestAccEC2Instance_withIAMInstanceProfile
=== PAUSE TestAccEC2Instance_withIAMInstanceProfile
=== RUN TestAccEC2Instance_withIAMInstanceProfilePath
=== PAUSE TestAccEC2Instance_withIAMInstanceProfilePath
=== RUN TestAccEC2Instance_privateIP
=== PAUSE TestAccEC2Instance_privateIP
=== RUN TestAccEC2Instance_associatePublicIPAndPrivateIP
=== PAUSE TestAccEC2Instance_associatePublicIPAndPrivateIP
=== RUN TestAccEC2Instance_Empty_privateIP
=== PAUSE TestAccEC2Instance_Empty_privateIP
=== RUN TestAccEC2Instance_keyPairCheck
=== PAUSE TestAccEC2Instance_keyPairCheck
=== RUN TestAccEC2Instance_rootBlockDeviceMismatch
=== PAUSE TestAccEC2Instance_rootBlockDeviceMismatch
=== RUN TestAccEC2Instance_forceNewAndTagsDrift
=== PAUSE TestAccEC2Instance_forceNewAndTagsDrift
=== RUN TestAccEC2Instance_changeInstanceType
=== PAUSE TestAccEC2Instance_changeInstanceType
=== RUN TestAccEC2Instance_changeInstanceTypeAndUserData
=== PAUSE TestAccEC2Instance_changeInstanceTypeAndUserData
=== RUN TestAccEC2Instance_changeInstanceTypeAndUserDataBase64
=== PAUSE TestAccEC2Instance_changeInstanceTypeAndUserDataBase64
=== RUN TestAccEC2Instance_EBSRootDevice_basic
=== PAUSE TestAccEC2Instance_EBSRootDevice_basic
=== RUN TestAccEC2Instance_EBSRootDevice_modifySize
=== PAUSE TestAccEC2Instance_EBSRootDevice_modifySize
=== RUN TestAccEC2Instance_EBSRootDevice_modifyType
=== PAUSE TestAccEC2Instance_EBSRootDevice_modifyType
=== RUN TestAccEC2Instance_EBSRootDeviceModifyIOPS_io1
=== PAUSE TestAccEC2Instance_EBSRootDeviceModifyIOPS_io1
=== RUN TestAccEC2Instance_EBSRootDeviceModifyIOPS_io2
=== PAUSE TestAccEC2Instance_EBSRootDeviceModifyIOPS_io2
=== RUN TestAccEC2Instance_EBSRootDeviceModifyThroughput_gp3
=== PAUSE TestAccEC2Instance_EBSRootDeviceModifyThroughput_gp3
=== RUN TestAccEC2Instance_EBSRootDevice_modifyDeleteOnTermination
=== PAUSE TestAccEC2Instance_EBSRootDevice_modifyDeleteOnTermination
=== RUN TestAccEC2Instance_EBSRootDevice_modifyAll
=== PAUSE TestAccEC2Instance_EBSRootDevice_modifyAll
=== RUN TestAccEC2Instance_EBSRootDeviceMultipleBlockDevices_modifySize
=== PAUSE TestAccEC2Instance_EBSRootDeviceMultipleBlockDevices_modifySize
=== RUN TestAccEC2Instance_EBSRootDeviceMultipleBlockDevices_modifyDeleteOnTermination
=== PAUSE TestAccEC2Instance_EBSRootDeviceMultipleBlockDevices_modifyDeleteOnTermination
=== RUN TestAccEC2Instance_EBSRootDevice_multipleDynamicEBSBlockDevices
=== PAUSE TestAccEC2Instance_EBSRootDevice_multipleDynamicEBSBlockDevices
=== RUN TestAccEC2Instance_primaryNetworkInterface
=== PAUSE TestAccEC2Instance_primaryNetworkInterface
=== RUN TestAccEC2Instance_primaryNetworkInterfaceSourceDestCheck
=== PAUSE TestAccEC2Instance_primaryNetworkInterfaceSourceDestCheck
=== RUN TestAccEC2Instance_addSecondaryInterface
=== PAUSE TestAccEC2Instance_addSecondaryInterface
=== RUN TestAccEC2Instance_addSecurityGroupNetworkInterface
=== PAUSE TestAccEC2Instance_addSecurityGroupNetworkInterface
=== RUN TestAccEC2Instance_NewNetworkInterface_publicIPAndSecondaryPrivateIPs
=== PAUSE TestAccEC2Instance_NewNetworkInterface_publicIPAndSecondaryPrivateIPs
=== RUN TestAccEC2Instance_NewNetworkInterface_emptyPrivateIPAndSecondaryPrivateIPs
=== PAUSE TestAccEC2Instance_NewNetworkInterface_emptyPrivateIPAndSecondaryPrivateIPs
=== RUN TestAccEC2Instance_NewNetworkInterface_emptyPrivateIPAndSecondaryPrivateIPsUpdate
=== PAUSE TestAccEC2Instance_NewNetworkInterface_emptyPrivateIPAndSecondaryPrivateIPsUpdate
=== RUN TestAccEC2Instance_NewNetworkInterface_privateIPAndSecondaryPrivateIPs
=== PAUSE TestAccEC2Instance_NewNetworkInterface_privateIPAndSecondaryPrivateIPs
=== RUN TestAccEC2Instance_NewNetworkInterface_privateIPAndSecondaryPrivateIPsUpdate
=== PAUSE TestAccEC2Instance_NewNetworkInterface_privateIPAndSecondaryPrivateIPsUpdate
=== RUN TestAccEC2Instance_AssociatePublic_defaultPrivate
=== PAUSE TestAccEC2Instance_AssociatePublic_defaultPrivate
=== RUN TestAccEC2Instance_AssociatePublic_defaultPublic
=== PAUSE TestAccEC2Instance_AssociatePublic_defaultPublic
=== RUN TestAccEC2Instance_AssociatePublic_explicitPublic
=== PAUSE TestAccEC2Instance_AssociatePublic_explicitPublic
=== RUN TestAccEC2Instance_AssociatePublic_explicitPrivate
=== PAUSE TestAccEC2Instance_AssociatePublic_explicitPrivate
=== RUN TestAccEC2Instance_AssociatePublic_overridePublic
=== PAUSE TestAccEC2Instance_AssociatePublic_overridePublic
=== RUN TestAccEC2Instance_AssociatePublic_overridePrivate
=== PAUSE TestAccEC2Instance_AssociatePublic_overridePrivate
=== RUN TestAccEC2Instance_LaunchTemplate_basic
=== PAUSE TestAccEC2Instance_LaunchTemplate_basic
=== RUN TestAccEC2Instance_LaunchTemplate_overrideTemplate
=== PAUSE TestAccEC2Instance_LaunchTemplate_overrideTemplate
=== RUN TestAccEC2Instance_LaunchTemplate_setSpecificVersion
=== PAUSE TestAccEC2Instance_LaunchTemplate_setSpecificVersion
=== RUN TestAccEC2Instance_LaunchTemplateModifyTemplate_defaultVersion
=== PAUSE TestAccEC2Instance_LaunchTemplateModifyTemplate_defaultVersion
=== RUN TestAccEC2Instance_LaunchTemplate_updateTemplateVersion
=== PAUSE TestAccEC2Instance_LaunchTemplate_updateTemplateVersion
=== RUN TestAccEC2Instance_LaunchTemplate_swapIDAndName
=== PAUSE TestAccEC2Instance_LaunchTemplate_swapIDAndName
=== RUN TestAccEC2Instance_GetPasswordData_falseToTrue
=== PAUSE TestAccEC2Instance_GetPasswordData_falseToTrue
=== RUN TestAccEC2Instance_GetPasswordData_trueToFalse
=== PAUSE TestAccEC2Instance_GetPasswordData_trueToFalse
=== RUN TestAccEC2Instance_CreditSpecificationEmpty_nonBurstable
=== PAUSE TestAccEC2Instance_CreditSpecificationEmpty_nonBurstable
=== RUN TestAccEC2Instance_CreditSpecificationUnspecifiedToEmpty_nonBurstable
=== PAUSE TestAccEC2Instance_CreditSpecificationUnspecifiedToEmpty_nonBurstable
=== RUN TestAccEC2Instance_CreditSpecification_unspecifiedDefaultsToStandard
=== PAUSE TestAccEC2Instance_CreditSpecification_unspecifiedDefaultsToStandard
=== RUN TestAccEC2Instance_CreditSpecification_standardCPUCredits
=== PAUSE TestAccEC2Instance_CreditSpecification_standardCPUCredits
=== RUN TestAccEC2Instance_CreditSpecification_unlimitedCPUCredits
=== PAUSE TestAccEC2Instance_CreditSpecification_unlimitedCPUCredits
=== RUN TestAccEC2Instance_CreditSpecificationUnknownCPUCredits_t2
=== PAUSE TestAccEC2Instance_CreditSpecificationUnknownCPUCredits_t2
=== RUN TestAccEC2Instance_CreditSpecificationUnknownCPUCredits_t3
=== PAUSE TestAccEC2Instance_CreditSpecificationUnknownCPUCredits_t3
=== RUN TestAccEC2Instance_CreditSpecification_updateCPUCredits
=== PAUSE TestAccEC2Instance_CreditSpecification_updateCPUCredits
=== RUN TestAccEC2Instance_CreditSpecification_isNotAppliedToNonBurstable
=== PAUSE TestAccEC2Instance_CreditSpecification_isNotAppliedToNonBurstable
=== RUN TestAccEC2Instance_CreditSpecificationT3_unspecifiedDefaultsToUnlimited
=== PAUSE TestAccEC2Instance_CreditSpecificationT3_unspecifiedDefaultsToUnlimited
=== RUN TestAccEC2Instance_CreditSpecificationT3_standardCPUCredits
=== PAUSE TestAccEC2Instance_CreditSpecificationT3_standardCPUCredits
=== RUN TestAccEC2Instance_CreditSpecificationT3_unlimitedCPUCredits
=== PAUSE TestAccEC2Instance_CreditSpecificationT3_unlimitedCPUCredits
=== RUN TestAccEC2Instance_CreditSpecificationT3_updateCPUCredits
=== PAUSE TestAccEC2Instance_CreditSpecificationT3_updateCPUCredits
=== RUN TestAccEC2Instance_CreditSpecificationStandardCPUCredits_t2Tot3Taint
=== PAUSE TestAccEC2Instance_CreditSpecificationStandardCPUCredits_t2Tot3Taint
=== RUN TestAccEC2Instance_CreditSpecificationUnlimitedCPUCredits_t2Tot3Taint
=== PAUSE TestAccEC2Instance_CreditSpecificationUnlimitedCPUCredits_t2Tot3Taint
=== RUN TestAccEC2Instance_disappears
=== PAUSE TestAccEC2Instance_disappears
=== RUN TestAccEC2Instance_UserData
=== PAUSE TestAccEC2Instance_UserData
=== RUN TestAccEC2Instance_UserData_update
=== PAUSE TestAccEC2Instance_UserData_update
=== RUN TestAccEC2Instance_UserData_stringToEncodedString
=== PAUSE TestAccEC2Instance_UserData_stringToEncodedString
=== RUN TestAccEC2Instance_UserData_emptyStringToUnspecified
=== PAUSE TestAccEC2Instance_UserData_emptyStringToUnspecified
=== RUN TestAccEC2Instance_UserData_unspecifiedToEmptyString
=== PAUSE TestAccEC2Instance_UserData_unspecifiedToEmptyString
=== RUN TestAccEC2Instance_UserDataReplaceOnChange_On
=== PAUSE TestAccEC2Instance_UserDataReplaceOnChange_On
=== RUN TestAccEC2Instance_UserDataReplaceOnChange_On_Base64
=== PAUSE TestAccEC2Instance_UserDataReplaceOnChange_On_Base64
=== RUN TestAccEC2Instance_UserDataReplaceOnChange_Off
=== PAUSE TestAccEC2Instance_UserDataReplaceOnChange_Off
=== RUN TestAccEC2Instance_UserDataReplaceOnChange_Off_Base64
=== PAUSE TestAccEC2Instance_UserDataReplaceOnChange_Off_Base64
=== RUN TestAccEC2Instance_hibernation
=== PAUSE TestAccEC2Instance_hibernation
=== RUN TestAccEC2Instance_metadataOptions
=== PAUSE TestAccEC2Instance_metadataOptions
=== RUN TestAccEC2Instance_enclaveOptions
=== PAUSE TestAccEC2Instance_enclaveOptions
=== RUN TestAccEC2Instance_CapacityReservation_unspecifiedDefaultsToOpen
=== PAUSE TestAccEC2Instance_CapacityReservation_unspecifiedDefaultsToOpen
=== RUN TestAccEC2Instance_CapacityReservationPreference_open
=== PAUSE TestAccEC2Instance_CapacityReservationPreference_open
=== RUN TestAccEC2Instance_CapacityReservationPreference_none
=== PAUSE TestAccEC2Instance_CapacityReservationPreference_none
=== RUN TestAccEC2Instance_CapacityReservation_targetID
=== PAUSE TestAccEC2Instance_CapacityReservation_targetID
=== RUN TestAccEC2Instance_CapacityReservation_modifyPreference
=== PAUSE TestAccEC2Instance_CapacityReservation_modifyPreference
=== RUN TestAccEC2Instance_CapacityReservation_modifyTarget
=== PAUSE TestAccEC2Instance_CapacityReservation_modifyTarget
=== RUN TestAccEC2Instance_gp3RootBlockDevice
=== PAUSE TestAccEC2Instance_gp3RootBlockDevice
=== CONT TestAccEC2Instance_inDefaultVPCBySgName
=== CONT TestAccEC2Instance_primaryNetworkInterface
=== CONT TestAccEC2Instance_gp3RootBlockDevice
=== CONT TestAccEC2Instance_CapacityReservation_modifyTarget
--- PASS: TestAccEC2Instance_inDefaultVPCBySgName (93.08s)
=== CONT TestAccEC2Instance_CapacityReservation_modifyPreference
--- PASS: TestAccEC2Instance_gp3RootBlockDevice (101.04s)
=== CONT TestAccEC2Instance_CapacityReservation_targetID
=== CONT TestAccEC2Instance_CapacityReservation_modifyTarget
instance_test.go:4238: Step 3/3 error: Check failed: Check 3/4 error: aws_instance.test: Attribute 'capacity_reservation_specification.0.capacity_reservation_target.#' expected "1", got "0"
--- FAIL: TestAccEC2Instance_CapacityReservation_modifyTarget (146.86s)
=== CONT TestAccEC2Instance_CapacityReservationPreference_none
--- PASS: TestAccEC2Instance_primaryNetworkInterface (196.68s)
=== CONT TestAccEC2Instance_CapacityReservationPreference_open
--- PASS: TestAccEC2Instance_CapacityReservation_targetID (98.71s)
=== CONT TestAccEC2Instance_CapacityReservation_unspecifiedDefaultsToOpen
=== CONT TestAccEC2Instance_CapacityReservation_modifyPreference
instance_test.go:4200: Step 3/3 error: Check failed: Check 4/4 error: aws_instance.test: Attribute 'capacity_reservation_specification.0.capacity_reservation_preference' expected "none", got "open"
--- FAIL: TestAccEC2Instance_CapacityReservation_modifyPreference (125.52s)
=== CONT TestAccEC2Instance_enclaveOptions
--- PASS: TestAccEC2Instance_CapacityReservationPreference_none (88.01s)
=== CONT TestAccEC2Instance_metadataOptions
--- PASS: TestAccEC2Instance_CapacityReservationPreference_open (96.01s)
=== CONT TestAccEC2Instance_hibernation
--- PASS: TestAccEC2Instance_CapacityReservation_unspecifiedDefaultsToOpen (112.64s)
=== CONT TestAccEC2Instance_UserDataReplaceOnChange_Off_Base64
--- PASS: TestAccEC2Instance_metadataOptions (132.50s)
=== CONT TestAccEC2Instance_UserDataReplaceOnChange_Off
--- PASS: TestAccEC2Instance_UserDataReplaceOnChange_Off_Base64 (177.76s)
=== CONT TestAccEC2Instance_UserDataReplaceOnChange_On_Base64
--- PASS: TestAccEC2Instance_UserDataReplaceOnChange_Off (166.12s)
--- PASS: TestAccEC2Instance_enclaveOptions (399.56s)
=== CONT TestAccEC2Instance_EBSRootDevice_multipleDynamicEBSBlockDevices
--- PASS: TestAccEC2Instance_UserDataReplaceOnChange_On_Base64 (192.94s)
=== CONT TestAccEC2Instance_EBSRootDeviceMultipleBlockDevices_modifyDeleteOnTermination
--- PASS: TestAccEC2Instance_hibernation (403.13s)
=== CONT TestAccEC2Instance_UserDataReplaceOnChange_On
--- PASS: TestAccEC2Instance_networkInstanceRemovingAllSecurityGroups (132.76s)
=== CONT TestAccEC2Instance_EBSRootDeviceMultipleBlockDevices_modifySize
--- PASS: TestAccEC2Instance_EBSRootDeviceMultipleBlockDevices_modifyDeleteOnTermination (107.35s)
=== CONT TestAccEC2Instance_EBSRootDevice_modifyAll
--- PASS: TestAccEC2Instance_EBSRootDevice_multipleDynamicEBSBlockDevices (197.40s)
=== CONT TestAccEC2Instance_EBSRootDevice_modifyDeleteOnTermination
--- PASS: TestAccEC2Instance_UserDataReplaceOnChange_On (185.27s)
=== CONT TestAccEC2Instance_EBSRootDeviceModifyThroughput_gp3
--- PASS: TestAccEC2Instance_EBSRootDeviceMultipleBlockDevices_modifySize (145.85s)
=== CONT TestAccEC2Instance_UserData_unspecifiedToEmptyString
--- PASS: TestAccEC2Instance_EBSRootDevice_modifyDeleteOnTermination (102.15s)
=== CONT TestAccEC2Instance_EBSRootDeviceModifyIOPS_io2
--- PASS: TestAccEC2Instance_EBSRootDevice_modifyAll (153.84s)
=== CONT TestAccEC2Instance_UserData_emptyStringToUnspecified
--- PASS: TestAccEC2Instance_UserData_emptyStringToUnspecified (109.10s)
=== CONT TestAccEC2Instance_EBSRootDeviceModifyIOPS_io1
--- PASS: TestAccEC2Instance_EBSRootDeviceModifyThroughput_gp3 (172.49s)
=== CONT TestAccEC2Instance_UserData_stringToEncodedString
--- PASS: TestAccEC2Instance_EBSRootDeviceModifyIOPS_io2 (142.93s)
=== CONT TestAccEC2Instance_EBSRootDevice_modifyType
--- PASS: TestAccEC2Instance_UserData_unspecifiedToEmptyString (105.90s)
=== CONT TestAccEC2Instance_UserData_update
--- PASS: TestAccEC2Instance_EBSRootDevice_modifyType (127.72s)
=== CONT TestAccEC2Instance_EBSRootDevice_modifySize
--- PASS: TestAccEC2Instance_EBSRootDeviceModifyIOPS_io1 (141.80s)
=== CONT TestAccEC2Instance_EBSRootDevice_basic
--- PASS: TestAccEC2Instance_UserData_stringToEncodedString (201.28s)
=== CONT TestAccEC2Instance_changeInstanceTypeAndUserDataBase64
--- PASS: TestAccEC2Instance_UserData_update (194.78s)
=== CONT TestAccEC2Instance_UserData
--- PASS: TestAccEC2Instance_EBSRootDevice_basic (108.19s)
=== CONT TestAccEC2Instance_changeInstanceTypeAndUserData
--- PASS: TestAccEC2Instance_EBSRootDevice_modifySize (131.33s)
=== CONT TestAccEC2Instance_disappears
--- PASS: TestAccEC2Instance_UserData (110.26s)
=== CONT TestAccEC2Instance_LaunchTemplateModifyTemplate_defaultVersion
--- PASS: TestAccEC2Instance_changeInstanceTypeAndUserDataBase64 (235.12s)
=== CONT TestAccEC2Instance_changeInstanceType
--- PASS: TestAccEC2Instance_LaunchTemplateModifyTemplate_defaultVersion (121.77s)
=== CONT TestAccEC2Instance_LaunchTemplate_setSpecificVersion
--- PASS: TestAccEC2Instance_disappears (287.07s)
=== CONT TestAccEC2Instance_forceNewAndTagsDrift
--- PASS: TestAccEC2Instance_LaunchTemplate_setSpecificVersion (114.47s)
=== CONT TestAccEC2Instance_LaunchTemplate_overrideTemplate
--- PASS: TestAccEC2Instance_changeInstanceTypeAndUserData (328.67s)
=== CONT TestAccEC2Instance_rootBlockDeviceMismatch
--- PASS: TestAccEC2Instance_changeInstanceType (156.64s)
=== CONT TestAccEC2Instance_LaunchTemplate_basic
--- PASS: TestAccEC2Instance_forceNewAndTagsDrift (162.57s)
=== CONT TestAccEC2Instance_keyPairCheck
--- PASS: TestAccEC2Instance_rootBlockDeviceMismatch (187.10s)
=== CONT TestAccEC2Instance_AssociatePublic_overridePrivate
--- PASS: TestAccEC2Instance_AssociatePublic_overridePrivate (102.80s)
=== CONT TestAccEC2Instance_Empty_privateIP
--- PASS: TestAccEC2Instance_LaunchTemplate_overrideTemplate (293.10s)
=== CONT TestAccEC2Instance_AssociatePublic_overridePublic
--- PASS: TestAccEC2Instance_LaunchTemplate_basic (302.80s)
=== CONT TestAccEC2Instance_AssociatePublic_explicitPrivate
--- PASS: TestAccEC2Instance_keyPairCheck (217.39s)
=== CONT TestAccEC2Instance_AssociatePublic_explicitPublic
--- PASS: TestAccEC2Instance_Empty_privateIP (91.31s)
=== CONT TestAccEC2Instance_AssociatePublic_defaultPublic
--- PASS: TestAccEC2Instance_AssociatePublic_overridePublic (100.54s)
=== CONT TestAccEC2Instance_AssociatePublic_defaultPrivate
--- PASS: TestAccEC2Instance_AssociatePublic_explicitPrivate (101.40s)
=== CONT TestAccEC2Instance_NewNetworkInterface_privateIPAndSecondaryPrivateIPsUpdate
--- PASS: TestAccEC2Instance_AssociatePublic_explicitPublic (99.27s)
=== CONT TestAccEC2Instance_associatePublicIPAndPrivateIP
--- PASS: TestAccEC2Instance_AssociatePublic_defaultPublic (95.66s)
=== CONT TestAccEC2Instance_NewNetworkInterface_privateIPAndSecondaryPrivateIPs
--- PASS: TestAccEC2Instance_AssociatePublic_defaultPrivate (115.63s)
=== CONT TestAccEC2Instance_privateIP
--- PASS: TestAccEC2Instance_NewNetworkInterface_privateIPAndSecondaryPrivateIPs (72.36s)
=== CONT TestAccEC2Instance_withIAMInstanceProfilePath
--- PASS: TestAccEC2Instance_NewNetworkInterface_privateIPAndSecondaryPrivateIPsUpdate (166.43s)
=== CONT TestAccEC2Instance_LaunchTemplate_updateTemplateVersion
--- PASS: TestAccEC2Instance_privateIP (92.72s)
=== CONT TestAccEC2Instance_NewNetworkInterface_emptyPrivateIPAndSecondaryPrivateIPsUpdate
--- PASS: TestAccEC2Instance_associatePublicIPAndPrivateIP (202.59s)
=== CONT TestAccEC2Instance_CreditSpecificationUnlimitedCPUCredits_t2Tot3Taint
--- PASS: TestAccEC2Instance_withIAMInstanceProfilePath (111.19s)
=== CONT TestAccEC2Instance_CreditSpecificationStandardCPUCredits_t2Tot3Taint
--- PASS: TestAccEC2Instance_NewNetworkInterface_emptyPrivateIPAndSecondaryPrivateIPsUpdate (118.07s)
=== CONT TestAccEC2Instance_CreditSpecificationT3_updateCPUCredits
--- PASS: TestAccEC2Instance_CreditSpecificationUnlimitedCPUCredits_t2Tot3Taint (175.23s)
=== CONT TestAccEC2Instance_withIAMInstanceProfile
--- PASS: TestAccEC2Instance_CreditSpecificationT3_updateCPUCredits (149.79s)
=== CONT TestAccEC2Instance_CreditSpecificationT3_unlimitedCPUCredits
--- PASS: TestAccEC2Instance_withIAMInstanceProfile (119.79s)
=== CONT TestAccEC2Instance_CreditSpecificationT3_standardCPUCredits
--- PASS: TestAccEC2Instance_LaunchTemplate_updateTemplateVersion (399.43s)
=== CONT TestAccEC2Instance_CreditSpecificationT3_unspecifiedDefaultsToUnlimited
--- PASS: TestAccEC2Instance_CreditSpecificationT3_unlimitedCPUCredits (131.34s)
=== CONT TestAccEC2Instance_NewNetworkInterface_emptyPrivateIPAndSecondaryPrivateIPs
--- PASS: TestAccEC2Instance_CreditSpecificationT3_standardCPUCredits (107.41s)
=== CONT TestAccEC2Instance_instanceProfileChange
--- PASS: TestAccEC2Instance_CreditSpecificationStandardCPUCredits_t2Tot3Taint (399.78s)
=== CONT TestAccEC2Instance_CreditSpecification_isNotAppliedToNonBurstable
--- PASS: TestAccEC2Instance_CreditSpecificationT3_unspecifiedDefaultsToUnlimited (82.48s)
=== CONT TestAccEC2Instance_BlockDeviceTags_ebsAndRoot
--- PASS: TestAccEC2Instance_NewNetworkInterface_emptyPrivateIPAndSecondaryPrivateIPs (113.20s)
=== CONT TestAccEC2Instance_CreditSpecification_updateCPUCredits
--- PASS: TestAccEC2Instance_CreditSpecification_isNotAppliedToNonBurstable (112.67s)
=== CONT TestAccEC2Instance_CreditSpecificationUnknownCPUCredits_t3
--- PASS: TestAccEC2Instance_BlockDeviceTags_ebsAndRoot (137.55s)
=== CONT TestAccEC2Instance_BlockDeviceTags_withAttachedVolume
--- PASS: TestAccEC2Instance_CreditSpecification_updateCPUCredits (138.96s)
=== CONT TestAccEC2Instance_NewNetworkInterface_publicIPAndSecondaryPrivateIPs
--- PASS: TestAccEC2Instance_CreditSpecificationUnknownCPUCredits_t3 (92.63s)
=== CONT TestAccEC2Instance_BlockDeviceTags_volumeTags
--- PASS: TestAccEC2Instance_instanceProfileChange (241.47s)
=== CONT TestAccEC2Instance_addSecurityGroupNetworkInterface
--- PASS: TestAccEC2Instance_BlockDeviceTags_withAttachedVolume (164.07s)
=== CONT TestAccEC2Instance_addSecondaryInterface
--- PASS: TestAccEC2Instance_NewNetworkInterface_publicIPAndSecondaryPrivateIPs (155.52s)
=== CONT TestAccEC2Instance_CreditSpecificationUnknownCPUCredits_t2
--- PASS: TestAccEC2Instance_BlockDeviceTags_volumeTags (175.72s)
=== CONT TestAccEC2Instance_primaryNetworkInterfaceSourceDestCheck
--- PASS: TestAccEC2Instance_CreditSpecificationUnknownCPUCredits_t2 (84.55s)
=== CONT TestAccEC2Instance_CreditSpecification_unlimitedCPUCredits
--- PASS: TestAccEC2Instance_primaryNetworkInterfaceSourceDestCheck (92.63s)
=== CONT TestAccEC2Instance_CreditSpecification_standardCPUCredits
--- PASS: TestAccEC2Instance_CreditSpecification_unlimitedCPUCredits (109.45s)
=== CONT TestAccEC2Instance_tags
--- PASS: TestAccEC2Instance_CreditSpecification_standardCPUCredits (122.35s)
=== CONT TestAccEC2Instance_GetPasswordData_trueToFalse
--- PASS: TestAccEC2Instance_addSecurityGroupNetworkInterface (371.58s)
=== CONT TestAccEC2Instance_GetPasswordData_falseToTrue
--- PASS: TestAccEC2Instance_addSecondaryInterface (338.56s)
=== CONT TestAccEC2Instance_networkInstanceVPCSecurityGroupIDs
--- PASS: TestAccEC2Instance_tags (121.95s)
=== CONT TestAccEC2Instance_LaunchTemplate_swapIDAndName
--- PASS: TestAccEC2Instance_networkInstanceVPCSecurityGroupIDs (104.28s)
=== CONT TestAccEC2Instance_EBSBlockDevice_RootBlockDevice_removed
--- PASS: TestAccEC2Instance_LaunchTemplate_swapIDAndName (117.86s)
=== CONT TestAccEC2Instance_gp2IopsDevice
--- PASS: TestAccEC2Instance_GetPasswordData_falseToTrue (205.76s)
=== CONT TestAccEC2Instance_atLeastOneOtherEBSVolume
--- PASS: TestAccEC2Instance_GetPasswordData_trueToFalse (259.57s)
=== CONT TestAccEC2Instance_userDataBase64_update
--- PASS: TestAccEC2Instance_gp2IopsDevice (111.14s)
=== CONT TestAccEC2Instance_EBSBlockDevice_invalidThroughputForVolumeType
--- PASS: TestAccEC2Instance_EBSBlockDevice_invalidThroughputForVolumeType (10.11s)
=== CONT TestAccEC2Instance_userDataBase64_updateWithZipFile
--- PASS: TestAccEC2Instance_atLeastOneOtherEBSVolume (166.97s)
=== CONT TestAccEC2Instance_EBSBlockDevice_invalidIopsForVolumeType
--- PASS: TestAccEC2Instance_EBSBlockDevice_invalidIopsForVolumeType (9.57s)
=== CONT TestAccEC2Instance_userDataBase64_updateWithBashFile
--- PASS: TestAccEC2Instance_EBSBlockDevice_RootBlockDevice_removed (254.69s)
=== CONT TestAccEC2Instance_EBSBlockDevice_kmsKeyARN
--- PASS: TestAccEC2Instance_userDataBase64_update (200.45s)
=== CONT TestAccEC2Instance_userDataBase64
--- PASS: TestAccEC2Instance_userDataBase64_updateWithZipFile (207.83s)
=== CONT TestAccEC2Instance_inEC2Classic
ec2_classic.go:56: this test can only run in EC2-Classic, platforms available in us-east-1: ["VPC"]
--- SKIP: TestAccEC2Instance_inEC2Classic (0.56s)
=== CONT TestAccEC2Instance_basic
--- PASS: TestAccEC2Instance_EBSBlockDevice_kmsKeyARN (107.77s)
=== CONT TestAccEC2Instance_outpost
acctest.go:1293: skipping since no Outposts found
--- SKIP: TestAccEC2Instance_outpost (0.71s)
=== CONT TestAccEC2Instance_RootBlockDevice_kmsKeyARN
--- PASS: TestAccEC2Instance_userDataBase64 (92.40s)
=== CONT TestAccEC2Instance_networkInstanceSecurityGroups
--- PASS: TestAccEC2Instance_basic (68.78s)
=== CONT TestAccEC2Instance_inDefaultVPCBySgID
--- PASS: TestAccEC2Instance_userDataBase64_updateWithBashFile (207.20s)
=== CONT TestAccEC2Instance_IPv6_supportAddressCountWithIPv4
--- PASS: TestAccEC2Instance_RootBlockDevice_kmsKeyARN (126.13s)
=== CONT TestAccEC2Instance_ipv6AddressCountAndSingleAddressCausesError
--- PASS: TestAccEC2Instance_networkInstanceSecurityGroups (216.57s)
=== CONT TestAccEC2Instance_IPv6_supportAddressCount
--- PASS: TestAccEC2Instance_inDefaultVPCBySgID (80.53s)
=== CONT TestAccEC2Instance_CreditSpecificationEmpty_nonBurstable
--- PASS: TestAccEC2Instance_ipv6AddressCountAndSingleAddressCausesError (24.15s)
=== CONT TestAccEC2Instance_CreditSpecification_unspecifiedDefaultsToStandard
--- PASS: TestAccEC2Instance_IPv6_supportAddressCountWithIPv4 (101.63s)
=== CONT TestAccEC2Instance_CreditSpecificationUnspecifiedToEmpty_nonBurstable
--- PASS: TestAccEC2Instance_CreditSpecificationEmpty_nonBurstable (75.86s)
=== CONT TestAccEC2Instance_placementPartitionNumber
--- PASS: TestAccEC2Instance_IPv6_supportAddressCount (103.51s)
=== CONT TestAccEC2Instance_placementGroup
--- PASS: TestAccEC2Instance_CreditSpecification_unspecifiedDefaultsToStandard (81.60s)
=== CONT TestAccEC2Instance_dedicatedInstance
--- PASS: TestAccEC2Instance_CreditSpecificationUnspecifiedToEmpty_nonBurstable (114.57s)
=== CONT TestAccEC2Instance_rootInstanceStore
--- PASS: TestAccEC2Instance_placementPartitionNumber (95.37s)
=== CONT TestAccEC2Instance_noAMIEphemeralDevices
--- PASS: TestAccEC2Instance_placementGroup (83.96s)
=== CONT TestAccEC2Instance_blockDevices
--- PASS: TestAccEC2Instance_dedicatedInstance (100.88s)
=== CONT TestAccEC2Instance_disableAPITermination
--- PASS: TestAccEC2Instance_noAMIEphemeralDevices (67.54s)
=== CONT TestAccEC2Instance_sourceDestCheck
--- PASS: TestAccEC2Instance_rootInstanceStore (94.10s)
=== CONT TestAccEC2Instance_gp2WithIopsValue
--- PASS: TestAccEC2Instance_blockDevices (76.71s)
--- PASS: TestAccEC2Instance_gp2WithIopsValue (8.07s)
--- PASS: TestAccEC2Instance_disableAPITermination (121.42s)
--- PASS: TestAccEC2Instance_sourceDestCheck (179.79s)
errors unrelated to these changes
This functionality has been released in v4.7.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. Thank you! |
I'm going to lock this pull request because it has been closed for 30 days ⏳. This helps our maintainers find and focus on the active issues. |
Added a
user_data_replace_on_change
field to enable replication of the the pre-V4 provider behaviour when changinguser_data
oruser_data_base64
field values. Previously this resulted in a destroy and recreate of the EC2 instance. This flag when set totrue
will replicate that behaviour and result in a destroy and recreate.Community Note
Closes #23315
Output from acceptance testing: