Why it exists
DIY INFRASTRUCTURE
Raw infrastructure scripts are flexible, but hard to reuse, review, and publish consistently.
ENGINE OWNERSHIP
Bundling all public scenarios into the runtime engine makes every scenario change heavier than it needs to be.
Productive K3S Profiles provides the content layer: repeatable, reviewable source material that the Infra engine can execute.
Keep Productive K3S Core as the bootstrap contract
Keep Productive K3S Infra as the runtime engine
Evolve scenarios without forcing engine bundle releases
Target scenarios
- Local multi-node validation with Multipass
- Existing hosts reachable over SSH
- Basic single-node cloud evaluation on AWS
- Teams that want reusable source content before their own hardening
Design principles
- Profiles and scenarios first: the public source tree should describe real deployment paths, not disconnected fragments
- Keep runtime separate: the execution engine and the source tree should evolve independently
- Stay explicit: defaults, helper scripts, and package metadata should be obvious to review
Supported source coverage
- Multipass on a local development machine
- Existing Ubuntu or Debian hosts reachable over SSH
- Basic AWS EC2 single-node setups
- Source trees later consumed by `k3s-ops`, `productive-k3s-infra`, and `pk3s`
What it is not
- Not a replacement for Productive K3S Core
- Not the package execution engine
- Not a promise that every public scenario is production-ready as-is
It is the public content layer for Productive K3S infrastructure profiles.