This change adds a Backend Phase to the compiler, implemented by each of the cloud/scheduler implementations. It also reorganizes some of the modules to ensure we can do everything we need without cycles, including introducing the mu/pkg/compiler/backends package, under which the clouds/ and schedulers/ sub-packages now reside. The backends.New(Arch) factory function acts as the entrypoint into the entire thing so callers can easily create new Backend instances.
12 lines
272 B
Go
12 lines
272 B
Go
// Copyright 2016 Marapongo, Inc. All rights reserved.
|
|
|
|
package schedulers
|
|
|
|
import (
|
|
"github.com/marapongo/mu/pkg/compiler/core"
|
|
)
|
|
|
|
// Scheduler is an interface for providers that can target a Mu stack to a specific cloud CaaS.
|
|
type Scheduler interface {
|
|
core.Backend
|
|
}
|