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

feat: Implement ListTags for all taggable Lightsail resources #37711

Merged
merged 10 commits into from
May 29, 2024

Conversation

acwwat
Copy link
Contributor

@acwwat acwwat commented May 26, 2024

Description

This PR is to update the ListTags function to support all Lightsail resources, so that key-value tags can be applied to them without issues that was exposed in #32430 and other related issues.

While running acceptance tests I found numerous unrelated issues which needed to be fixed, which was time-consuming to say the least:

  • A few resources were missing a check for NotFoundException in the delete function, so disappears test cases were failing.
  • Test cases for aws_lightsail_database were using a deprecated/removed instance type micro_1_0, which are now replaced by micro_2_0.
  • The test cases for aws_lightsail_database that validate invalid schedule input were failing due to the removal of an ending period in the error message, which needed to be removed from the regex check.

One last issue is that for aws_lightsail_distribution, the create API returns a validation error for key-only tags, indicating that the value must have at least 1 character:

Error: creating Amazon Lightsail Distribution (tf-acc-test-6505537621970841512): operation error Lightsail: CreateDistribution, https response error StatusCode: 400, RequestID: b1690388-acd7-4b25-85e6-cccf2b63ff13, InvalidInputException: A specified tag value is an invalid length. Tag values must be 1 to 256 characters long.

This is not as expected according to the documentation, and since the TagResource API supports key-only tag for distributions. I've opened an AWS support case to have AWS fix the CreateDistribution API and updated the test case to avoid key-only tags on create for now.

Relations

Closes #37652

References

Used the implementation for aws_lightsail_instance in PR #37652 as reference.

Output from Acceptance Testing

For aws_lightsail_bucket:

$ make testacc TESTS=TestAccLightsailBucket_ PKG=lightsail
==> Checking that code complies with gofmt requirements...
TF_ACC=1 go1.22.2 test ./internal/service/lightsail/... -v -count 1 -parallel 20 -run='TestAccLightsailBucket_'  -timeout 360m
=== RUN   TestAccLightsailBucket_basic
=== PAUSE TestAccLightsailBucket_basic
=== RUN   TestAccLightsailBucket_BundleId
=== PAUSE TestAccLightsailBucket_BundleId
=== RUN   TestAccLightsailBucket_disappears
=== PAUSE TestAccLightsailBucket_disappears
=== RUN   TestAccLightsailBucket_tags
=== PAUSE TestAccLightsailBucket_tags
=== RUN   TestAccLightsailBucket_keyOnlyTags
=== PAUSE TestAccLightsailBucket_keyOnlyTags
=== RUN   TestAccLightsailBucket_forceDelete
=== PAUSE TestAccLightsailBucket_forceDelete
=== CONT  TestAccLightsailBucket_basic
=== CONT  TestAccLightsailBucket_tags
=== CONT  TestAccLightsailBucket_BundleId
=== CONT  TestAccLightsailBucket_keyOnlyTags
=== CONT  TestAccLightsailBucket_disappears
=== CONT  TestAccLightsailBucket_forceDelete
--- PASS: TestAccLightsailBucket_disappears (33.85s)
--- PASS: TestAccLightsailBucket_basic (38.39s)
--- PASS: TestAccLightsailBucket_forceDelete (38.44s)
--- PASS: TestAccLightsailBucket_BundleId (55.71s)
--- PASS: TestAccLightsailBucket_keyOnlyTags (60.79s)
--- PASS: TestAccLightsailBucket_tags (61.52s)
PASS
ok      github.com/hashicorp/terraform-provider-aws/internal/service/lightsail  61.757s

For aws_lightsail_certificate:

$ make testacc TESTS=TestAccLightsailCertificate_ PKG=lightsail
==> Checking that code complies with gofmt requirements...
TF_ACC=1 go1.22.2 test ./internal/service/lightsail/... -v -count 1 -parallel 20 -run='TestAccLightsailCertificate_'  -timeout 360m
=== RUN   TestAccLightsailCertificate_basic
=== PAUSE TestAccLightsailCertificate_basic
=== RUN   TestAccLightsailCertificate_subjectAlternativeNames
=== PAUSE TestAccLightsailCertificate_subjectAlternativeNames
=== RUN   TestAccLightsailCertificate_DomainValidationOptions
=== PAUSE TestAccLightsailCertificate_DomainValidationOptions
=== RUN   TestAccLightsailCertificate_tags
=== PAUSE TestAccLightsailCertificate_tags
=== RUN   TestAccLightsailCertificate_keyOnlyTags
=== PAUSE TestAccLightsailCertificate_keyOnlyTags
=== RUN   TestAccLightsailCertificate_disappears
=== PAUSE TestAccLightsailCertificate_disappears
=== CONT  TestAccLightsailCertificate_basic
=== CONT  TestAccLightsailCertificate_tags
=== CONT  TestAccLightsailCertificate_disappears
=== CONT  TestAccLightsailCertificate_keyOnlyTags
=== CONT  TestAccLightsailCertificate_DomainValidationOptions
=== CONT  TestAccLightsailCertificate_subjectAlternativeNames
--- PASS: TestAccLightsailCertificate_subjectAlternativeNames (52.37s)
--- PASS: TestAccLightsailCertificate_DomainValidationOptions (52.38s)
--- PASS: TestAccLightsailCertificate_disappears (53.78s)
--- PASS: TestAccLightsailCertificate_basic (56.70s)
--- PASS: TestAccLightsailCertificate_keyOnlyTags (62.41s)
--- PASS: TestAccLightsailCertificate_tags (91.69s)
PASS
ok      github.com/hashicorp/terraform-provider-aws/internal/service/lightsail  91.855s

