Documentation
¶
Overview ¶
Package argo reads Argo CD Application manifests and turns their Helm sources into chart + values targets.
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ErrNotApplication = fmt.Errorf("no Argo CD Application found")
ErrNotApplication is returned for YAML files that hold no Application.
Functions ¶
func ChangedFiles ¶
ChangedFiles lists files changed in the working tree since it left rev (their merge base, or rev itself in a shallow clone), as absolute paths.
Types ¶
type Application ¶
type Application struct {
File string
Name string
Namespace string
Project string
Sources []Source
}
func Load ¶
func Load(path string) ([]*Application, error)
Load reads every Argo CD Application in the file at path.
func Parse ¶
func Parse(data []byte) ([]*Application, error)
Parse returns every Application in the YAML documents, in file order.
type Helm ¶
type Helm struct {
ReleaseName string `json:"releaseName"`
Namespace string `json:"namespace"`
KubeVersion string `json:"kubeVersion"`
APIVersions []string `json:"apiVersions"`
ValueFiles []string `json:"valueFiles"`
Values string `json:"values"`
ValuesObject map[string]interface{} `json:"valuesObject"`
Parameters []Parameter `json:"parameters"`
IgnoreMissingValueFiles bool `json:"ignoreMissingValueFiles"`
}
type Target ¶
type Target struct {
App string
Name string
SourceIndex int
Chart source.Ref
Release string
Namespace string
ValueFiles []string
Values string
ValuesObj map[string]interface{}
Parameters []Parameter
// KubeVersion and APIVersions replace the cluster's when the source sets them, as in Argo CD.
KubeVersion string
APIVersions []string
// Skip is why a Helm source cannot be analyzed yet; it is reported, not rendered.
Skip string
}
Target is one Helm source of an Application, resolved against a local checkout: a chart reference plus the values Argo CD would pass to it.
Click to show internal directories.
Click to hide internal directories.