assume-cloudformation-rolelisted
Install: claude install-skill aiskillstore/marketplace
# Assume CloudFormation Write Role
A skill to obtain the necessary credentials for AWS CloudFormation stack operations (create, delete, update) and set them as environment variables.
## Purpose
Before CloudFormation operations, assume the specified role to obtain temporary credentials and set them as environment variables that can be used by AWS CLI.
## Input Parameters
- `profile`: AWS CLI profile name (default: `web-hosting`)
- `role_arn`: IAM role ARN to assume (default: `arn:aws:iam::692859919890:role/CloudFormationWriteRole`)
- `role_session_name`: Session name (default: `cfn-write`)
## Execution Steps
1. Use AWS STS to assume the role and obtain credentials
2. Save credentials to a temporary file
3. Parse credentials using jq and set as environment variables
4. Clean up the temporary file
## Command Example
```bash
# Assume role and obtain credentials
aws sts assume-role \
--role-arn arn:aws:iam::692859919890:role/CloudFormationWriteRole \
--role-session-name cfn-write \
--profile web-hosting \
> /tmp/creds.json
# Set environment variables
export AWS_ACCESS_KEY_ID=$(jq -r '.Credentials.AccessKeyId' /tmp/creds.json)
export AWS_SECRET_ACCESS_KEY=$(jq -r '.Credentials.SecretAccessKey' /tmp/creds.json)
export AWS_SESSION_TOKEN=$(jq -r '.Credentials.SessionToken' /tmp/creds.json)
# Remove temporary file
rm /tmp/creds.json
```
## Output
Environment variables are set, making CloudFormation operations available via AWS CLI:
- `AWS_ACCESS_KEY_ID`
- `AWS_SECR