Claude-skill-registry devops-platform-patterns
Platform-specific IaC checklists for DigitalOcean, Hetzner, AWS, and Cloudflare.
install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/devops-platform-patterns" ~/.claude/skills/majiayu000-claude-skill-registry-devops-platform-patterns && rm -rf "$T"
manifest:
skills/data/devops-platform-patterns/SKILL.mdsource content
DevOps Platform Patterns
Platform-specific verification checklists for infrastructure code.
DigitalOcean
| Check | Pass | Fail |
|---|---|---|
| VPC used for private networking | Private network configured | Public networking only |
| Reserved IPs for production | Static IPs assigned | Ephemeral IPs for critical services |
| Managed database in same region | Co-located DB | Cross-region latency |
| Spaces for state backend | Remote state in Spaces | Local state only |
| Firewall attached to all droplets | Firewall rules applied | No firewall |
Best Practices:
- Use
for internal communicationdigitalocean_vpc - Attach firewalls via
with inbound rulesdigitalocean_firewall - Store Terraform state in DigitalOcean Spaces with versioning
Hetzner
| Check | Pass | Fail |
|---|---|---|
| Private network configured | Network created | No private networking |
| Firewall rules defined | Rules restrict access | Open to internet |
| SSH keys managed via resource | used | Keys in user_data only |
| Placement groups for HA | Servers distributed | Single point of failure |
Best Practices:
- Use
+hcloud_network
for internal traffichcloud_network_subnet - Apply
to all servershcloud_firewall - Use placement groups with
type for critical workloadsspread
AWS
| Check | Pass | Fail |
|---|---|---|
| VPC with private subnets | Multi-AZ VPC | Default VPC usage |
| Security groups least-privilege | Specific ports/IPs | 0.0.0.0/0 ingress |
| IAM roles over access keys | Instance profiles | Hardcoded credentials |
| KMS encryption for data | Customer-managed keys | No encryption |
| CloudTrail enabled | Audit logging on | No audit trail |
Best Practices:
- Never use default VPC for production
- Prefer
with instance profiles over access keysaws_iam_role - Enable S3 bucket versioning and encryption by default
- Use
for sensitive data encryptionaws_kms_key
Cloudflare
| Check | Pass | Fail |
|---|---|---|
| API tokens over global key | Scoped tokens | Global API key |
| WAF rules configured | Protection enabled | No WAF |
| SSL mode is strict | Full (strict) mode | Flexible SSL |
| Rate limiting on endpoints | Rules applied | No rate limiting |
Best Practices:
- Create scoped API tokens per environment/purpose
- Set SSL mode to
for origin protectionstrict - Apply rate limiting to authentication endpoints
- Enable Bot Management if available
Cross-Platform Checks
| Check | Applies To | Verification |
|---|---|---|
| Private networking | All | Internal services not exposed |
| Firewall/security groups | All | Explicit allow rules only |
| State backend remote | All | Not in local tfstate |
| Encryption at rest | All | Data encrypted |
| Audit logging | AWS, Cloudflare | Activity tracked |