For aws_lightsail_container_service:

$ make testacc TESTS=TestAccLightsailContainerService_ PKG=lightsail
==> Checking that code complies with gofmt requirements...
TF_ACC=1 go1.22.2 test ./internal/service/lightsail/... -v -count 1 -parallel 20 -run='TestAccLightsailContainerService_'  -timeout 360m
=== RUN   TestAccLightsailContainerService_basic
=== PAUSE TestAccLightsailContainerService_basic
=== RUN   TestAccLightsailContainerService_disappears
=== PAUSE TestAccLightsailContainerService_disappears
=== RUN   TestAccLightsailContainerService_name
=== PAUSE TestAccLightsailContainerService_name
=== RUN   TestAccLightsailContainerService_isDisabled
=== PAUSE TestAccLightsailContainerService_isDisabled
=== RUN   TestAccLightsailContainerService_power
=== PAUSE TestAccLightsailContainerService_power
=== RUN   TestAccLightsailContainerService_publicDomainNames
=== PAUSE TestAccLightsailContainerService_publicDomainNames
=== RUN   TestAccLightsailContainerService_privateRegistryAccess
=== PAUSE TestAccLightsailContainerService_privateRegistryAccess
=== RUN   TestAccLightsailContainerService_scale
=== PAUSE TestAccLightsailContainerService_scale
=== RUN   TestAccLightsailContainerService_tags
=== PAUSE TestAccLightsailContainerService_tags
=== RUN   TestAccLightsailContainerService_keyOnlyTags
=== PAUSE TestAccLightsailContainerService_keyOnlyTags
=== CONT  TestAccLightsailContainerService_basic
=== CONT  TestAccLightsailContainerService_publicDomainNames
=== CONT  TestAccLightsailContainerService_keyOnlyTags
=== CONT  TestAccLightsailContainerService_scale
=== CONT  TestAccLightsailContainerService_privateRegistryAccess
=== CONT  TestAccLightsailContainerService_isDisabled
=== CONT  TestAccLightsailContainerService_power
=== CONT  TestAccLightsailContainerService_name
=== CONT  TestAccLightsailContainerService_disappears
=== CONT  TestAccLightsailContainerService_tags
--- PASS: TestAccLightsailContainerService_publicDomainNames (61.52s)
--- PASS: TestAccLightsailContainerService_disappears (94.73s)
--- PASS: TestAccLightsailContainerService_privateRegistryAccess (97.58s)
--- PASS: TestAccLightsailContainerService_basic (113.56s)
--- PASS: TestAccLightsailContainerService_power (123.26s)
--- PASS: TestAccLightsailContainerService_tags (147.31s)
--- PASS: TestAccLightsailContainerService_keyOnlyTags (168.67s)
--- PASS: TestAccLightsailContainerService_name (184.00s)
--- PASS: TestAccLightsailContainerService_isDisabled (188.85s)
--- PASS: TestAccLightsailContainerService_scale (326.93s)
PASS
ok      github.com/hashicorp/terraform-provider-aws/internal/service/lightsail  327.178s

For aws_lightsail_database:

