argocd

package
v0.115.0 Latest Latest
Warning

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

Go to latest
Published: Mar 25, 2026 License: Apache-2.0 Imports: 16 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 ApplicationSourceSpec added in v0.78.0

type ApplicationSourceSpec struct {
	RepoURL        string `yaml:"repoURL"`
	TargetRevision string `yaml:"targetRevision"`
	Chart          string `yaml:"chart"`
	Ref            string `yaml:"ref"`
}

func (ApplicationSourceSpec) IsZero added in v0.78.0

func (a ApplicationSourceSpec) IsZero() bool

IsZero checks if the ApplicationSourceSpec is empty in the context of Updatecli We prefer ignoring when chart and targetRevision are empty

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, actionID 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   ApplicationSourceSpec
		Sources  []ApplicationSourceSpec
		Template struct {
			Spec struct {
				Source ApplicationSourceSpec
			}
		}
	}
}

ArgocdApplicationSpec represents the subset of ArgoCD application manifest relevant for Updatecli autodiscovery

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

func (MatchingRules) Validate added in v0.115.0

func (m MatchingRules) Validate() error

Validate checks that each matching rule has at least one non-empty field. Returns an error if any rule has no valid fields specified.

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:
	//      `prerelease` - Updatecli tries to identify the latest "prerelease" whatever it means
	//      `patch` - Updatecli only handles patch version update
	//      `minor` - Updatecli handles patch AND minor version update
	//      `minoronly` - Updatecli handles minor version only
	//      `major` - Updatecli handles patch, minor, AND major version update
	//      `majoronly` - Updatecli only handles major version update
	//      `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"`
	// Auths holds a map of string to string where the key is the registry URL and the value the token used for authentication
	//
	// Please be aware that only the host part of the URL is used to lookup for authentication token.
	//
	// Example:
	//
	// “`yaml
	// auths:
	//   "my-helm-repo.com": "my-secret-token"
	// “`
	Auths map[string]auth `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