WARNING: Launchpad is ALPHA quality software. We are rapidly iterating to create the best UX for Indexers. Expect API-breaking changes for the next few weeks. Contributors are very welcome.
Launchpad is a toolkit for running a Graph Protocol Indexer on Kubernetes. It aims to provide the fastest path to production multi-chain indexing, with sane security and performance defaults. It should work well whether you have a single host or twenty.
There are two components to be aware of:
- Starter (this repo): A starting point for every new Launchpad deployment. It uses a submodule to import all templated definitions from Core.
- Core (
graphops/launchpad-core
): Templated tasks, release definitions, scripts and other components
- Actively maintained by GraphOps and contributors
- Deploy Kubernetes (K0s) onto any existing set of SSH-capable hosts you have
- Predefined release definitions for monitoring, logging and other cluster functions, as well as for the complete Graph Indexer Stack
- An opinionated starter (this repo) to define and manage your stack in a declarative, version controlled manner
- A workflow to seamlessly inherit new templated release updates, while still supporting a enormous degree of deployment flexibility
Please see the Quick Start guide in the Documentation.
As new versions of key components in the stack are released, we will update launchpad-core
's templated definitions. You can easily inherit these updates by pulling down the latest submodule.
Launchpad comes with a built in task to do this:
task launchpad:update-core
From time to time, you may want to update your infra repo with the latest changes from our starter.
Launchpad comes with a built in task to do this:
task launchpad:pull-upstream-starter
We welcome and appreciate your contributions! Please see the Contributor Guide, Code Of Conduct and Security Notes for this repository.