This section is empty.


This section is empty.


This section is empty.


type AppHealthManager

type AppHealthManager interface {
	GetAppHealth(server string, namespace string, comparisonResult *appv1.ComparisonResult) (*appv1.HealthStatus, error)

func NewAppHealthManager

func NewAppHealthManager(db db.ArgoDB, namespace string) AppHealthManager

type AppStateManager

type AppStateManager interface {
	CompareAppState(app *v1alpha1.Application) (*v1alpha1.ComparisonResult, *repository.ManifestResponse, error)
	SyncAppState(app *v1alpha1.Application, revision string, overrides *[]v1alpha1.ComponentParameter, dryRun bool, prune bool) *v1alpha1.OperationState

AppStateManager defines methods which allow to compare application spec and actual application state.

func NewAppStateManager

func NewAppStateManager(
	db db.ArgoDB,
	appclientset appclientset.Interface,
	repoClientset reposerver.Clientset,
	namespace string,
) AppStateManager

NewAppStateManager creates new instance of Ksonnet app comparator

type ApplicationController

type ApplicationController struct {
	// contains filtered or unexported fields

ApplicationController is the controller for application resources.

func NewApplicationController

func NewApplicationController(
	namespace string,
	kubeClientset kubernetes.Interface,
	applicationClientset appclientset.Interface,
	db db.ArgoDB,
	appStateManager AppStateManager,
	appHealthManager AppHealthManager,
	appResyncPeriod time.Duration,
	config *ApplicationControllerConfig,
) *ApplicationController

NewApplicationController creates new instance of ApplicationController.

func (*ApplicationController) Run

func (ctrl *ApplicationController) Run(ctx context.Context, statusProcessors int, operationProcessors int)

Run starts the Application CRD controller.

type ApplicationControllerConfig

type ApplicationControllerConfig struct {
	InstanceID string
	Namespace  string

type KsonnetAppStateManager

type KsonnetAppStateManager struct {
	// contains filtered or unexported fields

KsonnetAppStateManager allows to compare application using KSonnet CLI

func (*KsonnetAppStateManager) CompareAppState

CompareAppState compares application spec and real app state using KSonnet

func (*KsonnetAppStateManager) SyncAppState

func (s *KsonnetAppStateManager) SyncAppState(
	app *v1alpha1.Application, revision string, overrides *[]v1alpha1.ComponentParameter, dryRun bool, prune bool) *v1alpha1.OperationState