$ make testacc TESTS=TestAccLightsailDatabase_ PKG=lightsail
==> Checking that code complies with gofmt requirements...
TF_ACC=1 go1.22.2 test ./internal/service/lightsail/... -v -count 1 -parallel 20 -run='TestAccLightsailDatabase_'  -timeout 360m
=== RUN   TestAccLightsailDatabase_basic
=== PAUSE TestAccLightsailDatabase_basic
=== RUN   TestAccLightsailDatabase_relationalDatabaseName
=== PAUSE TestAccLightsailDatabase_relationalDatabaseName
=== RUN   TestAccLightsailDatabase_masterDatabaseName
=== PAUSE TestAccLightsailDatabase_masterDatabaseName
=== RUN   TestAccLightsailDatabase_masterUsername
=== PAUSE TestAccLightsailDatabase_masterUsername
=== RUN   TestAccLightsailDatabase_masterPassword
=== PAUSE TestAccLightsailDatabase_masterPassword
=== RUN   TestAccLightsailDatabase_preferredBackupWindow
=== PAUSE TestAccLightsailDatabase_preferredBackupWindow
=== RUN   TestAccLightsailDatabase_preferredMaintenanceWindow
=== PAUSE TestAccLightsailDatabase_preferredMaintenanceWindow
=== RUN   TestAccLightsailDatabase_publiclyAccessible
=== PAUSE TestAccLightsailDatabase_publiclyAccessible
=== RUN   TestAccLightsailDatabase_backupRetentionEnabled
=== PAUSE TestAccLightsailDatabase_backupRetentionEnabled
=== RUN   TestAccLightsailDatabase_finalSnapshotName
=== PAUSE TestAccLightsailDatabase_finalSnapshotName
=== RUN   TestAccLightsailDatabase_tags
=== PAUSE TestAccLightsailDatabase_tags
=== RUN   TestAccLightsailDatabase_keyOnlyTags
=== PAUSE TestAccLightsailDatabase_keyOnlyTags
=== RUN   TestAccLightsailDatabase_ha
=== PAUSE TestAccLightsailDatabase_ha
=== RUN   TestAccLightsailDatabase_disappears
=== PAUSE TestAccLightsailDatabase_disappears
=== CONT  TestAccLightsailDatabase_basic
=== CONT  TestAccLightsailDatabase_publiclyAccessible
=== CONT  TestAccLightsailDatabase_masterPassword
=== CONT  TestAccLightsailDatabase_relationalDatabaseName
=== CONT  TestAccLightsailDatabase_keyOnlyTags
=== CONT  TestAccLightsailDatabase_disappears
=== CONT  TestAccLightsailDatabase_ha
=== CONT  TestAccLightsailDatabase_finalSnapshotName
=== CONT  TestAccLightsailDatabase_tags
=== CONT  TestAccLightsailDatabase_backupRetentionEnabled
=== CONT  TestAccLightsailDatabase_preferredBackupWindow
=== CONT  TestAccLightsailDatabase_masterDatabaseName
=== CONT  TestAccLightsailDatabase_preferredMaintenanceWindow
=== CONT  TestAccLightsailDatabase_masterUsername
--- PASS: TestAccLightsailDatabase_disappears (603.69s)
--- PASS: TestAccLightsailDatabase_relationalDatabaseName (818.54s)
--- PASS: TestAccLightsailDatabase_keyOnlyTags (951.27s)
--- PASS: TestAccLightsailDatabase_basic (974.72s)
--- PASS: TestAccLightsailDatabase_tags (982.46s)
--- PASS: TestAccLightsailDatabase_preferredMaintenanceWindow (1029.03s)
--- PASS: TestAccLightsailDatabase_preferredBackupWindow (1029.03s)
--- PASS: TestAccLightsailDatabase_publiclyAccessible (1058.36s)
--- PASS: TestAccLightsailDatabase_finalSnapshotName (1115.81s)
--- PASS: TestAccLightsailDatabase_backupRetentionEnabled (1179.17s)
--- PASS: TestAccLightsailDatabase_ha (1641.56s)
--- PASS: TestAccLightsailDatabase_masterDatabaseName (1714.06s)
--- PASS: TestAccLightsailDatabase_masterUsername (2011.08s)
PASS
ok      github.com/hashicorp/terraform-provider-aws/internal/service/lightsail  2011.302s

For aws_lightsail_distribution:

