aws-cloudformation / aws-cloudformation/cloudformation-coverage-roadmap
AWS CloudFormation IAM::Role type schema description for `AssumeRolePolicyDocument` field doesn't match Website documentation
- Dominant language
- No language data
- Stars
- 1.1k
- Forks
- 62
- PR merge metrics
- No merged PRs in 30d
Description
### Name of the resource
AWS::IAM::Role
### Resource name
_No response_
### Reference Link
https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html
### Details
## Current Behavior
Notice how the description for `AssumeRolePolicyDocument` on the website is helping me as an author to know what value to put in
```
AssumeRolePolicyDocument
The trust policy that is associated with this role. Trust policies define which entities can assume the role. You can associate only one trust policy with a role. For an example of a policy that can be used to assume a role, see [Template Examples](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#aws-resource-iam-role--examples). For more information about the elements that you can use in an IAM policy, see [IAM Policy Elements Reference](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html) in the IAM User Guide.
Required: Yes
Type: Json
Update requires: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)
```
In contrast to the description from CloudFormation API which is very laconic and not specific as to what value to specify
```bash
aws cloudformation describe-type --type RESOURCE --type-name AWS::IAM::Role --output json | jq '.Schema | fromjson | .properties.AssumeRolePolicyDocument'
{
"description": "The trust policy that is associated with this role.",
"type": [
"object",
"string"
]
}
```
## Desired Behavior
Have the description in the cloud formation `Schema` match the value on the website.
The desired value:
```
The trust policy that is associated with this role. Trust policies define which entities can assume the role. You can associate only one trust policy with a role. For an example of a policy that can be used to assume a role, see [Template Examples](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#aws-resource-iam-role--examples). For more information about the elements that you can use in an IAM policy, see [IAM Policy Elements Reference](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html) in the IAM User Guide.
```
Contributor guide
Research direction
Start by comparing the AWS::IAM::Role documentation at the linked CloudFormation User Guide page with the schema returned by `aws cloudformation describe-type`. Confirm the `AssumeRolePolicyDocument` descriptions differ, then determine where the CloudFormation resource schema is maintained; done means the schema exposes the full website description.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- aws
- Domain
- cloud, documentation
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Clearly specified
- Newbie friendliness
- 35/100