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

Add app sync schema #4840

Merged
merged 7 commits into from
Mar 26, 2019
Merged

Conversation

beauknowssoftware
Copy link
Contributor

Changes proposed in this pull request:

  • Add AppSync Schema resource
  • Add documentation for AppSync Schema resource

Output from acceptance testing:

$ make testacc TESTARGS='-run=TestAccAwsAppsyncSchema'
==> Checking that code complies with gofmt requirements...
TF_ACC=1 go test ./... -v -run=TestAccAwsAppsyncSchema -timeout 120m
?       github.com/terraform-providers/terraform-provider-aws   [no test files]
=== RUN   TestAccAwsAppsyncSchema
--- PASS: TestAccAwsAppsyncSchema (19.28s)
=== RUN   TestAccAwsAppsyncSchema_update
--- PASS: TestAccAwsAppsyncSchema_update (33.94s)
PASS
ok      github.com/terraform-providers/terraform-provider-aws/aws       (cached)
...

@ghost ghost added the size/L Managed by automation to categorize the size of a PR. label Jun 14, 2018
@bflad bflad added new-resource Introduces a new resource. service/appsync Issues and PRs that pertain to the appsync service. labels Jun 15, 2018
@Aedalus
Copy link

Aedalus commented Jun 15, 2018

I could really use appsync schemas and resolvers for a current project! I'd love to see this get in.

@ghost ghost added the size/L Managed by automation to categorize the size of a PR. label Jul 9, 2018
@beauknowssoftware
Copy link
Contributor Author

@bflad Is there anything more I need to do with this to get it pulled in?

@sconzof
Copy link

sconzof commented Aug 16, 2018

Looks like the travis CI checks passed. I would LOVE to use terraform exclusively for my schema updates, rather than a hybrid where I do some parts of AppSync with TF and must do the remainder with CF. I hope this gets added soon!

@macbutch
Copy link
Contributor

Wow! This will make my life so much better when it lands - hope it can be soon too! (@phuonglu)

@simenandre
Copy link

+1 from me. We really need this for our Terraform setup. 👍

@ehubbard
Copy link

+1 from me 👍

@bflad
Copy link
Contributor

bflad commented Aug 20, 2018

Hi folks 👋 Please note that we can only utilize 👍 upvote reactions to the original issue or pull request for reporting and prioritization. e.g. https://github.com/terraform-providers/terraform-provider-aws/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%2B1-desc "+1"/"me too" comments unfortunately only generate noise for issue/pull request followers and do not help the maintainers with prioritization. 😅

@ghost
Copy link

ghost commented Aug 21, 2018

👍 upvote +1

@plainsane
Copy link

Yea, this would be nice, it’s pretty bobo to have to shell out to,get this done

@sleerssen
Copy link

yes, please

@praveenc1
Copy link

+1. Like to see this implemented.

@clearly
Copy link

clearly commented Aug 21, 2018

+1.This really needs to be added.

@eugene-manuilov
Copy link

@beauknowssoftware, perhaps it would be easier if you extract your changes to be a separate plugin? In this case, we won't need to wait for ages till it gets merged into master...

return err
}