$ export AWS_DEFAULT_REGION=us-east-1
$ make testacc TESTS=TestAccLightsailDistribution_ PKG=lightsail
==> Checking that code complies with gofmt requirements...
TF_ACC=1 go1.22.2 test ./internal/service/lightsail/... -v -count 1 -parallel 20 -run='TestAccLightsailDistribution_'  -timeout 360m
=== RUN   TestAccLightsailDistribution_serial
=== PAUSE TestAccLightsailDistribution_serial
=== CONT  TestAccLightsailDistribution_serial
=== RUN   TestAccLightsailDistribution_serial/distribution
=== RUN   TestAccLightsailDistribution_serial/distribution/ip_address_type
=== RUN   TestAccLightsailDistribution_serial/distribution/tags
=== RUN   TestAccLightsailDistribution_serial/distribution/basic
=== RUN   TestAccLightsailDistribution_serial/distribution/disappears
=== RUN   TestAccLightsailDistribution_serial/distribution/is_enabled
=== RUN   TestAccLightsailDistribution_serial/distribution/cache_behavior
=== RUN   TestAccLightsailDistribution_serial/distribution/cache_behavior_settings
=== RUN   TestAccLightsailDistribution_serial/distribution/default_cache_behavior
=== RUN   TestAccLightsailDistribution_serial/distribution/keyOnlyTags
--- PASS: TestAccLightsailDistribution_serial (5167.94s)
    --- PASS: TestAccLightsailDistribution_serial/distribution (5167.94.19s)
        --- PASS: TestAccLightsailDistribution_serial/distribution/ip_address_type (667.02s)
        --- PASS: TestAccLightsailDistribution_serial/distribution/tags (374.59s)
        --- PASS: TestAccLightsailDistribution_serial/distribution/basic (346.75s)
        --- PASS: TestAccLightsailDistribution_serial/distribution/disappears (343.26s)
        --- PASS: TestAccLightsailDistribution_serial/distribution/is_enabled (1027.16s)
        --- PASS: TestAccLightsailDistribution_serial/distribution/cache_behavior (668.03s)
        --- PASS: TestAccLightsailDistribution_serial/distribution/cache_behavior_settings (663.32s)
        --- PASS: TestAccLightsailDistribution_serial/distribution/default_cache_behavior (709.44s)
        --- PASS: TestAccLightsailDistribution_serial/distribution/keyOnlyTags (368.37s)
PASS
OK    github.com/hashicorp/terraform-provider-aws/internal/service/lightsail  5168.177s

For aws_lightsail_instance:

$ make testacc TESTS=TestAccLightsailInstance_ PKG=lightsail
==> Checking that code complies with gofmt requirements...
TF_ACC=1 go1.22.2 test ./internal/service/lightsail/... -v -count 1 -parallel 20 -run='TestAccLightsailInstance_'  -timeout 360m
=== RUN   TestAccLightsailInstance_basic
=== PAUSE TestAccLightsailInstance_basic
=== RUN   TestAccLightsailInstance_name
=== PAUSE TestAccLightsailInstance_name
=== RUN   TestAccLightsailInstance_tags
=== PAUSE TestAccLightsailInstance_tags
=== RUN   TestAccLightsailInstance_keyOnlyTags
=== PAUSE TestAccLightsailInstance_keyOnlyTags
=== RUN   TestAccLightsailInstance_IPAddressType
=== PAUSE TestAccLightsailInstance_IPAddressType
=== RUN   TestAccLightsailInstance_addOn
=== PAUSE TestAccLightsailInstance_addOn
=== RUN   TestAccLightsailInstance_availabilityZone
    instance_test.go:364: skipping test; environment variable TF_AWS_LIGHTSAIL_AVAILABILITY_ZONE must be set. Usage: The availability zone that is outside the providers current region.
--- SKIP: TestAccLightsailInstance_availabilityZone (0.00s)
=== RUN   TestAccLightsailInstance_disappears
=== PAUSE TestAccLightsailInstance_disappears
=== CONT  TestAccLightsailInstance_basic
=== CONT  TestAccLightsailInstance_IPAddressType
=== CONT  TestAccLightsailInstance_name
=== CONT  TestAccLightsailInstance_addOn
=== CONT  TestAccLightsailInstance_disappears
=== CONT  TestAccLightsailInstance_keyOnlyTags
=== CONT  TestAccLightsailInstance_tags
--- PASS: TestAccLightsailInstance_disappears (51.41s)
--- PASS: TestAccLightsailInstance_basic (52.01s)
--- PASS: TestAccLightsailInstance_IPAddressType (74.29s)
--- PASS: TestAccLightsailInstance_tags (79.85s)
--- PASS: TestAccLightsailInstance_keyOnlyTags (82.09s)
--- PASS: TestAccLightsailInstance_name (141.97s)
--- PASS: TestAccLightsailInstance_addOn (245.78s)
PASS
ok      github.com/hashicorp/terraform-provider-aws/internal/service/lightsail  246.028s

For aws_lightsail_key_pair:

$ make testacc TESTS=TestAccLightsailKeyPair PKG=lightsail
==> Checking that code complies with gofmt requirements...
TF_ACC=1 go1.22.2 test ./internal/service/lightsail/... -v -count 1 -parallel 20 -run='TestAccLightsailKeyPair'  -timeout 360m
=== RUN   TestAccLightsailKeyPair_basic
=== PAUSE TestAccLightsailKeyPair_basic
=== RUN   TestAccLightsailKeyPair_publicKey
=== PAUSE TestAccLightsailKeyPair_publicKey
=== RUN   TestAccLightsailKeyPair_encrypted
=== PAUSE TestAccLightsailKeyPair_encrypted
=== RUN   TestAccLightsailKeyPair_namePrefix
=== PAUSE TestAccLightsailKeyPair_namePrefix
=== RUN   TestAccLightsailKeyPair_tags
=== PAUSE TestAccLightsailKeyPair_tags
=== RUN   TestAccLightsailKeyPair_keyOnlyTags
=== PAUSE TestAccLightsailKeyPair_keyOnlyTags
=== RUN   TestAccLightsailKeyPair_disappears
=== PAUSE TestAccLightsailKeyPair_disappears
=== CONT  TestAccLightsailKeyPair_basic
=== CONT  TestAccLightsailKeyPair_tags
=== CONT  TestAccLightsailKeyPair_encrypted
=== CONT  TestAccLightsailKeyPair_disappears
=== CONT  TestAccLightsailKeyPair_publicKey
=== CONT  TestAccLightsailKeyPair_keyOnlyTags
=== CONT  TestAccLightsailKeyPair_namePrefix
--- PASS: TestAccLightsailKeyPair_disappears (30.09s)
--- PASS: TestAccLightsailKeyPair_encrypted (30.77s)
--- PASS: TestAccLightsailKeyPair_publicKey (30.87s)
--- PASS: TestAccLightsailKeyPair_basic (30.86s)
--- PASS: TestAccLightsailKeyPair_namePrefix (31.29s)
--- PASS: TestAccLightsailKeyPair_tags (51.49s)
--- PASS: TestAccLightsailKeyPair_keyOnlyTags (53.21s)
PASS
ok      github.com/hashicorp/terraform-provider-aws/internal/service/lightsail  53.431s

For aws_lightsail_lb:

$ make testacc TESTS=TestAccLightsailLoadBalancer_ PKG=lightsail
==> Checking that code complies with gofmt requirements...
TF_ACC=1 go1.22.2 test ./internal/service/lightsail/... -v -count 1 -parallel 20 -run='TestAccLightsailLoadBalancer_'  -timeout 360m
=== RUN   TestAccLightsailLoadBalancer_serial
=== PAUSE TestAccLightsailLoadBalancer_serial
=== CONT  TestAccLightsailLoadBalancer_serial
=== RUN   TestAccLightsailLoadBalancer_serial/lb_https_redirection_policy
=== RUN   TestAccLightsailLoadBalancer_serial/lb_https_redirection_policy/basic
=== RUN   TestAccLightsailLoadBalancer_serial/lb_stickiness_policy
=== RUN   TestAccLightsailLoadBalancer_serial/lb_stickiness_policy/disappears
=== RUN   TestAccLightsailLoadBalancer_serial/lb_stickiness_policy/basic
=== RUN   TestAccLightsailLoadBalancer_serial/lb_stickiness_policy/cookie_duration
=== RUN   TestAccLightsailLoadBalancer_serial/lb_stickiness_policy/enabled
=== RUN   TestAccLightsailLoadBalancer_serial/lb
=== RUN   TestAccLightsailLoadBalancer_serial/lb/basic
=== RUN   TestAccLightsailLoadBalancer_serial/lb/disappears
=== RUN   TestAccLightsailLoadBalancer_serial/lb/name
=== RUN   TestAccLightsailLoadBalancer_serial/lb/health_check_path
=== RUN   TestAccLightsailLoadBalancer_serial/lb/tags
=== RUN   TestAccLightsailLoadBalancer_serial/lb/key_only_tags
=== RUN   TestAccLightsailLoadBalancer_serial/lb_attachment
=== RUN   TestAccLightsailLoadBalancer_serial/lb_attachment/basic
=== RUN   TestAccLightsailLoadBalancer_serial/lb_attachment/disappears
=== RUN   TestAccLightsailLoadBalancer_serial/lb_certificate
=== RUN   TestAccLightsailLoadBalancer_serial/lb_certificate/basic
=== RUN   TestAccLightsailLoadBalancer_serial/lb_certificate/disappears
=== RUN   TestAccLightsailLoadBalancer_serial/lb_certificate/domain_validation_records
=== RUN   TestAccLightsailLoadBalancer_serial/lb_certificate/subject_alternative_names
=== RUN   TestAccLightsailLoadBalancer_serial/lb_certificate_attachment
=== RUN   TestAccLightsailLoadBalancer_serial/lb_certificate_attachment/basic
--- PASS: TestAccLightsailLoadBalancer_serial (4397.22s)
    --- PASS: TestAccLightsailLoadBalancer_serial/lb_https_redirection_policy (175.49s)
        --- PASS: TestAccLightsailLoadBalancer_serial/lb_https_redirection_policy/basic (175.49s)
    --- PASS: TestAccLightsailLoadBalancer_serial/lb_stickiness_policy (796.12s)
        --- PASS: TestAccLightsailLoadBalancer_serial/lb_stickiness_policy/disappears (194.10s)
        --- PASS: TestAccLightsailLoadBalancer_serial/lb_stickiness_policy/basic (187.78s)
        --- PASS: TestAccLightsailLoadBalancer_serial/lb_stickiness_policy/cookie_duration (207.11s)
        --- PASS: TestAccLightsailLoadBalancer_serial/lb_stickiness_policy/enabled (207.13s)
    --- PASS: TestAccLightsailLoadBalancer_serial/lb (1200.01s)
        --- PASS: TestAccLightsailLoadBalancer_serial/lb/basic (161.51s)
        --- PASS: TestAccLightsailLoadBalancer_serial/lb/disappears (172.71s)
        --- PASS: TestAccLightsailLoadBalancer_serial/lb/name (315.15s)
        --- PASS: TestAccLightsailLoadBalancer_serial/lb/health_check_path (187.22s)
        --- PASS: TestAccLightsailLoadBalancer_serial/lb/tags (181.32s)
        --- PASS: TestAccLightsailLoadBalancer_serial/lb/key_only_tags (182.10s)
    --- PASS: TestAccLightsailLoadBalancer_serial/lb_attachment (1144.78s)
        --- PASS: TestAccLightsailLoadBalancer_serial/lb_attachment/basic (553.91s)
        --- PASS: TestAccLightsailLoadBalancer_serial/lb_attachment/disappears (590.87s)
    --- PASS: TestAccLightsailLoadBalancer_serial/lb_certificate (874.11s)
        --- PASS: TestAccLightsailLoadBalancer_serial/lb_certificate/basic (223.30s)
        --- PASS: TestAccLightsailLoadBalancer_serial/lb_certificate/disappears (225.11s)
        --- PASS: TestAccLightsailLoadBalancer_serial/lb_certificate/domain_validation_records (212.60s)
        --- PASS: TestAccLightsailLoadBalancer_serial/lb_certificate/subject_alternative_names (213.11s)
    --- PASS: TestAccLightsailLoadBalancer_serial/lb_certificate_attachment (206.70s)
        --- PASS: TestAccLightsailLoadBalancer_serial/lb_certificate_attachment/basic (206.70s)
