mirror of
https://github.com/fluxcd/flagger.git
synced 2026-04-15 06:57:34 +00:00
- extract Kubernetes operations to controller interface - implement controller interface for kind Deployment
20 lines
923 B
Go
20 lines
923 B
Go
package canary
|
|
|
|
import "github.com/weaveworks/flagger/pkg/apis/flagger/v1alpha3"
|
|
|
|
type Controller interface {
|
|
IsPrimaryReady(canary *v1alpha3.Canary) (bool, error)
|
|
IsCanaryReady(canary *v1alpha3.Canary) (bool, error)
|
|
SyncStatus(canary *v1alpha3.Canary, status v1alpha3.CanaryStatus) error
|
|
SetStatusFailedChecks(canary *v1alpha3.Canary, val int) error
|
|
SetStatusWeight(canary *v1alpha3.Canary, val int) error
|
|
SetStatusIterations(canary *v1alpha3.Canary, val int) error
|
|
SetStatusPhase(canary *v1alpha3.Canary, phase v1alpha3.CanaryPhase) error
|
|
Initialize(canary *v1alpha3.Canary, skipLivenessChecks bool) (label string, ports map[string]int32, err error)
|
|
Promote(canary *v1alpha3.Canary) error
|
|
HasTargetChanged(canary *v1alpha3.Canary) (bool, error)
|
|
HaveDependenciesChanged(canary *v1alpha3.Canary) (bool, error)
|
|
Scale(canary *v1alpha3.Canary, replicas int32) error
|
|
ScaleFromZero(canary *v1alpha3.Canary) error
|
|
}
|