Help us shape the future of Go! Take the 2026 Go Developer Survey

watches

package
v0.19.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 28, 2020 License: Apache-2.0 Imports: 13 Imported by: 0

Documentation

Overview

Package watches provides the structures and functions for mapping a GroupVersionKind to an Ansible playbook or role.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Finalizer

type Finalizer struct {
	Name     string                 `yaml:"name"`
	Playbook string                 `yaml:"playbook"`
	Role     string                 `yaml:"role"`
	Vars     map[string]interface{} `yaml:"vars"`
}

Finalizer - Expose finalizer to be used by a user.

type Watch

type Watch struct {
	GroupVersionKind            schema.GroupVersionKind   `yaml:",inline"`
	Blacklist                   []schema.GroupVersionKind `yaml:"blacklist"`
	Playbook                    string                    `yaml:"playbook"`
	Role                        string                    `yaml:"role"`
	Vars                        map[string]interface{}    `yaml:"vars"`
	MaxRunnerArtifacts          int                       `yaml:"maxRunnerArtifacts"`
	ReconcilePeriod             time.Duration             `yaml:"reconcilePeriod"`
	Finalizer                   *Finalizer                `yaml:"finalizer"`
	ManageStatus                bool                      `yaml:"manageStatus"`
	WatchDependentResources     bool                      `yaml:"watchDependentResources"`
	WatchClusterScopedResources bool                      `yaml:"watchClusterScopedResources"`
	Selector                    metav1.LabelSelector      `yaml:"selector"`

	// Not configurable via watches.yaml
	MaxWorkers       int `yaml:"-"`
	AnsibleVerbosity int `yaml:"-"`
}

Watch - holds data used to create a mapping of GVK to ansible playbook or role. The mapping is used to compose an ansible operator.

func Load

func Load(path string, maxWorkers, ansibleVerbosity int) ([]Watch, error)

Load - loads a slice of Watches from the watches file from the CLI

func New added in v0.12.0

func New(gvk schema.GroupVersionKind, role, playbook string, vars map[string]interface{}, finalizer *Finalizer) *Watch

New - returns a Watch with sensible defaults.

func (*Watch) UnmarshalYAML

func (w *Watch) UnmarshalYAML(unmarshal func(interface{}) error) error

UnmarshalYAML - implements the yaml.Unmarshaler interface for Watch. This makes it possible to verify, when loading, that the GroupVersionKind specified for a given watch is valid as well as provide sensible defaults for values that were omitted.

func (*Watch) Validate added in v0.12.0

func (w *Watch) Validate() error

Validate - ensures that a Watch is valid A Watch is considered valid if it: - Specifies a valid path to a Role||Playbook - If a Finalizer is non-nil, it must have a name + valid path to a Role||Playbook or Vars

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL