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

argoapplication

package
v0.1.7 Latest Latest
Warning

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

Go to latest
Published: May 8, 2025 License: Apache-2.0 Imports: 18 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ApplicationsToString

func ApplicationsToString(apps []ArgoResource) string

ApplicationsToString converts a slice of ArgoResource to a YAML string

func ConvertAppSetsToAppsInBothBranches

func ConvertAppSetsToAppsInBothBranches(
	argocd *argocd.ArgoCDInstallation,
	baseApps []ArgoResource,
	targetApps []ArgoResource,
	baseBranch *git.Branch,
	targetBranch *git.Branch,
	repo string,
	tempFolder string,
	redirectRevisions []string,
	debug bool,
) ([]ArgoResource, []ArgoResource, error)

func GetApplicationsForBranches

func GetApplicationsForBranches(
	argocdNamespace string,
	baseBranch *git.Branch,
	targetBranch *git.Branch,
	fileRegex *string,
	selector []selector.Selector,
	filesChanged []string,
	repo string,
	ignoreInvalidWatchPattern bool,
	redirectRevisions []string,
) ([]ArgoResource, []ArgoResource, error)

GetApplicationsForBranches gets applications for both base and target branches

func WriteApplications

func WriteApplications(
	apps []ArgoResource,
	branch *git.Branch,
	folder string,
) error

WriteApplications writes applications to YAML files in the specified folder

Types

type ApplicationKind

type ApplicationKind int

ApplicationKind represents the type of Argo CD application

const (
	Application ApplicationKind = iota
	ApplicationSet
)

func (ApplicationKind) ShortName

func (k ApplicationKind) ShortName() string

ShortName returns the string representation of ApplicationKind

type ArgoResource

type ArgoResource struct {
	Yaml     *unstructured.Unstructured
	Kind     ApplicationKind
	Id       string
	Name     string
	FileName string
}

ArgoResource represents an Argo CD Application or ApplicationSet

func ConvertAppSetsToApps

func ConvertAppSetsToApps(
	argocd *argocd.ArgoCDInstallation,
	appSets []ArgoResource,
	branch *git.Branch,
	repo string,
	tempFolder string,
	redirectRevisions []string,
	debug bool,
) ([]ArgoResource, error)

func FromK8sResource

func FromK8sResource(resource k8s.Resource) *ArgoResource

FromK8sResource creates an ArgoResource from a K8sResource

func FromResourceToApplication

func FromResourceToApplication(
	k8sResources []k8s.Resource,
	selector []selector.Selector,
	filesChanged []string,
	ignoreInvalidWatchPattern bool,
	branch *git.Branch,
) []ArgoResource

FromResourceToApplication converts K8sResources to ArgoResources with filtering

func GetApplications

func GetApplications(
	argocdNamespace string,
	branch *git.Branch,
	fileRegex *string,
	selector []selector.Selector,
	filesChanged []string,
	repo string,
	ignoreInvalidWatchPattern bool,
	redirectRevisions []string,
) ([]ArgoResource, error)

GetApplications gets applications for a single branch

func PatchApplication

func PatchApplication(
	argocdNamespace string,
	app ArgoResource,
	branch *git.Branch,
	repo string,
	redirectRevisions []string,
) (*ArgoResource, error)

PatchApplication patches a single ArgoResource

func PatchApplications

func PatchApplications(
	argocdNamespace string,
	applications []ArgoResource,
	branch *git.Branch,
	repo string,
	redirectRevisions []string,
) ([]ArgoResource, error)

PatchApplications patches a slice of ArgoResources

func UniqueIds

func UniqueIds(apps []ArgoResource, branch *git.Branch) []ArgoResource

UniqueIds ensures all applications have unique IDs by adding suffixes to duplicates

func (*ArgoResource) AsString

func (a *ArgoResource) AsString() (string, error)

AsString returns the YAML representation of the resource

func (*ArgoResource) Filter

func (a *ArgoResource) Filter(
	selectors []selector.Selector,
	filesChanged []string,
	ignoreInvalidWatchPattern bool,
) bool

Filter checks if the application matches the given selectors and watches the given files

func (*ArgoResource) GetLongName

func (a *ArgoResource) GetLongName() string

func (*ArgoResource) PointDestinationToInCluster

func (a *ArgoResource) PointDestinationToInCluster() error

PointDestinationToInCluster updates the destination to point to the in-cluster service

func (*ArgoResource) RedirectGenerators

func (a *ArgoResource) RedirectGenerators(repo, branch string, redirectRevisions []string) error

RedirectGenerators updates the git generator targetRevision to point to the specified branch

func (*ArgoResource) RedirectSources

func (a *ArgoResource) RedirectSources(repo, branch string, redirectRevisions []string) error

RedirectSources updates the source/sources targetRevision to point to the specified branch

func (*ArgoResource) RemoveSyncPolicy

func (a *ArgoResource) RemoveSyncPolicy() error

RemoveSyncPolicy removes the syncPolicy from the resource

func (*ArgoResource) SetNamespace

func (a *ArgoResource) SetNamespace(namespace string) error

SetNamespace sets the namespace of the resource

func (*ArgoResource) SetProjectToDefault

func (a *ArgoResource) SetProjectToDefault() error

SetProjectToDefault sets the project to "default"

Jump to

Keyboard shortcuts

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