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

[WIP] App Mesh preview 04/2020: Route timeouts, virtual gateways #12750

Closed
wants to merge 16 commits into from

Conversation

ewbankkit
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" or other comments that do not add relevant new information or questions, they generate extra noise for pull request followers and do not help prioritize the request

WIP to support 04/2020 enhancements in the App Mesh preview channel:

Replaces #11850.

Related:

Includes changes from:

Acceptance test output:

$ make testacc TEST=./aws TESTARGS='-run=TestAccAWSAppmesh/VirtualNode'
==> Checking that code complies with gofmt requirements...
GO111MODULE=off TF_ACC=1 go test ./aws -v -count 1 -parallel 20 -run=TestAccAWSAppmesh/VirtualNode -timeout 120m
=== RUN   TestAccAWSAppmesh
=== RUN   TestAccAWSAppmesh/VirtualNode
=== RUN   TestAccAWSAppmesh/VirtualNode/cloudMapServiceDiscovery
=== RUN   TestAccAWSAppmesh/VirtualNode/listenerHealthChecks
=== RUN   TestAccAWSAppmesh/VirtualNode/logging
=== RUN   TestAccAWSAppmesh/VirtualNode/basic
--- PASS: TestAccAWSAppmesh (221.62s)
    --- PASS: TestAccAWSAppmesh/VirtualNode (221.62s)
        --- PASS: TestAccAWSAppmesh/VirtualNode/cloudMapServiceDiscovery (114.06s)
        --- PASS: TestAccAWSAppmesh/VirtualNode/listenerHealthChecks (40.76s)
        --- PASS: TestAccAWSAppmesh/VirtualNode/logging (41.45s)
        --- PASS: TestAccAWSAppmesh/VirtualNode/basic (25.35s)
PASS
ok  	github.com/terraform-providers/terraform-provider-aws/aws	221.667s
Disable SDS support (ForbiddenException: TLS Certificates from SDS are not supported).

Acceptance test output:

$ make testacc TEST=./aws TESTARGS='-run=TestAccAWSAppmesh/VirtualNode/tls'
==> Checking that code complies with gofmt requirements...
GO111MODULE=off TF_ACC=1 go test ./aws -v -count 1 -parallel 20 -run=TestAccAWSAppmesh/VirtualNode/tls -timeout 120m
=== RUN   TestAccAWSAppmesh
=== RUN   TestAccAWSAppmesh/VirtualNode
=== RUN   TestAccAWSAppmesh/VirtualNode/tls
--- PASS: TestAccAWSAppmesh (56.32s)
    --- PASS: TestAccAWSAppmesh/VirtualNode (56.32s)
        --- PASS: TestAccAWSAppmesh/VirtualNode/tls (56.32s)
PASS
ok  	github.com/terraform-providers/terraform-provider-aws/aws	56.365s
… attribute.

TODO: Enabled acceptance tests.

Acceptance testing output:

$ make testacc TEST=./aws TESTARGS='-run=TestAccAWSAppmesh/VirtualNode'
==> Checking that code complies with gofmt requirements...
GO111MODULE=off TF_ACC=1 go test ./aws -v -count 1 -parallel 20 -run=TestAccAWSAppmesh/VirtualNode -timeout 120m
=== RUN   TestAccAWSAppmesh
=== RUN   TestAccAWSAppmesh/VirtualNode
=== RUN   TestAccAWSAppmesh/VirtualNode/tls
=== RUN   TestAccAWSAppmesh/VirtualNode/basic
=== RUN   TestAccAWSAppmesh/VirtualNode/cloudMapServiceDiscovery
=== RUN   TestAccAWSAppmesh/VirtualNode/listenerHealthChecks
=== RUN   TestAccAWSAppmesh/VirtualNode/logging
--- PASS: TestAccAWSAppmesh (283.47s)
    --- PASS: TestAccAWSAppmesh/VirtualNode (283.47s)
        --- PASS: TestAccAWSAppmesh/VirtualNode/tls (56.13s)
        --- PASS: TestAccAWSAppmesh/VirtualNode/basic (26.08s)
        --- PASS: TestAccAWSAppmesh/VirtualNode/cloudMapServiceDiscovery (115.83s)
        --- PASS: TestAccAWSAppmesh/VirtualNode/listenerHealthChecks (43.04s)
        --- PASS: TestAccAWSAppmesh/VirtualNode/logging (42.39s)
PASS
ok  	github.com/terraform-providers/terraform-provider-aws/aws	283.517s
…y...file attribute.

Acceptance testing output:

