Mantis Overview
Mantis is a next-generation infrastructure as code (IaC) framework designed to simplify the deployment and management of cloud-native applications.
- Mantis is a fork of OpenTofu which is a fork of Terraform.
- Mantis replaces HCL (HashiCorp Config Language) with the CUE language as the primary language interface, while maintaining 100% compatibility with Terraform/Opentofu modules and providers. Mantis also supports rendering of Kubernetes manifests (YAML) from CUE.
- Mantis leverages Terraform/OpenTofu's JSON compatibility to provide a replacement for Terraform users.
With Mantis the intent is to bring IaC tools (Terraform, Helm etc) under a single roof, reduce configuration and tooling complexity, reduce SRE and developer toil and improve developer productivity.
Why Mantis?
Infrastructure management is traditionally complicated by fragmented toolchains, inconsistent configuration languages, and error-prone manual processes. The industry is at an inflexion point, where Cloud services and Kubernetes have now become a standard across software companies of all sizes. Cloud and Kubernetes have introduced powerful abstractions to build applications at scale, however they've also introduced fair amount of configuration complexity, that makes it hard to operate efficiently at scale. With Mantis we want to challenge status quo and rethink IaC using first-principle thinking.
Problems faced in Multi-cloud Infrastructure Deployments
Tool Sprawl and Complexity
Organizations often struggle with managing multiple tools for different cloud providers and infrastructure components. This leads to increased complexity, steeper learning curves for teams, and potential inconsistencies in deployment processes across environments, and also slows down automation and governance initiatives.
Registry and Distribution Hell
DevOps teams struggle with managing multiple registries for various artifacts (container images, Helm charts, Terraform modules). This fragmentation causes version control issues, increased operational overhead, and security concerns. It also complicates distribution of infrastructure modules, application charts, and policies, leading to potential version mismatches and use of outdated components in deployments.
Configuration-Related Incidents
Misconfigurations due to human error or inconsistencies between environments are a leading cause of outages and security vulnerabilities. These incidents often result in significant downtime, financial losses, and damage to reputation.
Quality Control Issues for BYOC applications
BYOC apps (previously called on-premise) often suffer from configuration drifts and errors due to the varied environments they encounter. Validating and maintaining consistent configurations across these diverse setups is a significant challenge for many organizations.
Who Should Use Mantis?
On-premise vendors
Companies that need to deploy and maintain software in varied customer environments can leverage Mantis to create more robust, adaptable configurations that work across different cloud and on-premise setups, with built-in policies and defaults that help reduce configuration drift and errors.
Teams looking to build internal developer platforms
Teams looking to build internal developer platforms to drive compliance and standardization across teams. Mantis can help in creating reusable, composable and easy to maintain infrastructure modules with built-in policies.