PASS
ok      github.com/hashicorp/terraform-provider-aws/internal/service/lightsail  4397.457s

Copy link

Community Note

Voting for Prioritization

  • Please vote on this pull request by adding a 👍 reaction to the original post to help the community and maintainers prioritize this pull request.
  • Please see our prioritization guide for information on how we prioritize.
  • Please do not leave "+1" or other comments that do not add relevant new information or questions, they generate extra noise for issue followers and do not help prioritize the request.

For Submitters

  • Review the contribution guide relating to the type of change you are making to ensure all of the necessary steps have been taken.
  • For new resources and data sources, use skaff to generate scaffolding with comments detailing common expectations.
  • Whether or not the branch has been rebased will not impact prioritization, but doing so is always a welcome surprise.

@github-actions github-actions bot added size/XL Managed by automation to categorize the size of a PR. documentation Introduces or discusses updates to documentation. tests PRs: expanded test coverage. Issues: expanded coverage, enhancements to test infrastructure. service/lightsail Issues and PRs that pertain to the lightsail service. generators Relates to code generators. labels May 26, 2024
@terraform-aws-provider terraform-aws-provider bot added needs-triage Waiting for first response or review from a maintainer. external-maintainer Contribution from a trusted external contributor. labels May 26, 2024
@acwwat acwwat force-pushed the f-aws_lightsail-list_tags branch from 5152d20 to 7fb48bd Compare May 26, 2024 04:21
@acwwat acwwat force-pushed the f-aws_lightsail-list_tags branch from 7fb48bd to cfebac1 Compare May 26, 2024 04:39
@justinretzolk justinretzolk added bug Addresses a defect in current functionality. enhancement Requests to existing resources that expand the functionality or scope. and removed needs-triage Waiting for first response or review from a maintainer. labels May 28, 2024
@johnsonaj johnsonaj added the tags Pertains to resource tagging. label May 29, 2024
@johnsonaj johnsonaj self-assigned this May 29, 2024
@terraform-aws-provider terraform-aws-provider bot added the prioritized Part of the maintainer teams immediate focus. To be addressed within the current quarter. label May 29, 2024
Copy link
Contributor

@johnsonaj johnsonaj left a comment

Choose a reason for hiding this comment

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

LGTM 🚀

