30 open-source projects similar to hashicorp/terraform, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Terraform alternative.
Pulumi is an infrastructure-as-code framework that enables the definition, deployment, and management of cloud resources using general-purpose programming languages. It functions as a cloud resource orchestrator that coordinates the lifecycle of heterogeneous infrastructure by executing code to construct dependency graphs and reconciling the desired state against actual cloud environments. The platform distinguishes itself through a language-host runtime bridge that allows developers to use standard programming languages to define infrastructure, rather than relying solely on domain-specific
The Terraform Cloud Development Kit is an infrastructure as code framework that allows cloud resources to be defined using general-purpose programming languages. It functions as a configuration synthesizer, translating high-level programming logic and provider schemas into JSON configuration files that are executed by the Terraform engine to provision infrastructure. The framework provides a multi-language infrastructure library with the ability to automatically generate language-specific classes from provider schemas. It enables the creation of reusable constructs, allowing complex resource
Infracost is an infrastructure-as-code financial governance platform that calculates the cost impact of cloud resource changes. By performing static analysis on configuration files, the tool identifies infrastructure resources and their properties to estimate spending changes before deployment occurs. The platform distinguishes itself by integrating directly into development workflows, providing automated cost reporting and policy validation within pull request comments. It utilizes a modular architecture to map infrastructure definitions to real-time pricing data from cloud providers, allowi
OpenTofu is a declarative infrastructure orchestrator that automates the provisioning and management of cloud resources. It functions as a platform-agnostic interface, allowing users to define their desired environment state in configuration files, which the system then reconciles against live infrastructure to calculate and execute necessary updates. The project utilizes a graph-based execution engine to determine the optimal sequence for resource operations, enabling the parallel processing of independent components to reduce deployment times. To support complex, multi-platform environments
Terragrunt is an infrastructure as code orchestrator and a thin wrapper for Terraform. It serves as a configuration manager designed to reduce code duplication and manage the execution and deployment order of infrastructure across complex cloud architectures. The tool facilitates scaling cloud deployments across multiple environments, such as development, staging, and production, while keeping configurations consistent. It focuses on organizing large-scale deployments into manageable components to avoid monolithic state files and limit the blast radius of changes. Its capabilities cover infr
Terrascan is a static analysis tool designed to evaluate infrastructure-as-code configuration files for security vulnerabilities and compliance violations. By parsing these files into an intermediate representation, it identifies risks before cloud resources are provisioned, serving as a compliance auditor for cloud-native environments. The tool functions as a policy-as-code engine, allowing users to define and enforce custom security rules and industry benchmarks using a specialized query language. It distinguishes itself through its ability to integrate directly into development and deploym
Atlantis is a GitOps deployment tool and infrastructure as code orchestrator that synchronizes cloud resources with a git repository using pull request comments. It serves as a policy-based infrastructure gate and automation system for Terraform, executing plans and applies directly from version control to coordinate deployments across multiple projects and environments. The system differentiates itself through a lock-based concurrency model that prevents simultaneous modifications to the same project or workspace. It features server-side policy validation to intercept plan outputs for compli
Helm is a package manager for Kubernetes that simplifies the deployment and management of multi-component applications. It functions as a template rendering engine and release coordinator, allowing users to bundle, version, and deploy software as standardized packages. By maintaining a persistent metadata layer within the cluster, it tracks release history and manages the full lifecycle of applications, including installations, upgrades, and rollbacks. What distinguishes Helm is its ability to handle complex application hierarchies through automated dependency resolution and the composition o
This project is an infrastructure as code tool designed to automate the lifecycle management of Amazon Web Services resources. It functions as a cloud resource provisioner that enables users to define, version, and deploy infrastructure components through declarative configuration files. The system operates by reconciling the current state of a cloud environment against a desired configuration, calculating the necessary delta operations to achieve convergence. It utilizes a directed acyclic graph to resolve resource dependencies and determine the optimal execution order for changes, ensuring
Nomad is a distributed workload orchestrator and infrastructure automation platform designed to manage the lifecycle of applications across large-scale, heterogeneous environments. It functions as a multi-cloud orchestration engine, providing a unified control plane to deploy, scale, and govern containers, virtual machines, and legacy applications. By utilizing declarative job specifications, the system ensures infrastructure convergence and maintains the desired state across distributed data centers and geographic regions. The platform distinguishes itself through a flexible, plugin-based ar
This project provides a comprehensive collection of conventions, patterns, and guidelines for structuring, securing, and maintaining scalable infrastructure code. It serves as a standardized resource for teams aiming to implement consistent infrastructure as code practices, focusing on the lifecycle management of cloud resources through modularization, documentation, and rigorous testing. The guide distinguishes itself by offering actionable strategies for complex infrastructure orchestration, including techniques for multi-environment management and secure state handling. It emphasizes the i
Meshery is a service mesh management plane and cloud native infrastructure orchestrator. It provides a visual design-as-code environment for modeling microservices and infrastructure components through declarative blueprints, functioning as a centralized platform for designing, deploying, and managing service mesh infrastructure. The platform is distinguished by its ability to translate visual designs into active deployments and its use of gRPC-based adapters to integrate with diverse infrastructure providers. It features a multi-tenant architecture that manages shared workspaces and role-bas
DNSControl is an infrastructure-as-code tool designed to manage DNS records and zones across multiple providers through a unified, programmable configuration language. By treating DNS as code, it enables teams to maintain consistent infrastructure state, automate record updates, and perform version-controlled management of network settings across diverse cloud, registrar, and network DNS services. The system functions as a multi-provider orchestrator that uses a declarative reconciliation engine to compare local configurations against live remote states. It employs a provider-agnostic abstrac
This project is a structured educational guide and curriculum for mastering infrastructure as code. It functions as a cloud provisioning guide and DevOps training material, providing a set of lessons and practical exercises for deploying and managing cloud resources through declarative configuration. The curriculum covers the development of reusable modules, the orchestration of multiple environments using workspaces, and the management of remote state files with locking mechanisms. It also includes instruction on cloud secret management to secure sensitive data. The material spans core infr
This project is a unified, cloud-native policy engine designed to decouple authorization and security logic from application codebases. It functions as a centralized authorization service that evaluates structured input data against declarative rules, enabling consistent policy enforcement across microservices, infrastructure, and continuous integration pipelines. The engine utilizes a specialized logic programming language to express complex constraints, which are compiled into an optimized intermediate representation for high-performance evaluation. By supporting both sidecar-based deployme
Meshery is a cloud native management plane used for the orchestration and administration of service meshes and Kubernetes clusters across multiple cloud providers. It provides a centralized interface to configure cloud native components and manage infrastructure through a unified abstraction layer. The platform features a visual infrastructure modeler that translates diagrams into manifests and a simulation engine for dry-running configuration changes. It synchronizes infrastructure state with version control via GitOps workflows, providing visual previews of pull request changes to evaluate
Kubernetes is a distributed container orchestration platform that automates the deployment, scaling, and management of containerized applications across clusters of computing nodes. It functions as a declarative infrastructure controller, utilizing a control loop architecture that continuously monitors the current system state against user-defined configurations to ensure desired operational outcomes. The system relies on a centralized API-driven interface and a replicated key-value store to maintain a consistent source of truth for all cluster objects. The platform distinguishes itself throu
OpenTofu / Terraform / Terragrunt / Terramate and Atmos version manager
aiac is an AI-powered command line tool designed to translate natural language requests into infrastructure code, DevOps workflows, and system scripts. It operates as a generator that uses large language models to produce cloud provisioning files, configuration files, and executable automation scripts directly from the terminal. The tool features a provider-agnostic model abstraction and a configuration-based routing system, allowing users to switch between different AI backends and discover compatible models. It includes an interactive shell interface for refining generated outputs through i
The Serverless Framework is a declarative infrastructure-as-code tool designed to automate the deployment, scaling, and lifecycle management of cloud-native applications. It provides a unified command-line interface that translates high-level configuration files into provider-specific resource templates, enabling developers to orchestrate complex architectures, event-driven functions, and cloud resources within a single project structure. What distinguishes this framework is its focus on developer experience and multi-environment parity. It supports local function invocation and event proxyin
SkyPilot is a multi-cloud AI orchestrator and distributed task scheduler designed to launch and manage AI workloads across various cloud providers, Kubernetes, and Slurm clusters. It functions as an infrastructure-as-code framework that uses declarative files to define resource requirements and setup commands for consistent execution across different environments. The project differentiates itself through automated cost optimization, selecting the most affordable GPU or TPU hardware and managing spot instances to reduce expenses. It also provides a remote development environment that bridges
Atlas is a SQL database schema management tool and database infrastructure as code framework. It provides a declarative database migration engine that computes the difference between a desired schema state and the current database state to automatically generate the necessary SQL for transitions. The project distinguishes itself through a comprehensive suite of analysis and visualization tools, including a database schema linter that detects destructive changes and data loss risks. It also features a SQL schema visualization tool capable of generating entity-relationship diagrams from extract
The AWS Cloud Development Kit is an infrastructure-as-code framework that enables developers to define and provision cloud resources using familiar programming languages. By utilizing construct-based synthesis, it translates high-level, object-oriented code into declarative templates, allowing for the automated management of complex cloud environments through a centralized, code-driven control plane. The framework distinguishes itself through its ability to model infrastructure as a dependency-aware resource graph, ensuring that components are provisioned and updated in the correct order. It
Pigsty is a full-stack orchestration suite for deploying, monitoring, and managing high-availability PostgreSQL clusters and their supporting infrastructure. It functions as a cluster management platform and high-availability suite that automates failover, manages virtual IPs, and ensures data consistency through distributed consensus. The project distinguishes itself by providing a comprehensive database infrastructure-as-code framework and a dedicated observability stack. It incorporates a backup and recovery manager supporting point-in-time recovery via S3-compatible object storage, alongs
This project is an infrastructure as code framework and library of reusable playbooks designed for server configuration and DevOps workflow automation. It provides a Linux server configuration suite and specialized tools for provisioning multi-node Kubernetes clusters to support containerized applications. The library enables the automation of infrastructure tasks and the orchestration of multi-server workflows. It includes specific logic for deploying containerized workloads and managing application environments across different hosting platforms. The codebase covers broad capability areas
Wing is a cloud infrastructure programming language and infrastructure-as-code framework that unifies cloud resource definitions and application runtime code into a single integrated programming model. It functions as a cloud resource abstraction layer, providing a standardized library for writing cloud-agnostic code that operates across multiple different infrastructure providers. The system includes a cloud application simulator that provides a local environment for testing and debugging cloud logic without requiring deployment to a live provider. It also features automatic infrastructure a
cdk8s is a Kubernetes infrastructure as code framework and manifest generator. It provides a cloud native development environment for defining system components and reusable abstractions using general purpose programming languages, which are then synthesized into standard YAML manifests. The framework uses a declarative API and object-oriented modeling to transform code into pure manifest files. These files are generated for use with any Kubernetes cluster via existing deployment tools. The project enables the creation of hierarchical resource patterns and reusable abstractions. It employs s
This project provides a collection of automated scripts for building and maintaining virtual machine images designed for continuous integration runners. It functions as a framework for infrastructure as code, enabling the generation of pre-configured environments that ensure consistent software and tool availability across automated workflows. The system utilizes declarative configuration to manage the lifecycle of virtual machine images, ensuring environment parity across cloud regions. By automating the image baking process, it allows for the creation of immutable snapshots that provide rep
cdk8s is an infrastructure as code framework and configuration tool used to define Kubernetes applications using general-purpose programming languages. It transforms high-level, object-oriented code into the standard YAML manifests required for deployment to any Kubernetes cluster. The framework focuses on the creation of reusable abstractions and hierarchical constructs. By utilizing a system of nested components, it allows for the encapsulation of complex configurations into programmable interfaces. The tool provides a workflow for programmable Kubernetes configuration, enabling the genera
Crossplane is a Kubernetes-based control plane framework that functions as a cloud resource orchestrator and infrastructure-as-code platform. It enables the management of heterogeneous infrastructure by extending the Kubernetes API to provision and maintain external cloud services through declarative configuration. By utilizing custom resource controllers, it continuously reconciles the state of external infrastructure with defined desired states, ensuring consistent deployment and lifecycle management across multiple cloud providers. The platform distinguishes itself through its composition-