if err := waitForSchemaToBeActive(apiId, meta); err != nil {
Copy link
Contributor

Choose a reason for hiding this comment

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

@beauknowssoftware I've been working on implementing AppSync resolvers and came across your PR via #2705 . I'm wondering if this wait could be implemented using StateChangeConf provided in terraform/helper/resource. Here's an example in CloudFormation stacks: https://github.com/terraform-providers/terraform-provider-aws/blob/master/aws/resource_aws_cloudformation_stack.go#L178. I believe it can since there are discrete statuses returned from GetSchemaCreationStatus

Copy link
Contributor

@bflad bflad Oct 12, 2018

Choose a reason for hiding this comment

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

I will agree with @perryao here -- we tend to prefer API waiting via existing SDK Waiter functions (pretty rare), resource.Retry(), or resource.StateChangeConf: https://www.terraform.io/docs/extend/resources.html#statechangeconf

There are quite a few examples across the project if you search for StateChangeConf, but I can certainly help if you need specific guidance. 😄

@garrett-hopper
Copy link

Does this include resolver configuration or just the schema?

@dguisinger
Copy link

Any progress on this? AppSync has been in general availability for 10 months ....

@eugene-manuilov
Copy link

As a workaround, I use cloudformation to define schema and resolvers for now. Hope it helps to someone who also waits for this PR to be merged.

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.

Hi @beauknowssoftware 👋 Thanks for submitting this and sorry for the delays in getting it reviewed. 😅 I left some initial questions and feedback below. Please reach out with any questions or let us know if you do not have time to continue working on this.

func resourceAwsAppsyncSchema() *schema.Resource {
return &schema.Resource{
Create: resourceAwsAppsyncSchemaPut,
Read: resourceAwsAppsyncSchemaNil,
Copy link
Contributor

Choose a reason for hiding this comment

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

Is it possible to read this information via the GetIntrospectionSchema API call? One of Terraform's design tenets is that it can detect configuration drift. If its not possible to read this information back from the API, this may not be a good candidate for management in Terraform.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

The introspection schema is not the same blob that is sent to StartSchemaCreation. These are two different objects. Schema must be present in order to create resolvers. Setting up the schema outside of Terraform would mean either setting up the API outside of Terraform before hand or setting up resolvers outside of Terraform afterwards. Neither of these options is ideal.

aws/provider.go Outdated
@@ -309,6 +309,7 @@ func Provider() terraform.ResourceProvider {
"aws_appsync_api_key": resourceAwsAppsyncApiKey(),
"aws_appsync_datasource": resourceAwsAppsyncDatasource(),
"aws_appsync_graphql_api": resourceAwsAppsyncGraphqlApi(),
"aws_appsync_schema": resourceAwsAppsyncSchema(),
Copy link
Contributor

Choose a reason for hiding this comment

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

Can a AppSync Graph API have more than one schema? If not, instead of a new resource, it may make better sense as an attribute of the existing aws_appsync_graphql_api resource (unless self-references are necessary).

Copy link
Contributor Author

Choose a reason for hiding this comment

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

There is only one schema per API. I can look into adding it as an attribute instead of a separate resource. This would move my StartSchemaCreation logic into the API create/update methods.

return err
}

if err := waitForSchemaToBeActive(apiId, meta); err != nil {
Copy link
Contributor

@bflad bflad Oct 12, 2018

Choose a reason for hiding this comment

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

I will agree with @perryao here -- we tend to prefer API waiting via existing SDK Waiter functions (pretty rare), resource.Retry(), or resource.StateChangeConf: https://www.terraform.io/docs/extend/resources.html#statechangeconf

There are quite a few examples across the project if you search for StateChangeConf, but I can certainly help if you need specific guidance. 😄

Create: resourceAwsAppsyncSchemaPut,
Read: resourceAwsAppsyncSchemaNil,
Update: resourceAwsAppsyncSchemaPut,
Delete: resourceAwsAppsyncSchemaNil,
Copy link
Contributor

Choose a reason for hiding this comment

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

Not having a deletion method may be another sign that this may not make sense as its own resource, but instead an attribute of an existing "parent" resource (aws_appsync_graphql_api). 👍 Otherwise, we should use schema.Noop instead of our own function here and add a warning to the documentation that removing this resource does not actually delete the schema.

Delete: resourceAwsAppsyncSchemaNil,

Schema: map[string]*schema.Schema{
"api_id": &schema.Schema{
Copy link
Contributor

Choose a reason for hiding this comment

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

This attribute should be ForceNew: true since this field is not update-able.

if d.HasChange("definition") {
input := &appsync.StartSchemaCreationInput{
ApiId: aws.String(apiId),
Definition: ([]byte)(d.Get("definition").(string)),
Copy link
Contributor

Choose a reason for hiding this comment

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

Since this attribute is []byte, do we need to worry about actual binary data? Terraform's state currently requires UTF-8 compatibility otherwise it could cause corruption.

@bflad bflad added the waiting-response Maintainers are waiting on response from community or contributor. label Oct 12, 2018
@tejans24
Copy link

tejans24 commented Nov 7, 2018

has @beauknowssoftware gone MIA? Is this still in-progress? Just curious, thanks for working on this.

@beauknowssoftware
Copy link
Contributor Author

Sorry for the late response to this thread. I haven't forgotten about this PR, but I also haven't had time to get back to work on it. Hoping to have more spare time over the holidays

@ngocketit
Copy link

+1 for this please.

@ghost ghost removed the waiting-response Maintainers are waiting on response from community or contributor. label Jan 8, 2019
@barundel
Copy link

barundel commented Jan 9, 2019

hey @beauknowssoftware any chance of an update? cheers for your work so far ;)

@ghost ghost added the documentation Introduces or discusses updates to documentation. label Jan 13, 2019
@ghost ghost added size/L Managed by automation to categorize the size of a PR. and removed size/M Managed by automation to categorize the size of a PR. labels Jan 14, 2019
@beauknowssoftware beauknowssoftware force-pushed the appsync_graphql_api branch 2 times, most recently from c9f7276 to 492ada1 Compare January 14, 2019 18:34
@ghost ghost added size/M Managed by automation to categorize the size of a PR. and removed size/L Managed by automation to categorize the size of a PR. labels Jan 14, 2019
@beauknowssoftware
Copy link
Contributor Author

@bflad
I think this is ready for another look. Please let me know if there are any other changes that need to be made

@beauknowssoftware
Copy link
Contributor Author

TF_ACC=1 go test ./... -v -parallel 20 -run="AccAWSAppsyncGraphqlApi_basic" -timeout 120m
? github.com/terraform-providers/terraform-provider-aws [no test files]
=== RUN TestAccAWSAppsyncGraphqlApi_basic
=== PAUSE TestAccAWSAppsyncGraphqlApi_basic
=== CONT TestAccAWSAppsyncGraphqlApi_basic
--- PASS: TestAccAWSAppsyncGraphqlApi_basic (6.97s)
PASS
ok github.com/terraform-providers/terraform-provider-aws/aws 6.992s
==> Checking that code complies with gofmt requirements...
TF_ACC=1 go test ./... -v -parallel 20 -run="AccAWSAppsyncGraphqlApi_schema" -timeout 120m
? github.com/terraform-providers/terraform-provider-aws [no test files]
=== RUN TestAccAWSAppsyncGraphqlApi_schema
=== PAUSE TestAccAWSAppsyncGraphqlApi_schema
=== CONT TestAccAWSAppsyncGraphqlApi_schema
--- PASS: TestAccAWSAppsyncGraphqlApi_schema (17.15s)
PASS
ok github.com/terraform-providers/terraform-provider-aws/aws 17.168s
==> Checking that code complies with gofmt requirements...
TF_ACC=1 go test ./... -v -parallel 20 -run="AccAWSAppsyncGraphqlApi_Authentication" -timeout 120m
? github.com/terraform-providers/terraform-provider-aws [no test files]
=== RUN TestAccAWSAppsyncGraphqlApi_AuthenticationType
=== PAUSE TestAccAWSAppsyncGraphqlApi_AuthenticationType
=== RUN TestAccAWSAppsyncGraphqlApi_AuthenticationType_APIKey
=== PAUSE TestAccAWSAppsyncGraphqlApi_AuthenticationType_APIKey
=== RUN TestAccAWSAppsyncGraphqlApi_AuthenticationType_AWSIAM
=== PAUSE TestAccAWSAppsyncGraphqlApi_AuthenticationType_AWSIAM
=== RUN TestAccAWSAppsyncGraphqlApi_AuthenticationType_AmazonCognitoUserPools
=== PAUSE TestAccAWSAppsyncGraphqlApi_AuthenticationType_AmazonCognitoUserPools
=== RUN TestAccAWSAppsyncGraphqlApi_AuthenticationType_OpenIDConnect
=== PAUSE TestAccAWSAppsyncGraphqlApi_AuthenticationType_OpenIDConnect
=== CONT TestAccAWSAppsyncGraphqlApi_AuthenticationType
=== CONT TestAccAWSAppsyncGraphqlApi_AuthenticationType_OpenIDConnect
=== CONT TestAccAWSAppsyncGraphqlApi_AuthenticationType_AmazonCognitoUserPools
=== CONT TestAccAWSAppsyncGraphqlApi_AuthenticationType_AWSIAM
=== CONT TestAccAWSAppsyncGraphqlApi_AuthenticationType_APIKey
--- PASS: TestAccAWSAppsyncGraphqlApi_AuthenticationType_OpenIDConnect (6.14s)
--- PASS: TestAccAWSAppsyncGraphqlApi_AuthenticationType_APIKey (6.52s)
--- PASS: TestAccAWSAppsyncGraphqlApi_AuthenticationType_AWSIAM (7.53s)
--- PASS: TestAccAWSAppsyncGraphqlApi_AuthenticationType_AmazonCognitoUserPools (9.36s)
--- PASS: TestAccAWSAppsyncGraphqlApi_AuthenticationType (10.59s)
PASS
ok github.com/terraform-providers/terraform-provider-aws/aws 10.621s
==> Checking that code complies with gofmt requirements...
TF_ACC=1 go test ./... -v -parallel 20 -run="AccAWSAppsyncGraphqlApi_LogConfig" -timeout 120m
? github.com/terraform-providers/terraform-provider-aws [no test files]
=== RUN TestAccAWSAppsyncGraphqlApi_LogConfig
=== PAUSE TestAccAWSAppsyncGraphqlApi_LogConfig
=== RUN TestAccAWSAppsyncGraphqlApi_LogConfig_FieldLogLevel
=== PAUSE TestAccAWSAppsyncGraphqlApi_LogConfig_FieldLogLevel
=== CONT TestAccAWSAppsyncGraphqlApi_LogConfig
=== CONT TestAccAWSAppsyncGraphqlApi_LogConfig_FieldLogLevel
--- PASS: TestAccAWSAppsyncGraphqlApi_LogConfig (6.91s)
--- PASS: TestAccAWSAppsyncGraphqlApi_LogConfig_FieldLogLevel (16.96s)
PASS
ok github.com/terraform-providers/terraform-provider-aws/aws 16.982s
==> Checking that code complies with gofmt requirements...
TF_ACC=1 go test ./... -v -parallel 20 -run="AccAWSAppsyncGraphqlApi_OpenIDConnectConfig" -timeout 120m
? github.com/terraform-providers/terraform-provider-aws [no test files]
=== RUN TestAccAWSAppsyncGraphqlApi_OpenIDConnectConfig_AuthTTL
=== PAUSE TestAccAWSAppsyncGraphqlApi_OpenIDConnectConfig_AuthTTL
=== RUN TestAccAWSAppsyncGraphqlApi_OpenIDConnectConfig_ClientID
=== PAUSE TestAccAWSAppsyncGraphqlApi_OpenIDConnectConfig_ClientID
=== RUN TestAccAWSAppsyncGraphqlApi_OpenIDConnectConfig_IatTTL
=== PAUSE TestAccAWSAppsyncGraphqlApi_OpenIDConnectConfig_IatTTL
=== RUN TestAccAWSAppsyncGraphqlApi_OpenIDConnectConfig_Issuer
=== PAUSE TestAccAWSAppsyncGraphqlApi_OpenIDConnectConfig_Issuer
=== CONT TestAccAWSAppsyncGraphqlApi_OpenIDConnectConfig_AuthTTL
=== CONT TestAccAWSAppsyncGraphqlApi_OpenIDConnectConfig_Issuer
=== CONT TestAccAWSAppsyncGraphqlApi_OpenIDConnectConfig_IatTTL
=== CONT TestAccAWSAppsyncGraphqlApi_OpenIDConnectConfig_ClientID
--- PASS: TestAccAWSAppsyncGraphqlApi_OpenIDConnectConfig_IatTTL (9.96s)
--- PASS: TestAccAWSAppsyncGraphqlApi_OpenIDConnectConfig_Issuer (9.97s)
--- PASS: TestAccAWSAppsyncGraphqlApi_OpenIDConnectConfig_ClientID (10.00s)
--- PASS: TestAccAWSAppsyncGraphqlApi_OpenIDConnectConfig_AuthTTL (10.02s)
PASS
ok github.com/terraform-providers/terraform-provider-aws/aws 10.038s
==> Checking that code complies with gofmt requirements...
TF_ACC=1 go test ./... -v -parallel 20 -run="AccAWSAppsyncGraphqlApi_Name" -timeout 120m
? github.com/terraform-providers/terraform-provider-aws [no test files]
=== RUN TestAccAWSAppsyncGraphqlApi_Name
=== PAUSE TestAccAWSAppsyncGraphqlApi_Name
=== CONT TestAccAWSAppsyncGraphqlApi_Name
--- PASS: TestAccAWSAppsyncGraphqlApi_Name (9.17s)
PASS
ok github.com/terraform-providers/terraform-provider-aws/aws 9.189s
==> Checking that code complies with gofmt requirements...
TF_ACC=1 go test ./... -v -parallel 20 -run="AccAWSAppsyncGraphqlApi_UserPoolConfig" -timeout 120m
? github.com/terraform-providers/terraform-provider-aws [no test files]
=== RUN TestAccAWSAppsyncGraphqlApi_UserPoolConfig_AwsRegion
=== PAUSE TestAccAWSAppsyncGraphqlApi_UserPoolConfig_AwsRegion
=== RUN TestAccAWSAppsyncGraphqlApi_UserPoolConfig_DefaultAction
=== PAUSE TestAccAWSAppsyncGraphqlApi_UserPoolConfig_DefaultAction
=== CONT TestAccAWSAppsyncGraphqlApi_UserPoolConfig_AwsRegion
=== CONT TestAccAWSAppsyncGraphqlApi_UserPoolConfig_DefaultAction
--- PASS: TestAccAWSAppsyncGraphqlApi_UserPoolConfig_AwsRegion (11.78s)
--- PASS: TestAccAWSAppsyncGraphqlApi_UserPoolConfig_DefaultAction (13.11s)
PASS
ok github.com/terraform-providers/terraform-provider-aws/aws 13.129s

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.

Thanks so much @beauknowssoftware for the updates. 🚀 I left some minor feedback items below -- some of which are being addressed on merge in a followup commit and others in the followup #6451 pull request which builds on this work here. Thanks again.

Output from acceptance testing:

--- PASS: TestAccAWSAppsyncGraphqlApi_AuthenticationType_AWSIAM (11.52s)
--- PASS: TestAccAWSAppsyncGraphqlApi_AuthenticationType_APIKey (11.59s)
--- PASS: TestAccAWSAppsyncGraphqlApi_basic (12.23s)
--- PASS: TestAccAWSAppsyncGraphqlApi_AuthenticationType_OpenIDConnect (12.81s)
--- PASS: TestAccAWSAppsyncGraphqlApi_AuthenticationType_AmazonCognitoUserPools (13.28s)
--- PASS: TestAccAWSAppsyncGraphqlApi_LogConfig (13.38s)
--- PASS: TestAccAWSAppsyncGraphqlApi_OpenIDConnectConfig_IatTTL (15.68s)
--- PASS: TestAccAWSAppsyncGraphqlApi_OpenIDConnectConfig_Issuer (17.19s)
--- PASS: TestAccAWSAppsyncGraphqlApi_OpenIDConnectConfig_ClientID (17.31s)
--- PASS: TestAccAWSAppsyncGraphqlApi_UserPoolConfig_DefaultAction (19.40s)
--- PASS: TestAccAWSAppsyncGraphqlApi_UserPoolConfig_AwsRegion (19.53s)
--- PASS: TestAccAWSAppsyncGraphqlApi_schema (22.54s)
--- PASS: TestAccAWSAppsyncGraphqlApi_LogConfig_FieldLogLevel (22.98s)
--- PASS: TestAccAWSAppsyncGraphqlApi_Name (23.53s)
--- PASS: TestAccAWSAppsyncGraphqlApi_OpenIDConnectConfig_AuthTTL (25.50s)
--- PASS: TestAccAWSAppsyncGraphqlApi_AuthenticationType (27.44s)

@@ -159,6 +165,11 @@ func resourceAwsAppsyncGraphqlApiCreate(d *schema.ResourceData, meta interface{}
return err
}

err = resourceAwsAppsyncSchemaPut(*resp.GraphqlApi.ApiId, d, meta)
Copy link
Contributor

Choose a reason for hiding this comment

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

This handling should be removed below the d.SetId() call so Terraform does not lose track of the AppSync GraphQL API resource if this errors.

@@ -159,6 +165,11 @@ func resourceAwsAppsyncGraphqlApiCreate(d *schema.ResourceData, meta interface{}
return err
}

err = resourceAwsAppsyncSchemaPut(*resp.GraphqlApi.ApiId, d, meta)
if err != nil {
return err
Copy link
Contributor

Choose a reason for hiding this comment

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

We should return error context here for operators and code maintainers:

Suggested change
return err
return fmt.Errorf("error creating AppSync GraphQL API (%s) Schema: %s", d.Id(), err)

@@ -230,6 +241,11 @@ func resourceAwsAppsyncGraphqlApiUpdate(d *schema.ResourceData, meta interface{}
return err
}

err = resourceAwsAppsyncSchemaPut(d.Id(), d, meta)
if err != nil {
return err
Copy link
Contributor

Choose a reason for hiding this comment

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

We should return error context here for operators and code maintainers:

Suggested change
return err
return fmt.Errorf("error updating AppSync GraphQL API (%s) Schema: %s", d.Id(), err)

}

activeSchemaConfig := &resource.StateChangeConf{
Pending: []string{"PROCESSING"},
Copy link
Contributor

Choose a reason for hiding this comment

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

Nit: We should use the AWS Go SDK provided constants here and below, e.g.

Suggested change
Pending: []string{"PROCESSING"},
Pending: []string{appsync.SchemaStatusProcessing},

PreCheck: func() { testAccPreCheck(t) },
Providers: testAccProviders,
CheckDestroy: testAccCheckAwsAppsyncGraphqlApiDestroy,
Steps: []resource.TestStep{
Copy link
Contributor

Choose a reason for hiding this comment

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

Since the new attribute is not marked ForceNew: true an additional TestStep should be included to ensure updates occur correctly.

@@ -104,6 +120,7 @@ The following arguments are supported:
* `log_config` - (Optional) Nested argument containing logging configuration. Defined below.
* `openid_connect_config` - (Optional) Nested argument containing OpenID Connect configuration. Defined below.
* `user_pool_config` - (Optional) The Amazon Cognito User Pool configuration. Defined below.
* `schema` - (Required) The schema definition, in GraphQL schema language format
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
* `schema` - (Required) The schema definition, in GraphQL schema language format
* `schema` - (Optional) The schema definition, in GraphQL schema language format. Terraform cannot perform drift detection of this configuration.

@bflad bflad merged commit cf3a3b1 into hashicorp:master Mar 26, 2019
bflad added a commit that referenced this pull request Mar 26, 2019
Output from acceptance testing:

```
--- PASS: TestAccAWSAppsyncGraphqlApi_AuthenticationType_AWSIAM (11.52s)
--- PASS: TestAccAWSAppsyncGraphqlApi_AuthenticationType_APIKey (11.59s)
--- PASS: TestAccAWSAppsyncGraphqlApi_basic (12.23s)
--- PASS: TestAccAWSAppsyncGraphqlApi_AuthenticationType_OpenIDConnect (12.81s)
--- PASS: TestAccAWSAppsyncGraphqlApi_AuthenticationType_AmazonCognitoUserPools (13.28s)
--- PASS: TestAccAWSAppsyncGraphqlApi_LogConfig (13.38s)
--- PASS: TestAccAWSAppsyncGraphqlApi_OpenIDConnectConfig_IatTTL (15.68s)
--- PASS: TestAccAWSAppsyncGraphqlApi_OpenIDConnectConfig_Issuer (17.19s)
--- PASS: TestAccAWSAppsyncGraphqlApi_OpenIDConnectConfig_ClientID (17.31s)
--- PASS: TestAccAWSAppsyncGraphqlApi_UserPoolConfig_DefaultAction (19.40s)
--- PASS: TestAccAWSAppsyncGraphqlApi_UserPoolConfig_AwsRegion (19.53s)
--- PASS: TestAccAWSAppsyncGraphqlApi_schema (22.54s)
--- PASS: TestAccAWSAppsyncGraphqlApi_LogConfig_FieldLogLevel (22.98s)
--- PASS: TestAccAWSAppsyncGraphqlApi_Name (23.53s)
--- PASS: TestAccAWSAppsyncGraphqlApi_OpenIDConnectConfig_AuthTTL (25.50s)
--- PASS: TestAccAWSAppsyncGraphqlApi_AuthenticationType (27.44s)
```
bflad added a commit that referenced this pull request Mar 26, 2019
@bflad
Copy link
Contributor

bflad commented Mar 29, 2019

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

@ghost
Copy link

ghost commented Mar 30, 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 Mar 30, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
documentation Introduces or discusses updates to documentation. new-resource Introduces a new resource. provider Pertains to the provider itself, rather than any interaction with AWS. service/appsync Issues and PRs that pertain to the appsync service. size/M 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.

None yet