% AWS_DEFAULT_REGION=us-east-1 make testacc TESTARGS='-run=TestAccLightsailBucket_\|TestAccLightsailCertificate_\|TestAccLightsailDistribution_\|TestAccLightsailInstance_\|TestAccLightsailKeyPair\|TestAccLightsailLoadBalancer_' PKG=lightsail

==> Checking that code complies with gofmt requirements...
TF_ACC=1 go1.22.2 test ./internal/service/lightsail/... -v -count 1 -parallel 20  -run=TestAccLightsailBucket_\|TestAccLightsailCertificate_\|TestAccLightsailDistribution_\|TestAccLightsailInstance_\|TestAccLightsailKeyPair\|TestAccLightsailLoadBalancer_ -timeout 360m
    instance_test.go:364: skipping test; environment variable TF_AWS_LIGHTSAIL_AVAILABILITY_ZONE must be set. Usage: The availability zone that is outside the providers current region.
--- SKIP: TestAccLightsailInstance_availabilityZone (0.00s)
--- PASS: TestAccLightsailKeyPair_disappears (29.92s)
--- PASS: TestAccLightsailKeyPair_publicKey (30.41s)
--- PASS: TestAccLightsailKeyPair_basic (30.66s)
--- PASS: TestAccLightsailKeyPair_encrypted (30.75s)
--- PASS: TestAccLightsailKeyPair_namePrefix (30.96s)
--- PASS: TestAccLightsailBucket_basic (33.91s)
--- PASS: TestAccLightsailContainerService_publicDomainNames (5.02s)
--- PASS: TestAccLightsailKeyPair_tags (46.52s)
--- PASS: TestAccLightsailKeyPair_keyOnlyTags (47.70s)
--- PASS: TestAccLightsailInstance_basic (54.14s)
--- PASS: TestAccLightsailInstance_disappears (54.40s)
--- PASS: TestAccLightsailCertificate_keyOnlyTags (62.63s)
--- PASS: TestAccLightsailBucket_forceDelete (27.25s)
--- PASS: TestAccLightsailCertificate_disappears (43.94s)
--- PASS: TestAccLightsailInstance_IPAddressType (74.75s)
--- PASS: TestAccLightsailInstance_tags (78.14s)
--- PASS: TestAccLightsailInstance_keyOnlyTags (78.85s)
--- PASS: TestAccLightsailCertificate_DomainValidationOptions (41.10s)
--- PASS: TestAccLightsailCertificate_basic (40.86s)
--- PASS: TestAccLightsailCertificate_subjectAlternativeNames (42.15s)
--- PASS: TestAccLightsailCertificate_tags (63.43s)
--- PASS: TestAccLightsailBucket_tags (40.98s)
--- PASS: TestAccLightsailBucket_BundleId (38.72s)
--- PASS: TestAccLightsailBucket_keyOnlyTags (41.74s)
--- PASS: TestAccLightsailBucket_disappears (25.24s)
--- PASS: TestAccLightsailInstance_name (130.31s)
--- PASS: TestAccLightsailInstance_addOn (241.45s)
--- PASS: TestAccLightsailContainerService_keyOnlyTags (277.54s)
--- PASS: TestAccLightsailContainerService_scale (343.42s)
--- PASS: TestAccLightsailContainerService_tags (277.11s)
--- PASS: TestAccLightsailLoadBalancer_serial (4977.12s)
    --- PASS: TestAccLightsailLoadBalancer_serial/lb (1378.97s)
        --- PASS: TestAccLightsailLoadBalancer_serial/lb/tags (190.28s)
        --- PASS: TestAccLightsailLoadBalancer_serial/lb/key_only_tags (174.43s)
        --- PASS: TestAccLightsailLoadBalancer_serial/lb/basic (168.44s)
        --- PASS: TestAccLightsailLoadBalancer_serial/lb/disappears (168.63s)
        --- PASS: TestAccLightsailLoadBalancer_serial/lb/name (310.59s)
        --- PASS: TestAccLightsailLoadBalancer_serial/lb/health_check_path (366.61s)
    --- PASS: TestAccLightsailLoadBalancer_serial/lb_attachment (1180.22s)
        --- PASS: TestAccLightsailLoadBalancer_serial/lb_attachment/basic (561.44s)
        --- PASS: TestAccLightsailLoadBalancer_serial/lb_attachment/disappears (618.78s)
    --- PASS: TestAccLightsailLoadBalancer_serial/lb_certificate (879.98s)
        --- PASS: TestAccLightsailLoadBalancer_serial/lb_certificate/basic (220.11s)
        --- PASS: TestAccLightsailLoadBalancer_serial/lb_certificate/disappears (230.79s)
        --- PASS: TestAccLightsailLoadBalancer_serial/lb_certificate/domain_validation_records (209.04s)
        --- PASS: TestAccLightsailLoadBalancer_serial/lb_certificate/subject_alternative_names (220.02s)
    --- PASS: TestAccLightsailLoadBalancer_serial/lb_certificate_attachment (225.96s)
        --- PASS: TestAccLightsailLoadBalancer_serial/lb_certificate_attachment/basic (225.96s)
    --- PASS: TestAccLightsailLoadBalancer_serial/lb_https_redirection_policy (151.93s)
        --- PASS: TestAccLightsailLoadBalancer_serial/lb_https_redirection_policy/basic (151.93s)
    --- PASS: TestAccLightsailLoadBalancer_serial/lb_stickiness_policy (1160.06s)
        --- PASS: TestAccLightsailLoadBalancer_serial/lb_stickiness_policy/basic (370.88s)
        --- PASS: TestAccLightsailLoadBalancer_serial/lb_stickiness_policy/cookie_duration (375.49s)
        --- PASS: TestAccLightsailLoadBalancer_serial/lb_stickiness_policy/enabled (211.81s)
        --- PASS: TestAccLightsailLoadBalancer_serial/lb_stickiness_policy/disappears (201.88s)