$ make testacc TEST=./aws TESTARGS='-run=TestAccAWSAppmesh/VirtualNode/clientPolicyFile'
==> Checking that code complies with gofmt requirements...
GO111MODULE=off TF_ACC=1 go test ./aws -v -count 1 -parallel 20 -run=TestAccAWSAppmesh/VirtualNode/clientPolicyFile -timeout 120m
=== RUN   TestAccAWSAppmesh
=== RUN   TestAccAWSAppmesh/VirtualNode
=== RUN   TestAccAWSAppmesh/VirtualNode/clientPolicyFile
--- PASS: TestAccAWSAppmesh (41.99s)
    --- PASS: TestAccAWSAppmesh/VirtualNode (41.99s)
        --- PASS: TestAccAWSAppmesh/VirtualNode/clientPolicyFile (41.99s)
PASS
ok  	github.com/terraform-providers/terraform-provider-aws/aws	42.027s
…y...acm attribute.

Acceptance test output:

$ make testacc TEST=./aws TESTARGS='-run=TestAccAWSAppmesh/VirtualNode/clientPolicyAcm'
==> Checking that code complies with gofmt requirements...
GO111MODULE=off TF_ACC=1 go test ./aws -v -count 1 -parallel 20 -run=TestAccAWSAppmesh/VirtualNode/clientPolicyAcm -timeout 120m
=== RUN   TestAccAWSAppmesh
=== RUN   TestAccAWSAppmesh/VirtualNode
=== RUN   TestAccAWSAppmesh/VirtualNode/clientPolicyAcm
--- PASS: TestAccAWSAppmesh (68.09s)
    --- PASS: TestAccAWSAppmesh/VirtualNode (68.09s)
        --- PASS: TestAccAWSAppmesh/VirtualNode/clientPolicyAcm (68.09s)
PASS
ok  	github.com/terraform-providers/terraform-provider-aws/aws	68.124s
Acceptance test output:

$ make testacc TEST=./aws TESTARGS='-run=TestAccAWSAppmesh/VirtualNode/clientPolicyFile'
==> Checking that code complies with gofmt requirements...
GO111MODULE=off TF_ACC=1 go test ./aws -v -count 1 -parallel 20 -run=TestAccAWSAppmesh/VirtualNode/clientPolicyFile -timeout 120m
=== RUN   TestAccAWSAppmesh
=== RUN   TestAccAWSAppmesh/VirtualNode
=== RUN   TestAccAWSAppmesh/VirtualNode/clientPolicyFile
--- PASS: TestAccAWSAppmesh (42.17s)
    --- PASS: TestAccAWSAppmesh/VirtualNode (42.17s)
        --- PASS: TestAccAWSAppmesh/VirtualNode/clientPolicyFile (42.17s)
PASS
ok  	github.com/terraform-providers/terraform-provider-aws/aws	42.221s
Acceptance test output:

$ make testacc TEST=./aws TESTARGS='-run=TestAccAWSAppmesh/VirtualNode/backendDefaults'
==> Checking that code complies with gofmt requirements...
GO111MODULE=off TF_ACC=1 go test ./aws -v -count 1 -parallel 20 -run=TestAccAWSAppmesh/VirtualNode/backendDefaults -timeout 120m
=== RUN   TestAccAWSAppmesh
=== RUN   TestAccAWSAppmesh/VirtualNode
=== RUN   TestAccAWSAppmesh/VirtualNode/backendDefaults
--- PASS: TestAccAWSAppmesh (41.99s)
    --- PASS: TestAccAWSAppmesh/VirtualNode (41.99s)
        --- PASS: TestAccAWSAppmesh/VirtualNode/backendDefaults (41.99s)
PASS
ok  	github.com/terraform-providers/terraform-provider-aws/aws	42.047s
$ TEST=./aws SWEEP=us-west-2 SWEEPARGS=-sweep-run=aws_appmesh_virtual_node make sweep
WARNING: This will destroy infrastructure. Use only in development accounts.
go test ./aws -v -sweep=us-west-2 -sweep-run=aws_appmesh_virtual_node -timeout 60m
2020/03/26 12:28:45 [DEBUG] Running Sweepers for region (us-west-2):
2020/03/26 12:28:45 [DEBUG] Running Sweeper (aws_appmesh_virtual_node) in region (us-west-2)
2020/03/26 12:28:45 [INFO] Building AWS auth structure
2020/03/26 12:28:45 [INFO] Setting AWS metadata API timeout to 100ms
2020/03/26 12:28:47 [INFO] Ignoring AWS metadata API endpoint at default location as it doesn't return any instance-id
2020/03/26 12:28:47 [INFO] AWS Auth provider used: "EnvProvider"
2020/03/26 12:28:47 [DEBUG] Trying to get account information via sts:GetCallerIdentity
2020/03/26 12:28:47 [DEBUG] Trying to get account information via sts:GetCallerIdentity
2020/03/26 12:28:48 Sweeper Tests ran successfully:
	- aws_appmesh_virtual_node
ok  	github.com/terraform-providers/terraform-provider-aws/aws	2.607s
- Alias appmeshpreview to appmesh
- Remove test sweepers
- Correct service in acceptance test arn checking

Acceptance test output:

