Last updated 10 months ago
Running a stake pool with the many different components is difficult. A lack of a unified DevOps framework making it easier to operate a stake-pool affects decentralisation and network security.
Using Nix we will build a unified, open-source DevOps framework for SPOs. This framework will automate the entire lifecycle from integrating (IaC), Mithril, Hydra and Key Management
This is the total amount allocated to A Declarative Operations Framework for Cardano SPOs.
Please provide your proposal title
A Declarative Operations Framework for Cardano SPOs
Enter the amount of funding you are requesting in ADA
97500
Please specify how many months you expect your project to last
9
Please indicate if your proposal has been auto-translated
No
Original Language
en
What is the problem you want to solve?
Running a stake pool with the many different components is difficult. A lack of a unified DevOps framework making it easier to operate a stake-pool affects decentralisation and network security.
Supporting links
Does your project have any dependencies on other organizations, technical or otherwise?
No
Describe any dependencies or write 'No dependencies'
No dependencies
Will your project's outputs be fully open source?
Yes
License and Additional Information
Apache 2.0 License
Please choose the most relevant theme and tag related to the outcomes of your proposal
Infrastructure
Mention your open source license and describe your open source license rationale.
The Apache 2.0 License was chosen because it is an OSI-approved license. It allows both community and commercial entities to freely use, build upon, and distribute the software without imposing restrictive "copyleft" terms on derivative works.
How do you make sure your source code is accessible to the public from project start, and people are informed?
Hosting it in a public repository on a platform like GitHub or GitLab from day one. Immediately include an OSI-approved open-source license, such as Apache 2.0, to provide legal clarity for users and contributors.
We will also proactively engage with community on forums and social media channels before and during development to share ideas and gather feedback. Maintain a public development log and prject management through githubs project engagement tools to provide transparency on progress and technical decisions, keeping the audience up to date on the development journey.
How will you provide high quality documentation?
Documentation will be provided using a combination of asciidoctor and markdown with a focus on clarity, accessibility, and practical application, ensuring users can understand, use, and contribute to the project.
Please describe your proposed solution and how it addresses the problem
Our solution is to engineer a comprehensive, Nix-based framework that will provide a single, version-controlled source of truth for an entire stake pool operation; from bare metal to relay to block production and monitoring. It will address the extensive manual effort currently required by integrating tooling into a cohesive, automated system.
The core components we will build are:
sops, allowing them to be stored in the repository and decrypted on the remote host during deployment.tomb, which creates encrypted volumes protected by GPG and hardware keys. This will be integrated with best practices for using an air-gapped machine (e.g., a Raspberry Pi) for all signing operations, ensuring private keys are never exposed to an online environment.Prometheus, Grafana) that works identically across local and cloud environments for consistent operational insight.Please define the positive impact your project will have on the wider Cardano community
This project aims to improve the security, decentralisation, and operational efficiency of the Cardano network by helping self-hosting Stake Pool Operators with a robust DevOps framework currently not provided in Cardano’s stake-pool operations ecosystem.
What is your capability to deliver your project with high levels of trust and accountability? How do you intend to validate if your approach is feasible?
Our capability to deliver this project stems from a deep understanding of the problem and our approach. Feasibility is ensured through a combination of technical expertise and a realistic, phased project plan.
nix-std framework, we avoid common pitfalls of complex software projects, ensuring a modular, maintainable, and scalable architecture. The milestones break down this ambitious project into manageable, verifiable stages, each with clear outputs.Milestone Title
Base Scaffolding (Local Deployment) & IaC Integration (Cloud Deployment)
Milestone Outputs
Initial Framework Release: The core repository, structured with the nix-std framework, will be established and made public on GitHub.
End-to-End IaC Provisioning: A functional terranix module will be developed to automatically provision all necessary AWS cloud resources from a single, declarative configuration file.
Declarative Node Deployment: NixOS configurations will be created to reliably deploy a cardano-node (as either a relay or block producer) and a cardano-db-sync instance.
Basic Secrets Management: A foundational security layer will be implemented using sops-nix to manage essential operational secrets, such as cloud provider API keys.
Acceptance Criteria
The framework's core Nix structure and terranix module must successfully generate valid Terraform code from the user-defined configuration file. The generated plan must apply without errors, resulting in the provisioning of a basic, accessible EC2 instance on AWS
Evidence of Completion
A link to the public GitHub repository containing the initial framework code, and a video demonstration showing the generation of Terraform files and a successful
Delivery Month
4
Cost
32500
Progress
40 %
Milestone Title
Core Services, Secrets & Monitoring
Milestone Outputs
High-Security Key Management: The framework will be enhanced with a full integration of tomb for managing encrypted volumes for cold keys, complete with documentation for GPG and hardware key usage.
Hydra & Mithril Integration: Declarative NixOS modules will be developed for the deployment and configuration of Hydra nodes and Mithril validator nodes, enabling easy participation in the broader ecosystem.
Telemetry Stack Deployment: A fully-functional, containerised monitoring stack (Prometheus & Grafana) will be deployed via Nix, including pre-built dashboards for node health and network metrics.
Acceptance Criteria
The framework must be capable of deploying a fully functional Cardano node with advanced security features. Hydra and Mithril nodes must be configurable and deployable via the central Nix configuration. The monitoring stack must deploy automatically and display relevant metrics.
Evidence of Completion
A video demonstrating the tomb security workflow, a video showing the successful deployment of Hydra and Mithril nodes, and a link to the pre-configured Grafana dashboards in the repository.
Delivery Month
7
Cost
33000
Progress
60 %
Milestone Title
Public Release, Documentation
Milestone Outputs
Official release: The stable, feature-complete version of the framework will be tagged and released on GitHub, ready for public use by the SPO community.
Public Documentation Site Launch: A publicly accessible documentation site with comprehensive user guides.
Acceptance Criteria
All features from prior milestones will be integrated into a stable 1.0.0 release. The public documentation site will be live, from covering basic setup, but also extra usage, security best practices, and clear contribution guidelines. The final framework must be fully reproducible, allowing a new user to follow the documentation and successfully deploy a fully-configured, monitored stake pool environment.
Evidence of Completion
A direct link to the official 1.0.0 release tag on the public GitHub repository, and a direct link to the live, publicly accessible documentation website.features.
Delivery Month
9
Cost
25000
Progress
100 %
Please provide a cost breakdown of the proposed work and resources
Terranix, and integration of all Cardano components.How does the cost of the project represent value for the Cardano ecosystem?
This project addresses need within the ecosystem to enable more people and organisations to directly deploy and operate their own stake-pools cost effectively thereby improving the network resilience and security. Too many stake pool operations are outsourced to specialised service providers, thereby concentrating operations. The funds are for engineering effort to build a tangible public good. By creating a unified, operational framework, this investment will produce a robust alternative for stake-pool operations. Our work will create a standard for network infrastructure for a fraction of the cost it would take for individual SPOs to develop similar solutions or extensions of their own. Thereby also helping development teams to more throughly test in realistic network environments, speeding up development and testing of high quality DApps and Smart Contracts.
Terms and Conditions:
Yes
Jack O'Brien - Project Lead and Primary Developer
Bachelor of Music Technology, software developer in functional, systems level programming. 3+ years experience building libraries, SDK's, DevX, Dev-Ops, smart contracts and design for the cardano ecosystem. Been helping teams active in Project Catalyst since fund 2.
Yohann Irani - Developer Experience
Bachelor of Engineering. 3+ years Industry experience in systems design and project management. Graduate of Python, cadCAD and token engineering courses, primary lead for the TokenFlows project funded by project catalyst. Working token engineer, developing a Cardano stake pool model using cadCAD and Jupyter notebooks. Developing DAO compensation plans into cadCAD models.