--- PASS: TestAccLightsailDistribution_serial (5287.40s)
    --- PASS: TestAccLightsailDistribution_serial/distribution (5287.40s)
        --- PASS: TestAccLightsailDistribution_serial/distribution/ip_address_type (657.51s)
        --- PASS: TestAccLightsailDistribution_serial/distribution/tags (353.49s)
        --- PASS: TestAccLightsailDistribution_serial/distribution/keyOnlyTags (356.70s)
        --- PASS: TestAccLightsailDistribution_serial/distribution/basic (337.88s)
        --- PASS: TestAccLightsailDistribution_serial/distribution/cache_behavior (955.63s)
        --- PASS: TestAccLightsailDistribution_serial/distribution/cache_behavior_settings (649.86s)
        --- PASS: TestAccLightsailDistribution_serial/distribution/default_cache_behavior (689.41s)
        --- PASS: TestAccLightsailDistribution_serial/distribution/disappears (333.62s)
        --- PASS: TestAccLightsailDistribution_serial/distribution/is_enabled (953.30s)
PASS
ok	github.com/hashicorp/terraform-provider-aws/internal/service/lightsail	5292.966s
% make testacc TESTARGS='-run=TestAccLightsailContainerService_' PKG=lightsail
                                                                                                      
==> Checking that code complies with gofmt requirements...
TF_ACC=1 go1.22.2 test ./internal/service/lightsail/... -v -count 1 -parallel 20  -run=TestAccLightsailContainerService_ -timeout 360m
--- PASS: TestAccLightsailContainerService_publicDomainNames (34.44s)
--- PASS: TestAccLightsailContainerService_tags (330.03s)
--- PASS: TestAccLightsailContainerService_scale (384.40s)
--- PASS: TestAccLightsailContainerService_power (404.57s)
--- PASS: TestAccLightsailContainerService_name (414.98s)
--- PASS: TestAccLightsailContainerService_isDisabled (487.33s)
--- PASS: TestAccLightsailContainerService_disappears (527.64s)
--- PASS: TestAccLightsailContainerService_privateRegistryAccess (532.87s)
--- PASS: TestAccLightsailContainerService_basic (551.51s)
--- PASS: TestAccLightsailContainerService_keyOnlyTags (555.15s)
PASS
ok  	github.com/hashicorp/terraform-provider-aws/internal/service/lightsail	560.854s

@johnsonaj
Copy link
Contributor

@acwwat thank you for the contribution! 🎉

@johnsonaj johnsonaj merged commit b6a0050 into hashicorp:main May 29, 2024
44 checks passed
@github-actions github-actions bot added this to the v5.52.0 milestone May 29, 2024
@github-actions github-actions bot removed the prioritized Part of the maintainer teams immediate focus. To be addressed within the current quarter. label May 30, 2024
Copy link

This functionality has been released in v5.52.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!

@acwwat acwwat deleted the f-aws_lightsail-list_tags branch June 11, 2024 17:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Addresses a defect in current functionality. documentation Introduces or discusses updates to documentation. enhancement Requests to existing resources that expand the functionality or scope. external-maintainer Contribution from a trusted external contributor. generators Relates to code generators. service/lightsail Issues and PRs that pertain to the lightsail service. size/XL Managed by automation to categorize the size of a PR. tags Pertains to resource tagging. tests PRs: expanded test coverage. Issues: expanded coverage, enhancements to test infrastructure.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[Enhancement]: Implement ListTags for Lightsail resources
3 participants