controllers

package
v0.20.4 Latest Latest
Warning

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

Go to latest
Published: Jan 18, 2022 License: Apache-2.0 Imports: 55 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ArchiveFileFilter

type ArchiveFileFilter func(p string, fi os.FileInfo) bool

ArchiveFileFilter must return true if a file should not be included in the archive after inspecting the given path and/or os.FileInfo.

func SourceIgnoreFilter

func SourceIgnoreFilter(ps []gitignore.Pattern, domain []string) ArchiveFileFilter

SourceIgnoreFilter returns an ArchiveFileFilter that filters out files matching sourceignore.VCSPatterns and any of the provided patterns. If an empty gitignore.Pattern slice is given, the matcher is set to sourceignore.NewDefaultMatcher.

type BucketReconciler

type BucketReconciler struct {
	client.Client
	Scheme                *runtime.Scheme
	Storage               *Storage
	EventRecorder         kuberecorder.EventRecorder
	ExternalEventRecorder *events.Recorder
	MetricsRecorder       *metrics.Recorder
}

BucketReconciler reconciles a Bucket object

func (*BucketReconciler) Reconcile

func (r *BucketReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error)

func (*BucketReconciler) SetupWithManager

func (r *BucketReconciler) SetupWithManager(mgr ctrl.Manager) error

func (*BucketReconciler) SetupWithManagerAndOptions

func (r *BucketReconciler) SetupWithManagerAndOptions(mgr ctrl.Manager, opts BucketReconcilerOptions) error

type BucketReconcilerOptions

type BucketReconcilerOptions struct {
	MaxConcurrentReconciles int
}

type GitRepositoryReconciler

type GitRepositoryReconciler struct {
	client.Client

	Scheme                *runtime.Scheme
	Storage               *Storage
	EventRecorder         kuberecorder.EventRecorder
	ExternalEventRecorder *events.Recorder
	MetricsRecorder       *metrics.Recorder
	// contains filtered or unexported fields
}

GitRepositoryReconciler reconciles a GitRepository object

func (*GitRepositoryReconciler) Reconcile

func (r *GitRepositoryReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error)

func (*GitRepositoryReconciler) SetupWithManager

func (r *GitRepositoryReconciler) SetupWithManager(mgr ctrl.Manager) error

func (*GitRepositoryReconciler) SetupWithManagerAndOptions

func (r *GitRepositoryReconciler) SetupWithManagerAndOptions(mgr ctrl.Manager, opts GitRepositoryReconcilerOptions) error

type GitRepositoryReconcilerOptions

type GitRepositoryReconcilerOptions struct {
	MaxConcurrentReconciles   int
	DependencyRequeueInterval time.Duration
}

type HelmChartReconciler

type HelmChartReconciler struct {
	client.Client
	Scheme                *runtime.Scheme
	Storage               *Storage
	Getters               helmgetter.Providers
	EventRecorder         kuberecorder.EventRecorder
	ExternalEventRecorder *events.Recorder
	MetricsRecorder       *metrics.Recorder
}

HelmChartReconciler reconciles a HelmChart object

func (*HelmChartReconciler) Reconcile

func (r *HelmChartReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error)

func (*HelmChartReconciler) SetupWithManager

func (r *HelmChartReconciler) SetupWithManager(mgr ctrl.Manager) error

func (*HelmChartReconciler) SetupWithManagerAndOptions

func (r *HelmChartReconciler) SetupWithManagerAndOptions(mgr ctrl.Manager, opts HelmChartReconcilerOptions) error

type HelmChartReconcilerOptions

type HelmChartReconcilerOptions struct {
	MaxConcurrentReconciles int
}

type HelmRepositoryReconciler

type HelmRepositoryReconciler struct {
	client.Client
	Scheme                *runtime.Scheme
	Storage               *Storage
	Getters               helmgetter.Providers
	EventRecorder         kuberecorder.EventRecorder
	ExternalEventRecorder *events.Recorder
	MetricsRecorder       *metrics.Recorder
}

HelmRepositoryReconciler reconciles a HelmRepository object

func (*HelmRepositoryReconciler) Reconcile

func (*HelmRepositoryReconciler) SetupWithManager

func (r *HelmRepositoryReconciler) SetupWithManager(mgr ctrl.Manager) error

func (*HelmRepositoryReconciler) SetupWithManagerAndOptions

func (r *HelmRepositoryReconciler) SetupWithManagerAndOptions(mgr ctrl.Manager, opts HelmRepositoryReconcilerOptions) error

type HelmRepositoryReconcilerOptions

