{"action":"opened","issue":{"url":"https://api.github.com/repos/terraform-providers/terraform-provider-aws/issues/4828","repository_url":"https://api.github.com/repos/terraform-providers/terraform-provider-aws","labels_url":"https://api.github.com/repos/terraform-providers/terraform-provider-aws/issues/4828/labels{/name}","comments_url":"https://api.github.com/repos/terraform-providers/terraform-provider-aws/issues/4828/comments","events_url":"https://api.github.com/repos/terraform-providers/terraform-provider-aws/issues/4828/events","html_url":"https://github.com/terraform-providers/terraform-provider-aws/issues/4828","id":332042519,"node_id":"MDU6SXNzdWUzMzIwNDI1MTk=","number":4828,"title":"Fully Expand Elasticache Cluster and Replication Group Resource Schemas","user":{"login":"bflad","id":189114,"node_id":"MDQ6VXNlcjE4OTExNA==","avatar_url":"https://avatars3.githubusercontent.com/u/189114?v=4","gravatar_id":"","url":"https://api.github.com/users/bflad","html_url":"https://github.com/bflad","followers_url":"https://api.github.com/users/bflad/followers","following_url":"https://api.github.com/users/bflad/following{/other_user}","gists_url":"https://api.github.com/users/bflad/gists{/gist_id}","starred_url":"https://api.github.com/users/bflad/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bflad/subscriptions","organizations_url":"https://api.github.com/users/bflad/orgs","repos_url":"https://api.github.com/users/bflad/repos","events_url":"https://api.github.com/users/bflad/events{/privacy}","received_events_url":"https://api.github.com/users/bflad/received_events","type":"User","site_admin":false},"labels":[{"id":801971625,"node_id":"MDU6TGFiZWw4MDE5NzE2MjU=","url":"https://api.github.com/repos/terraform-providers/terraform-provider-aws/labels/service/elasticache","name":"service/elasticache","color":"bfd4f2","default":false},{"id":810203048,"node_id":"MDU6TGFiZWw4MTAyMDMwNDg=","url":"https://api.github.com/repos/terraform-providers/terraform-provider-aws/labels/technical-debt","name":"technical-debt","color":"1d76db","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2018-06-13T15:16:51Z","updated_at":"2018-06-13T15:16:51Z","closed_at":null,"author_association":"CONTRIBUTOR","body":"Currently the `aws_elasticache_cluster` and `aws_elasticache_replication_group` resource schemas are generated by functions:\r\n\r\nhttps://github.com/terraform-providers/terraform-provider-aws/blob/7a46d54b4fe593735db4daa118fe30353a0cdd62/aws/resource_aws_elasticache_cluster.go#L21-L243\r\n\r\nhttps://github.com/terraform-providers/terraform-provider-aws/blob/7a46d54b4fe593735db4daa118fe30353a0cdd62/aws/resource_aws_elasticache_replication_group.go#L16-L132\r\n\r\nThe result is a complicated structure to create a working mental model of what the schema actually is for each attribute, especially when there are bits like this mixed in:\r\n\r\n```go\r\nresourceSchema[\"engine\"].Computed = true\r\n```\r\n\r\nLet's just expand each of the resource schemas so no mental gymnastics are required. Tangentially this would also help make the schema more lint-able without runtime handling."}}
{"actor":{"display_login":"bflad"}}