Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func DeduplicateTargetObjects

func DeduplicateTargetObjects(
	server string,
	namespace string,
	objs []*unstructured.Unstructured,
	infoProvider ResourceInfoProvider,
) ([]*unstructured.Unstructured, []v1alpha1.ApplicationCondition, error)

func GetLiveObjs

func GetLiveObjs(res []managedResource) []*unstructured.Unstructured

Types

type AppStateManager

type AppStateManager interface {
	CompareAppState(app *v1alpha1.Application, revision string, source v1alpha1.ApplicationSource, noCache bool, localObjects []string) (*comparisonResult, error)
	SyncAppState(app *v1alpha1.Application, state *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,
	kubectl kubeutil.Kubectl,
	settings *settings.ArgoCDSettings,
	liveStateCache statecache.LiveStateCache,
	projInformer cache.SharedIndexInformer,
	metricsServer *metrics.MetricsServer,
) 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,
	settingsMgr *settings_util.SettingsManager,
	kubeClientset kubernetes.Interface,
	applicationClientset appclientset.Interface,
	repoClientset reposerver.Clientset,
	argoCache *argocache.Cache,
	appResyncPeriod time.Duration,
	metricsPort int,
) (*ApplicationController, error)

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 CompareWith

type CompareWith int
const (
	// Compare live application state against state defined in latest git revision.
	CompareWithLatest CompareWith = 2
	// Compare live application state against state defined using revision of most recent comparison.
	CompareWithRecent CompareWith = 1
	// Skip comparison and only refresh application resources tree
	ComparisonWithNothing CompareWith = 0
)

func (CompareWith) Max

type ResourceInfoProvider

type ResourceInfoProvider interface {
	IsNamespaced(server string, obj *unstructured.Unstructured) (bool, error)
}

Directories

Path Synopsis
cache
cache/mocks
metrics