type HelmRepositoryReconcilerOptions struct {
	MaxConcurrentReconciles int
}

type SourceRevisionChangePredicate

type SourceRevisionChangePredicate struct {
	predicate.Funcs
}

func (SourceRevisionChangePredicate) Create

func (SourceRevisionChangePredicate) Delete

func (SourceRevisionChangePredicate) Update

type Storage

type Storage struct {
	// BasePath is the local directory path where the source artifacts are stored.
	BasePath string `json:"basePath"`

	// Hostname is the file server host name used to compose the artifacts URIs.
	Hostname string `json:"hostname"`

	// Timeout for artifacts operations
	Timeout time.Duration `json:"timeout"`
}

Storage manages artifacts

func NewStorage

func NewStorage(basePath string, hostname string, timeout time.Duration) (*Storage, error)

NewStorage creates the storage helper for a given path and hostname

func (*Storage) Archive

func (s *Storage) Archive(artifact *sourcev1.Artifact, dir string, filter ArchiveFileFilter) (err error)

Archive atomically archives the given directory as a tarball to the given v1beta1.Artifact path, excluding directories and any ArchiveFileFilter matches. While archiving, any environment specific data (for example, the user and group name) is stripped from file headers. If successful, it sets the checksum and last update time on the artifact.

func (*Storage) ArtifactExist

func (s *Storage) ArtifactExist(artifact sourcev1.Artifact) bool

ArtifactExist returns a boolean indicating whether the v1beta1.Artifact exists in storage and is a regular file.

func (*Storage) AtomicWriteFile

func (s *Storage) AtomicWriteFile(artifact *sourcev1.Artifact, reader io.Reader, mode os.FileMode) (err error)

AtomicWriteFile atomically writes the io.Reader contents to the v1beta1.Artifact path. If successful, it sets the checksum and last update time on the artifact.

func (*Storage) Checksum

func (s *Storage) Checksum(reader io.Reader) string

Checksum returns the SHA256 checksum for the data of the given io.Reader as a string.

func (*Storage) Copy

func (s *Storage) Copy(artifact *sourcev1.Artifact, reader io.Reader) (err error)

Copy atomically copies the io.Reader contents to the v1beta1.Artifact path. If successful, it sets the checksum and last update time on the artifact.

func (*Storage) CopyFromPath

func (s *Storage) CopyFromPath(artifact *sourcev1.Artifact, path string) (err error)

CopyFromPath atomically copies the contents of the given path to the path of the v1beta1.Artifact. If successful, the checksum and last update time on the artifact is set.

func (*Storage) CopyToPath

func (s *Storage) CopyToPath(artifact *sourcev1.Artifact, subPath, toPath string) error

CopyToPath copies the contents in the (sub)path of the given artifact to the given path.

func (*Storage) LocalPath

func (s *Storage) LocalPath(artifact sourcev1.Artifact) string

LocalPath returns the secure local path of the given artifact (that is: relative to the Storage.BasePath).

func (*Storage) Lock

func (s *Storage) Lock(artifact sourcev1.Artifact) (unlock func(), err error)

Lock creates a file lock for the given v1beta1.Artifact.

func (*Storage) MkdirAll

func (s *Storage) MkdirAll(artifact sourcev1.Artifact) error

MkdirAll calls os.MkdirAll for the given v1beta1.Artifact base dir.

func (*Storage) NewArtifactFor

func (s *Storage) NewArtifactFor(kind string, metadata metav1.Object, revision, fileName string) sourcev1.Artifact

NewArtifactFor returns a new v1beta1.Artifact.

func (*Storage) RemoveAll

func (s *Storage) RemoveAll(artifact sourcev1.Artifact) error

RemoveAll calls os.RemoveAll for the given v1beta1.Artifact base dir.

func (*Storage) RemoveAllButCurrent

func (s *Storage) RemoveAllButCurrent(artifact sourcev1.Artifact) error

RemoveAllButCurrent removes all files for the given v1beta1.Artifact base dir, excluding the current one.

func (Storage) SetArtifactURL

func (s Storage) SetArtifactURL(artifact *sourcev1.Artifact)

SetArtifactURL sets the URL on the given v1beta1.Artifact.

func (Storage) SetHostname

func (s Storage) SetHostname(URL string) string

SetHostname sets the hostname of the given URL string to the current Storage.Hostname and returns the result.

func (s *Storage) Symlink(artifact sourcev1.Artifact, linkName string) (string, error)

Symlink creates or updates a symbolic link for the given v1beta1.Artifact and returns the URL for the symlink.

Jump to

Keyboard shortcuts

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