Cloud-native guardrails for Terraform, Kubernetes, and serverless deployments.
Project description
CloudOps Guard
Cloud-native guardrails for Terraform, Kubernetes, and serverless deployments.
CloudOps Guard scans infrastructure-as-code before deployment and reports risky architecture patterns such as public storage, missing encryption, permissive IAM, missing health checks, public Kubernetes services, weak Lambda settings, missing retry/dead-letter queues, and missing ownership or cost tags.
Install
pip install cloudops-guard
CLI
cloudops-guard scan .
cloudops-guard scan infra/ --format json --output risk-report.json
cloudops-guard scan . --fail-on high
cloudops-guard list-checks
Exit codes:
0: no findings at or above--fail-on1: findings matched the failure threshold2: CLI usage or scanning error
Python API
from cloudops_guard import scan_path
report = scan_path("infra")
for finding in report.findings:
print(finding.severity, finding.check_id, finding.message)
Covered Risks
- Terraform AWS S3 buckets: public ACLs/policies, missing encryption, missing public-access block, missing ownership/cost tags
- Terraform IAM policies and role policies: wildcard actions/resources and administrative permissions
- Terraform Lambda functions: timeout and memory risk, missing DLQ, missing tags
- Terraform autoscaling resources: missing min/max or unhealthy capacity settings
- Kubernetes Services: public
LoadBalancer/NodePort - Kubernetes workloads: missing readiness/liveness probes, missing resource limits, missing labels
- Kubernetes HPAs: missing or ineffective min/max replica bounds
- Serverless Framework functions: timeout/memory risk, missing DLQ, missing tags
The Terraform parser is intentionally dependency-light and supports common .tf block structures. JSON Terraform plans/config files and YAML Kubernetes/serverless files are parsed with structured parsers.
Report Formats
table: human-readable terminal outputjson: machine-readable reportmarkdown: CI artifact or review commentsarif: GitHub code scanning compatible output
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file cloudops_guard-0.1.0.tar.gz.
File metadata
- Download URL: cloudops_guard-0.1.0.tar.gz
- Upload date:
- Size: 13.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b164c6e499f2ea0c3d223017bce68e20701746f634964b0181ecb3100d7230cb
|
|
| MD5 |
a22e42eb5350e381eb0d111fa940b213
|
|
| BLAKE2b-256 |
5326b1e7265f069b494fb4cdf8eb0c74a7f9a465b484b6be0fbf4d54b088e597
|
File details
Details for the file cloudops_guard-0.1.0-py3-none-any.whl.
File metadata
- Download URL: cloudops_guard-0.1.0-py3-none-any.whl
- Upload date:
- Size: 16.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8b693af7957d9f447e89a1931a1120fed206dbe391d4689b5852025f7086cca5
|
|
| MD5 |
78fba4139708999fb275b52c17e6c69a
|
|
| BLAKE2b-256 |
c2fa9039638f61631793dce9471d9aef07ab439082c372e3850bded32bc10051
|