forked from cloudposse/atmos
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathREADME.yaml
More file actions
139 lines (101 loc) · 9.58 KB
/
Copy pathREADME.yaml
File metadata and controls
139 lines (101 loc) · 9.58 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
name: atmos
license: APACHE2
# logo: docs/img/atmos-logo-128.svg
github_repo: cloudposse/atmos
badges:
- name: Latest Release
image: https://img.shields.io/github/release/cloudposse/atmos.svg?style=for-the-badge
url: https://github.com/cloudposse/atmos/releases/latest
- name: "Last Updated"
image: https://img.shields.io/github/last-commit/cloudposse/atmos/main?style=for-the-badge
url: https://github.com/cloudposse/atmos/commits/main/
- name: Tests
image: https://img.shields.io/github/actions/workflow/status/cloudposse/atmos/test.yml?style=for-the-badge
url: https://github.com/cloudposse/atmos/actions/workflows/test.yml
- name: Slack Community
image: https://slack.cloudposse.com/for-the-badge.svg
url: https://slack.cloudposse.com
categories:
- cli
- automation
- cloud
- devops
- workflow
- terraform
- helm
- helmfile
- kubernetes
- aws
# Screenshots
screenshots:
- name: "Demo"
description: "<br/>Example of running atmos to describe infrastructure."
url: "docs/demo.gif"
description: |-
**Run your infrastructure anywhere.**
Atmos is the open-source **runtime for infrastructure** — it builds, authenticates, and ships Terraform, OpenTofu, Kubernetes, Helm, and containers the same way on your laptop, in CI, and with AI agents. Auth, secrets, vendoring, caching, the toolchain, workflows, and CI are built in. Point every environment at the same reusable root modules and treat the rest as configuration. Stop stringing together 25 tools.
> **Run it on your laptop. Run it the same in CI. Run it with agents.**
Everything is open source and free.
> [!TIP]
> ### You can try out `atmos` directly in your browser using GitHub Codespaces
>
> [](https://github.com/codespaces/new?hide_repo_select=true&ref=main&repo=cloudposse/atmos&skip_quickstart=true)
>
> <i>Already start one? Find it [here](https://github.com/codespaces).</i>
>
introduction: |-
[Atmos](https://atmos.tools) turns sprawling cloud infrastructure into one declarative system you can run consistently — locally, in CI/CD, and through AI agents. Model your platform once as [stacks](https://atmos.tools/stacks) and [components](https://atmos.tools/components), authenticate once, and run the same commands everywhere. The same code deploys to every region, environment, and stage with [DRY configuration](https://atmos.tools/design-patterns/) — no copy-paste, no bespoke wrapper scripts, no glue.
[Cloud Posse](https://cloudposse.com/) builds and operates production infrastructure on AWS, Azure, and GCP with Atmos every day — and so do startups and enterprises managing thousands of components.
## Everything you'd otherwise bolt on
Auth, secrets, vendoring, caching, the toolchain, workflows, CI, and AI are part of the runtime — not a pile of plugins you wire together.
- [**Unified Auth:**](https://atmos.tools/cli/configuration/auth) One identity layer across AWS, Azure, and GCP — SSO, OIDC, and federation. EKS and ECR login happen automatically, and the same identity feeds Terraform, stores, and emulators.
- [**Secrets Management:**](https://atmos.tools/cli/configuration/secrets) Declare secrets per environment, source them from 10+ backends (1Password, SSM, Vault, SOPS, and more), and mask them across every channel.
- [**Vendoring:**](https://atmos.tools/cli/configuration/vendor) Pull every dependency just-in-time with version pinning and retries — no separate vendor step.
- [**Caching & Mirroring:**](https://atmos.tools/cli/configuration/ci/cache) A native build cache plus a transparent Terraform provider and module registry mirror — warm in CI, instant on your laptop.
- [**Toolchain:**](https://atmos.tools/cli/configuration/toolchain) Auto-install the exact Terraform, OpenTofu, and Helmfile versions your stacks need — verified by checksum.
- [**Workflows & Automation:**](https://atmos.tools/workflows) Orchestrate, automate, and chain anything with 25+ step types and custom commands across every component.
- [**GitOps & CI/CD:**](https://atmos.tools/ci) The same commands locally and in CI. Detect affected components, emit matrices, and catch drift.
- [**AI + MCP:**](https://atmos.tools/ai) Chat about your infrastructure, run 20+ skills, expose Atmos as an MCP server, or add `--ai` to any command.
## Run anything, the same way
- **Terraform & OpenTofu like a platform team.** Plan and apply across every component in dependency order with bounded concurrency. Backends and providers are generated for you, and drift is caught automatically.
- **Kubernetes & Helm as first-class workloads.** Model [Helmfile](https://atmos.tools/components/helmfile) and Kubernetes releases beside the rest of your stack, with the same CLI you already use for Terraform.
- **Containers and cloud emulators.** [Containers](https://atmos.tools/components/container) and dev containers are workloads too — and you can spin up [cloud emulators](https://atmos.tools/components/emulator) locally so your whole stack runs on your laptop, with no account required to iterate.
- **Bring your own.** [Packer](https://atmos.tools/components/packer), [Ansible](https://atmos.tools/components/ansible), or your own [component types](https://atmos.tools/components) plug into the same registry the built-ins use.
## Your laptop is the CI. CI is your laptop.
Same command, same auth, same secrets, same toolchain — whether you run it locally or in a pipeline. Atmos is git-aware: it detects what changed and plans or applies only the affected components, so CI does exactly the work that changed — nothing more.
## Built for your agents
Everything is declarative and self-documenting, so AI agents can reason about your infrastructure instead of stringing together 25 tools and praying. Atmos ships a catalog of portable [agent skills](https://atmos.tools/ai/agent-skills) — working across Claude Code, Cursor, Gemini, and Copilot — and an [MCP server](https://atmos.tools/ai/mcp-server) so any agent can install what it needs and drive Atmos directly, as native tools, with no custom integration.
## Extend it without forking it
- [**Custom Commands:**](https://atmos.tools/cli/configuration/commands) Wrap any script as a first-class `atmos` command with flags, args, and identity.
- [**YAML Functions:**](https://atmos.tools/functions/yaml) Resolve state, outputs, secrets, and Git metadata right inside your config.
- [**Hooks:**](https://atmos.tools/stacks/hooks) Run infracost, checkov, trivy, or any command on lifecycle events.
- [**Stores:**](https://atmos.tools/cli/configuration/stores) Plug in SSM, Secrets Manager, Key Vault, Vault, Redis, and more for cross-component data.
- [**Validation:**](https://atmos.tools/validation/validating) Enforce your own guardrails with OPA/Rego policies and JSON Schema.
- [**Templates & Data Sources:**](https://atmos.tools/templates) Pull live data into your config with Go templates and Gomplate datasources.
## Use Cases
Atmos has consistently proven its strength across the cloud infrastructure and DevOps domains:
- **Managing Large Multi-Account Cloud Environments:** Suitable for organizations using multiple cloud accounts to separate different
projects or stages of development.
- **Cross-Platform Cloud Architectures:** Ideal for businesses that need to manage configuration of services across AWS, GCP, Azure, etc., to
build a cohesive system.
- **Multi-Tenant Systems for SaaS:** Perfect for SaaS companies looking to host multiple customers within a unified infrastructure.
Define a baseline tenant configuration once, then onboard new tenants by reusing this baseline through pure configuration — no further code required.
- **Efficient Multi-Region Deployments:** Define baseline configurations with [stacks](https://atmos.tools/stacks) and extend them across regions
with DRY principles through [imports](https://atmos.tools/stacks/imports) and [inheritance](https://atmos.tools/howto/inheritance).
- **Compliant Infrastructure for Regulated Industries:** Create vetted configurations that comply with SOC2, HIPAA, HITRUST, PCI, and other
standards, then share and reuse them across the organization via [service catalogs](https://atmos.tools/howto/catalogs),
[component libraries](https://atmos.tools/components), [vendoring](https://atmos.tools/vendor), and [OPA policies](https://atmos.tools/validation/opa).
- **Empowering Teams with Self-Service Infrastructure:** Let teams manage their infrastructure independently, using predefined templates and policies.
> [!TIP]
> Don't see your use-case listed? Ask us in the [`#atmos`](https://slack.cloudposse.com) Slack channel,
> or [join us for "Office Hours"](https://cloudposse.com/office-hours/) every week.
## Telemetry
Atmos collects **anonymous telemetry** to help improve the product by understanding how it's used.
You can **opt-out** of telemetry collection in either of the following ways:
- Set `settings.telemetry.enabled: false` in your `atmos.yaml`
- Or set the environment variable: `ATMOS_TELEMETRY_ENABLED=false`
> **Note for Atmos Pro users:** If you're using [Atmos Pro](https://atmos-pro.com), your [workspace ID](https://atmos-pro.com/docs/authentication/workspace-id) will be included in telemetry events. This allows our team to provide more effective support and assist with troubleshooting as part of your subscription.
To learn more about what is collected and how it works, see the [Telemetry Documentation](https://atmos.tools/cli/telemetry).
## Documentation
Find all documentation at: [atmos.tools](https://atmos.tools)
contributors: []