Documentation ¶
Index ¶
- Constants
- func ContainsSyncResource(name string, gvk schema.GroupVersionKind, rr []argoappv1.SyncOperationResource) bool
- func FilterByProjects(apps []argoappv1.Application, projects []string) []argoappv1.Application
- func FormatAppConditions(conditions []argoappv1.ApplicationCondition) string
- func GetAppProject(spec *argoappv1.ApplicationSpec, projLister applicationsv1.AppProjectLister, ...) (*argoappv1.AppProject, error)
- func GetSpecErrors(ctx context.Context, spec *argoappv1.ApplicationSpec, ...) ([]argoappv1.ApplicationCondition, error)
- func NewDiffNormalizer(ignore []v1alpha1.ResourceIgnoreDifferences, ...) (diff.Normalizer, error)
- func NormalizeApplicationSpec(spec *argoappv1.ApplicationSpec, sourceType argoappv1.ApplicationSourceType) *argoappv1.ApplicationSpec
- func QueryAppSourceType(ctx context.Context, app *argoappv1.Application, ...) (argoappv1.ApplicationSourceType, error)
- func RefreshApp(appIf v1alpha1.ApplicationInterface, name string, ...) (*argoappv1.Application, error)
- func SetAppOperation(appIf v1alpha1.ApplicationInterface, appName string, op *argoappv1.Operation) (*argoappv1.Application, error)
- func WaitForRefresh(ctx context.Context, appIf v1alpha1.ApplicationInterface, name string, ...) (*argoappv1.Application, error)
- type AuditLogger
- type EventInfo
Constants ¶
const ( EventReasonStatusRefreshed = "StatusRefreshed" EventReasonResourceCreated = "ResourceCreated" EventReasonResourceUpdated = "ResourceUpdated" EventReasonResourceDeleted = "ResourceDeleted" EventReasonOperationStarted = "OperationStarted" EventReasonOperationCompleted = "OperationCompleted" )
Variables ¶
This section is empty.
Functions ¶
func ContainsSyncResource ¶ added in v0.10.0
func ContainsSyncResource(name string, gvk schema.GroupVersionKind, rr []argoappv1.SyncOperationResource) bool
ContainsSyncResource determines if the given resource exists in the provided slice of sync operation resources.
func FilterByProjects ¶ added in v0.6.0
func FilterByProjects(apps []argoappv1.Application, projects []string) []argoappv1.Application
FilterByProjects returns applications which belongs to the specified project
func FormatAppConditions ¶ added in v0.6.0
func FormatAppConditions(conditions []argoappv1.ApplicationCondition) string
FormatAppConditions returns string representation of give app condition list
func GetAppProject ¶ added in v0.6.0
func GetAppProject(spec *argoappv1.ApplicationSpec, projLister applicationsv1.AppProjectLister, ns string) (*argoappv1.AppProject, error)
GetAppProject returns a project from an application
func GetSpecErrors ¶ added in v0.6.0
func GetSpecErrors( ctx context.Context, spec *argoappv1.ApplicationSpec, proj *argoappv1.AppProject, repoClientset reposerver.Clientset, db db.ArgoDB, ) ([]argoappv1.ApplicationCondition, error)
GetSpecErrors returns list of conditions which indicates that app spec is invalid. Following is checked: * the git repository is accessible * the git path contains valid manifests * the referenced cluster has been added to Argo CD * the app source repo and destination namespace/cluster are permitted in app project * there are parameters of only one app source type * ksonnet: the specified environment exists
func NewDiffNormalizer ¶ added in v0.12.0
func NewDiffNormalizer(ignore []v1alpha1.ResourceIgnoreDifferences, overrides map[string]settings.ResourceOverride) (diff.Normalizer, error)
NewDiffNormalizer creates diff normalizer which removes ignored fields according to given application spec and resource overrides
func NormalizeApplicationSpec ¶ added in v0.11.0
func NormalizeApplicationSpec(spec *argoappv1.ApplicationSpec, sourceType argoappv1.ApplicationSourceType) *argoappv1.ApplicationSpec
NormalizeApplicationSpec will normalize an application spec to a preferred state. This is used for migrating application objects which are using deprecated legacy fields into the new fields, and defaulting fields in the spec (e.g. spec.project)
func QueryAppSourceType ¶
func QueryAppSourceType(ctx context.Context, app *argoappv1.Application, repoClientset reposerver.Clientset, db db.ArgoDB) (argoappv1.ApplicationSourceType, error)
QueryAppSourceType queries repo server for yaml files in a directory, and determines its application source type based on the files in the directory. This code is redundant to the logic in argo.GetSpecErrors, but since it's is hard to extract out of there. We will be throwing away this code when we remove componentParameterOverrides.
func RefreshApp ¶ added in v0.4.0
func RefreshApp(appIf v1alpha1.ApplicationInterface, name string, refreshType argoappv1.RefreshType) (*argoappv1.Application, error)
RefreshApp updates the refresh annotation of an application to coerce the controller to process it
func SetAppOperation ¶ added in v0.9.0
func SetAppOperation(appIf v1alpha1.ApplicationInterface, appName string, op *argoappv1.Operation) (*argoappv1.Application, error)
SetAppOperation updates an application with the specified operation, retrying conflict errors
func WaitForRefresh ¶ added in v0.5.3
func WaitForRefresh(ctx context.Context, appIf v1alpha1.ApplicationInterface, name string, timeout *time.Duration) (*argoappv1.Application, error)
WaitForRefresh watches an application until its comparison timestamp is after the refresh timestamp If refresh timestamp is not present, will use current timestamp at time of call
Types ¶
type AuditLogger ¶ added in v0.7.0
type AuditLogger struct {
// contains filtered or unexported fields
}
func NewAuditLogger ¶ added in v0.7.0
func NewAuditLogger(ns string, kIf kubernetes.Interface, component string) *AuditLogger
func (*AuditLogger) LogAppEvent ¶ added in v0.7.0
func (l *AuditLogger) LogAppEvent(app *v1alpha1.Application, info EventInfo, message string)
func (*AuditLogger) LogAppProjEvent ¶ added in v0.7.0
func (l *AuditLogger) LogAppProjEvent(proj *v1alpha1.AppProject, info EventInfo, message string)