$ make testacc TEST=./aws TESTARGS='-run=TestAccAWSAppmesh/VirtualService'
==> Checking that code complies with gofmt requirements...
GO111MODULE=off TF_ACC=1 go test ./aws -v -count 1 -parallel 20 -run=TestAccAWSAppmesh/VirtualService -timeout 120m
=== RUN   TestAccAWSAppmesh
=== RUN   TestAccAWSAppmesh/VirtualService
=== RUN   TestAccAWSAppmesh/VirtualService/virtualNode
=== RUN   TestAccAWSAppmesh/VirtualService/virtualRouter
--- PASS: TestAccAWSAppmesh (86.16s)
    --- PASS: TestAccAWSAppmesh/VirtualService (86.16s)
        --- PASS: TestAccAWSAppmesh/VirtualService/virtualNode (45.49s)
        --- PASS: TestAccAWSAppmesh/VirtualService/virtualRouter (40.67s)
PASS
ok  	github.com/terraform-providers/terraform-provider-aws/aws	86.234s
$ make testacc TEST=./aws TESTARGS='-run=TestAccAWSAppmesh/VirtualNode'
==> Checking that code complies with gofmt requirements...
GO111MODULE=off TF_ACC=1 go test ./aws -v -count 1 -parallel 20 -run=TestAccAWSAppmesh/VirtualNode -timeout 120m
=== RUN   TestAccAWSAppmesh
=== RUN   TestAccAWSAppmesh/VirtualNode
=== RUN   TestAccAWSAppmesh/VirtualNode/logging
=== RUN   TestAccAWSAppmesh/VirtualNode/tls
=== RUN   TestAccAWSAppmesh/VirtualNode/basic
=== RUN   TestAccAWSAppmesh/VirtualNode/backendDefaults
=== RUN   TestAccAWSAppmesh/VirtualNode/clientPolicyAcm
=== RUN   TestAccAWSAppmesh/VirtualNode/clientPolicyFile
=== RUN   TestAccAWSAppmesh/VirtualNode/cloudMapServiceDiscovery
=== RUN   TestAccAWSAppmesh/VirtualNode/listenerHealthChecks
--- PASS: TestAccAWSAppmesh (473.06s)
    --- PASS: TestAccAWSAppmesh/VirtualNode (473.06s)
        --- PASS: TestAccAWSAppmesh/VirtualNode/logging (42.41s)
        --- PASS: TestAccAWSAppmesh/VirtualNode/tls (97.03s)
        --- PASS: TestAccAWSAppmesh/VirtualNode/basic (25.82s)
        --- PASS: TestAccAWSAppmesh/VirtualNode/backendDefaults (42.46s)
        --- PASS: TestAccAWSAppmesh/VirtualNode/clientPolicyAcm (68.01s)
        --- PASS: TestAccAWSAppmesh/VirtualNode/clientPolicyFile (41.15s)
        --- PASS: TestAccAWSAppmesh/VirtualNode/cloudMapServiceDiscovery (114.31s)
        --- PASS: TestAccAWSAppmesh/VirtualNode/listenerHealthChecks (41.87s)
PASS
ok  	github.com/terraform-providers/terraform-provider-aws/aws	473.114s
@ewbankkit ewbankkit requested a review from a team April 9, 2020 15:30
@ghost ghost added needs-triage Waiting for first response or review from a maintainer. size/XXL Managed by automation to categorize the size of a PR. dependencies Used to indicate dependency changes. documentation Introduces or discusses updates to documentation. provider Pertains to the provider itself, rather than any interaction with AWS. service/acm Issues and PRs that pertain to the acm service. service/acmpca Issues and PRs that pertain to the acmpca service. service/appmesh Issues and PRs that pertain to the appmesh service. tests PRs: expanded test coverage. Issues: expanded coverage, enhancements to test infrastructure. labels Apr 9, 2020
@ewbankkit
Copy link
Contributor Author

Route timeouts are available with AWS SDK v1.32.4:

@ewbankkit
Copy link
Contributor Author

Virtual gateways and routes available with AWS SDK v1.33.5:

@ewbankkit
Copy link
Contributor Author

Closing in favour of #13839 and PR that resolves #14169.

@ewbankkit ewbankkit closed this Jul 27, 2020
@ewbankkit ewbankkit deleted the appmesh-preview-04-2020 branch July 27, 2020 21:13
@ewbankkit ewbankkit removed the needs-triage Waiting for first response or review from a maintainer. label Jul 27, 2020
@ghost
Copy link

ghost commented Aug 27, 2020

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 Aug 27, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
dependencies Used to indicate dependency changes. documentation Introduces or discusses updates to documentation. provider Pertains to the provider itself, rather than any interaction with AWS. service/acm Issues and PRs that pertain to the acm service. service/acmpca Issues and PRs that pertain to the acmpca service. service/appmesh Issues and PRs that pertain to the appmesh service. size/XXL Managed by automation to categorize the size of a PR. 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.

1 participant