Skip to content

Commit 480fce6

Browse files
authored
Merge branch 'main' into enhance-deploy-on-aws
2 parents 3bc2527 + c24660d commit 480fce6

6 files changed

Lines changed: 82 additions & 10 deletions

File tree

.claude-plugin/marketplace.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"metadata": {
33
"description": "Agent Plugins for AWS equip AI coding agents with the skills to help you architect, deploy, and operate on AWS.",
4-
"version": "1.0.0"
4+
"version": "1.1.0"
55
},
66
"name": "agent-plugins-for-aws",
77
"owner": {

docs/TROUBLESHOOTING.md

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -178,6 +178,40 @@ If issues persist:
178178
- Include your collected information
179179
- Describe steps to reproduce the issue
180180

181+
## CI / GitHub Actions
182+
183+
### Re-running Failed Jobs
184+
185+
GitHub Actions workflows can occasionally fail due to intermittent issues (network timeouts, flaky upstream services, etc.). If you believe a failure is not related to your changes:
186+
187+
#### Via the GitHub UI
188+
189+
1. Open the failed check from your pull request's **Checks** tab.
190+
2. Click **Re-run failed jobs**.
191+
192+
See [Re-running workflows and jobs](https://docs.github.com/en/actions/managing-workflow-runs/re-running-workflows-and-jobs) for details.
193+
194+
#### Via the `gh` CLI
195+
196+
See [Re-run failed jobs from a workflow run](https://docs.github.com/en/rest/actions/workflow-runs?apiVersion=2022-11-28#re-run-failed-jobs-from-a-workflow-run).
197+
198+
```sh
199+
RUN_ID=0
200+
201+
gh api \
202+
--method POST \
203+
-H "Accept: application/vnd.github+json" \
204+
-H "X-GitHub-Api-Version: 2022-11-28" \
205+
/repos/awslabs/agent-plugins/actions/runs/${RUN_ID:-0}/rerun-failed-jobs
206+
```
207+
208+
Replace `RUN_ID` with the workflow run ID from your pull request's **Checks** tab or from `gh run list --branch <your-branch>`.
209+
210+
#### Required Permissions
211+
212+
- **Repository collaborators** (write access) can re-run workflows directly.
213+
- **Fork contributors** cannot re-run workflows on the upstream repo. Ask a maintainer to re-run the failed jobs, or push an empty commit (`git commit --allow-empty -m "retry CI"`) to trigger a fresh run.
214+
181215
## Other AI Assistants
182216

183217
Support for additional AI assistants will be added here as the plugin system expands.

mise.toml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ min_version = "2026.2.4"
77
node = "24"
88
"npm:markdownlint-cli2" = "0.17"
99
"npm:ajv-cli" = "5"
10+
"npm:dprint" = "0.51"
1011
"pipx:pre-commit" = "4"
1112
"pipx:bandit[sarif]" = "1"
1213
"pipx:checkov" = "3"
@@ -30,11 +31,11 @@ run = [
3031

3132
[tasks.fmt]
3233
description = "Format all files"
33-
run = "npx dprint fmt"
34+
run = "dprint fmt"
3435

3536
[tasks."fmt:check"]
3637
description = "Check formatting (CI)"
37-
run = "npx dprint check"
38+
run = "dprint check"
3839

3940
[tasks."lint:md"]
4041
description = "Lint Markdown files (includes SKILL.md validation)"

plugins/deploy-on-aws/skills/deploy/references/cost-estimation.md

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ Use the **awspricing** MCP server to get accurate cost estimates before generati
1717
| Aurora PostgreSQL | `AmazonRDS` | Filter: `databaseEngine` = "Aurora PostgreSQL" |
1818
| Aurora MySQL | `AmazonRDS` | Filter: `databaseEngine` = "Aurora MySQL" |
1919
| RDS PostgreSQL | `AmazonRDS` | Filter: `databaseEngine` = "PostgreSQL" |
20+
| DocumentDB | `AmazonDocDB` | MongoDB-compatible managed database |
2021
| ALB | `AWSELB` | Application Load Balancer |
2122
| S3 | `AmazonS3` | Storage and requests |
2223
| CloudFront | `AmazonCloudFront` | CDN distribution |
@@ -53,13 +54,34 @@ Aurora Serverless v2 charges per ACU-hour (Aurora Capacity Unit).
5354

5455
- ~$180-360/month depending on load
5556

57+
## DocumentDB Serverless Pricing
58+
59+
DocumentDB Serverless charges per DCU-hour (DocumentDB Capacity Unit),
60+
storage (GB-month), and I/O (standard config only).
61+
62+
- Minimum: 0.5 DCU
63+
- 1 DCU ≈ 2 GiB memory
64+
65+
**Dev estimate (0.5-2 DCU range, 10GB storage):**
66+
67+
- ~$35-120/month depending on usage patterns (scales to 0.5 DCU when idle)
68+
69+
**Production estimate (2-8 DCU range, 100GB storage, multi-AZ):**
70+
71+
- ~$130-400/month depending on load
72+
5673
## Quick Reference Estimates
5774

5875
**Small web app (Fargate + Aurora Serverless v2 + ALB):**
5976

6077
- Dev: ~$70-100/month
6178
- Production: ~$200-400/month
6279

80+
**Small web app (Fargate + DocumentDB Serverless + ALB):**
81+
82+
- Dev: ~$70-155/month
83+
- Production: ~$200-450/month
84+
6385
**Static site / SPA (Amplify Hosting):**
6486

6587
- Low traffic: ~$0-5/month (free tier covers most small sites)

plugins/deploy-on-aws/skills/deploy/references/defaults.md

Lines changed: 17 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -30,20 +30,30 @@ Use `amplify_docs` topic in awsknowledge MCP for framework-specific guidance
3030

3131
## Database
3232

33-
| Data Pattern | Default (Dev) | Default (Prod) | Override Trigger |
34-
| ----------------- | ---------------------- | ---------------------- | ------------------ |
35-
| PostgreSQL | Aurora Serverless v2 | Aurora Serverless v2 | "simple RDS" → RDS |
36-
| MySQL | Aurora Serverless v2 | Aurora Serverless v2 | "simple RDS" → RDS |
37-
| NoSQL / Key-Value | DynamoDB | DynamoDB | - |
38-
| Redis / Caching | ElastiCache Serverless | ElastiCache Serverless | - |
39-
| Full-text search | OpenSearch Serverless | OpenSearch Serverless | - |
33+
| Data Pattern | Default (Dev) | Default (Prod) | Override Trigger |
34+
| -------------------- | ---------------------- | ---------------------- | -------------------------------------- |
35+
| PostgreSQL | Aurora Serverless v2 | Aurora Serverless v2 | "simple RDS" → RDS |
36+
| MySQL | Aurora Serverless v2 | Aurora Serverless v2 | "simple RDS" → RDS |
37+
| DocumentDB / MongoDB | DocumentDB Serverless | DocumentDB Serverless | "provisioned" → DocumentDB provisioned |
38+
| NoSQL / Key-Value | DynamoDB | DynamoDB | - |
39+
| Redis / Caching | ElastiCache Serverless | ElastiCache Serverless | - |
40+
| Full-text search | OpenSearch Serverless | OpenSearch Serverless | - |
4041

4142
### Why Aurora Serverless v2
4243

4344
Scales to near-zero in dev (0.5 ACU minimum), scales up automatically for production.
4445
Single choice works for both environments. Only use provisioned RDS if user has
4546
specific cost constraints or compliance requirements.
4647

48+
### Why DocumentDB Serverless for MongoDB
49+
50+
DocumentDB Serverless is the on-demand, auto-scaling configuration of Amazon DocumentDB.
51+
It dynamically adjusts capacity based on application demand so you only pay for what you
52+
use. Ideal for dev/test, variable workloads, and new applications where capacity needs
53+
are unknown. Compatible with MongoDB 3.6, 4.0, 5.0 and 8.0 APIs.
54+
Use provisioned DocumentDB only when you have predictable, steady-state workloads
55+
or specific compliance requirements that need fixed instance sizing.
56+
4757
## Storage
4858

4959
| Pattern | Default |

plugins/deploy-on-aws/skills/deploy/references/security.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ Apply these patterns automatically when generating IaC:
2525
| --------------- | --------------------------- | -------------------------- | ---------------- |
2626
| S3 buckets | SSE-S3 (AES-256) | SSE-KMS (customer-managed) | "no encryption" |
2727
| RDS/Aurora | Encrypted (AWS-managed key) | Encrypted (CMK) | - |
28+
| DocumentDB | Encrypted (AWS-managed key) | Encrypted (CMK) | - |
2829
| EBS volumes | Encrypted | Encrypted | - |
2930
| ALB | TLS 1.2+ only | TLS 1.2+ only | - |
3031
| Secrets Manager | AWS-managed key | CMK | - |
@@ -60,6 +61,7 @@ When serving static content via CloudFront:
6061
| Fargate tasks | Private subnet + NAT Gateway | Private subnet + NAT Gateway |
6162
| ALB | Public subnet | Public subnet |
6263
| RDS/Aurora | Private subnet (no public IP) | Private subnet (no public IP) |
64+
| DocumentDB | Private subnet (no public IP) | Private subnet (no public IP) |
6365
| Lambda | VPC-attached if DB access needed | VPC-attached if DB access needed |
6466

6567
### Why private subnets for compute
@@ -96,6 +98,7 @@ Consult `awsiac` MCP for IAM policy patterns by service.
9698
| ALB | 443 from 0.0.0.0/0 | Fargate SG only |
9799
| Fargate | ALB SG only (on app port) | 443 (HTTPS), DB SG |
98100
| RDS/Aurora | Fargate SG only (on DB port) | None |
101+
| DocumentDB | Fargate SG only (port 27017) | None |
99102
| Lambda (VPC) | None | 443, DB SG |
100103

101104
### Why deny-by-default
@@ -160,6 +163,7 @@ Before deployment, run available checks:
160163
| ALB Access Logs | Disabled | Enabled (S3 destination) |
161164
| Container logs | CloudWatch Logs | CloudWatch Logs |
162165
| RDS/Aurora logs | Error log only | Error + slow query + audit |
166+
| DocumentDB logs | Profiler (slow ops) | Profiler + audit |
163167
| S3 Access Logs | Disabled | Enabled |
164168

165169
### Why minimal logging in dev
@@ -176,6 +180,7 @@ When user requests "production" or "prod", additionally enable:
176180
- [ ] ALB Access Logs
177181
- [ ] S3 Access Logs
178182
- [ ] RDS Performance Insights
183+
- [ ] DocumentDB profiler + audit logs exported to CloudWatch Logs
179184
- [ ] AWS WAF on ALB (if public-facing web app)
180185
- [ ] GuardDuty (recommend, don't auto-enable)
181186
- [ ] Run `checkov` or `cfn-nag` before deployment

0 commit comments

Comments
 (0)