- Introduce Executor for remote container orchestration - Add Container lifecycle management with tmux - Support Alpine and Alpine Python base images - Auto-install core dependencies on remote node - Include full usage examples and updated README
31 lines
725 B
V
31 lines
725 B
V
module herorun
|
|
|
|
import freeflowuniverse.herolib.ui.console
|
|
|
|
// Provider types
|
|
pub enum Provider {
|
|
hetzner
|
|
threefold
|
|
}
|
|
|
|
// Factory function to create appropriate backend
|
|
pub fn new_backend(provider Provider, args NewNodeArgs) !NodeBackend {
|
|
match provider {
|
|
.hetzner {
|
|
console.print_header('🏭 Creating Hetzner Backend')
|
|
backend := new_hetzner_backend(args)!
|
|
return backend
|
|
}
|
|
.threefold {
|
|
console.print_header('🏭 Creating ThreeFold Backend')
|
|
// TODO: Implement ThreeFold backend
|
|
return error('ThreeFold backend not implemented yet')
|
|
}
|
|
}
|
|
}
|
|
|
|
// Convenience function for Hetzner (most common case)
|
|
pub fn new_hetzner_node(args NewNodeArgs) !NodeBackend {
|
|
return new_backend(.hetzner, args)!
|
|
}
|