taubyte / tau

Open source distributed Platform as a Service (PaaS). A self-hosted Vercel / Netlify / Cloudflare alternative.
https://tau.how
BSD 3-Clause "New" or "Revised" License
3.36k stars 93 forks source link

[spore-drive] Deploy tau to all your nodes from one place #204

Closed samyfodil closed 1 week ago

samyfodil commented 3 months ago

With mycelium in place, we need a powerful tool to leverage its capabilities: spore-drive.

Spore-drive reads YAML configurations from a Git repository, compares them with the current state (or the previous commit), and generates a course of action. This course is then committed to Git, serving as a source of truth, and executed by the deployment engine which leverages mycelium.

Spore-Drive Components:

  1. Core:

    • Handles configuration manipulation and course generation.
    • Designed to be WebAssembly System Interface (WASI) compatible, allowing it to be turned into an Extism plugin.
  2. Deployment:

    • Executes the deployment using the generated course.