Iacker
NOTE: This project is a work in progress. DON'T USE IT TO PRODUCTION.
Iacker is a development framework to help cloud-native developers hugging with the infrastructure as a code's world.
The goal is to implement the open features for service providers.
Introduction
Features
- Model-driven: Define the resource schema by CUE and unified specification.
- Developer-first: All workflows in code, collaborate with others with GitOps workflow.
- Generator-oriented: Build your own generator using the unified specification. Many popular IaC tools are provided.
Real-world example
We used it to create the Terraform Provider for Guance Cloud and other related services and tools.
Roadmap
All the features are described in the proposals
folder. It is inspired by the GRFC Template used in Google. You can find the implementation status in the table below.
The proposal workflow is described in the Guance Cloud Proposal Governance Guidelines.
Architecture
Architecture defines the basic concepts and principles of Iacker architecture.
Protocols
At Iacker, we use a unified resource management framework to expose various protocols for different use cases.
Protocols describe the protocols used in Iacker. Please follow the protocol specification (coming soon) to add a new protocol.
# |
Title |
How-tos |
P001 |
Cloud Control API |
Cloud Control API and the implementations |
Developer tools are the core of developer experience infrastructure (DXI). It provides tools to help developers build, test, and deploy their API callings.
# |
Title |
How-tos |
T001 |
Resource Explorer |
How to discover and interact with cloud resource |
T002 |
Terraform Provider |
How to build the engineering capability for X as Code world |
Developer Guide
See the hack folder to understand how to build this project.
Contributing
We welcome contributions to Iacker. Please see the Contributing Guidelines for more information.