argocd

package
v0.77.0 Latest Latest
Warning

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

Go to latest
Published: May 13, 2024 License: Apache-2.0 Imports: 13 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// ArgoCDFilePatterns specifies accepted Helm chart metadata file name
	ArgoCDFilePatterns [2]string = [2]string{"*.yaml", "*.yml"}
)

Functions

This section is empty.

Types

type ArgoCD

type ArgoCD struct {
	// contains filtered or unexported fields
}

ArgoCD holds all information needed to generate argocd pipelines.

func New

func New(spec interface{}, rootDir, scmID string) (ArgoCD, error)

New return a new valid ArgoCD object.

func (ArgoCD) DiscoverManifests

func (f ArgoCD) DiscoverManifests() ([][]byte, error)

type ArgoCDApplicationSpec

type ArgoCDApplicationSpec struct {
	ApiVersion string `yaml:"apiVersion"`
	Kind       string `yaml:"kind"`
	Spec       struct {
		Source struct {
			RepoURL        string `yaml:"repoURL"`
			TargetRevision string `yaml:"targetRevision"`
			Chart          string `yaml:"chart"`
		}
	}
}

ArgoCDApplicationSpec is the information that we need to retrieve from Helm chart files.

type MatchingRule

type MatchingRule struct {
	// Path specifies a Argocd file path pattern, the pattern requires to match all of name, not just a subpart of the path.
	Path string
	// Repositories specifies the list of Helm Chart repository to check
	Repositories []string
	// Charts specifies the list of Helm Chart repository to check
	Charts map[string]string
}

MatchingRule allows to specifies rules to identify manifest

type MatchingRules

type MatchingRules []MatchingRule

type Spec

type Spec struct {
	// RootDir defines the root directory used to recursively search for ArgoCD manifest
	RootDir string `yaml:",omitempty"`
	// Ignore allows to specify rule to ignore autodiscovery a specific Argocd manifest based on a rule
	Ignore MatchingRules `yaml:",omitempty"`
	// Only allows to specify rule to only autodiscover manifest for a specific ArgoCD manifest based on a rule
	Only MatchingRules `yaml:",omitempty"`
	//  versionfilter provides parameters to specify the version pattern used when generating manifest.
	//
	//  kind - semver
	//    versionfilter of kind `semver` uses semantic versioning as version filtering
	//    pattern accepts one of:
	//      `patch` - patch only update patch version
	//      `minor` - minor only update minor version
	//      `major` - major only update major versions
	//      `a version constraint` such as `>= 1.0.0`
	//
	//  kind - regex
	//    versionfilter of kind `regex` uses regular expression as version filtering
	//    pattern accepts a valid regular expression
	//
	//  example:
	//  “`
	//  	versionfilter:
	//  		kind: semver
	//  		pattern: minor
	//  “`
	//
	//	and its type like regex, semver, or just latest.
	VersionFilter version.Filter `yaml:",omitempty"`
}

Spec defines the parameters which can be provided to the argocd builder.

Jump to

Keyboard shortcuts

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