run

package
v0.9.6-rc.1 Latest Latest
Warning

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

Go to latest
Published: Sep 27, 2022 License: MPL-2.0 Imports: 55 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrNoPodsForService           = errors.New("no pods found for service")
	ErrNoPodsForDeployment        = errors.New("no pods found for deployment")
	ErrNoRunningPodsForService    = errors.New("no running pods found for service")
	ErrNoRunningPodsForDeployment = errors.New("no running pods found for deployment")
	ErrDashboardPodNotFound       = errors.New("dashboard pod not found")
)
View Source
var (
	DevBucketContainerImage = "ghcr.io/weaveworks/gitops-bucket-server@sha256:b0446a6c645b5d39cf0db558958bf28363aca3ea80dc9d593983173613a4f290"
)

Functions

func CleanupBucketSourceAndKS

func CleanupBucketSourceAndKS(log logger.Logger, kubeClient client.Client, namespace string) error

CleanupBucketSourceAndKS removes the bucket source and ks

func CreateDashboardObjects added in v0.9.4

func CreateDashboardObjects(log logger.Logger, name string, namespace string, username string, secret string, chartVersion string) ([]byte, error)

CreateDashboardObjects creates HelmRepository and HelmRelease objects for the GitOps Dashboard installation.

func CreateIgnorer added in v0.9.5

func CreateIgnorer(gitRootDir string) *ignore.GitIgnore

func EnablePortForwardingForDashboard

func EnablePortForwardingForDashboard(log logger.Logger, kubeClient client.Client, config *rest.Config, namespace string, podName string, dashboardPort string) (func(), error)

EnablePortForwardingForDashboard enables port forwarding for the GitOps Dashboard.

func FindGitRepoDir

func FindGitRepoDir() (string, error)

FindGitRepoDir finds git repo root directory

func ForwardPort

func ForwardPort(pod *corev1.Pod, cfg *rest.Config, specMap *PortForwardSpec, waitFwd chan struct{}, readyChannel chan struct{}) error

func GenerateSecret added in v0.9.2

func GenerateSecret(log logger.Logger, password string) (string, error)

func GetFluxVersion

func GetFluxVersion(log logger.Logger, ctx context.Context, kubeClient client.Client) (string, error)

func GetKubeClient

func GetKubeClient(log logger.Logger, contextName string, cfg *rest.Config, kubeClientOpts *runclient.Options) (*kube.KubeHTTP, error)

func GetKubeClientOptions

func GetKubeClientOptions() *runclient.Options

func GetKubeConfigArgs

func GetKubeConfigArgs() *genericclioptions.ConfigFlags

func GetPodFromResourceDescription added in v0.9.4

func GetPodFromResourceDescription(namespacedName types.NamespacedName, kind string, kubeClient client.Client) (*corev1.Pod, error)

func GetRelativePathToRootDir

func GetRelativePathToRootDir(rootDir string, path string) (string, error)

GetRelativePathToRootDir gets relative path to a directory from the git root. It returns an error if there's no git repo.

func GetURLParts

func GetURLParts(remoteURL string) []string

GetURLParts splits URL to URL parts.

func InitializeTargetDir added in v0.9.5

func InitializeTargetDir(targetPath string) error

func InstallDashboard

func InstallDashboard(log logger.Logger, ctx context.Context, manager ResourceManagerForApply, manifests []byte) error

InstallDashboard installs the GitOps Dashboard.

func InstallDevBucketServer

func InstallDevBucketServer(log logger.Logger, kubeClient client.Client, config *rest.Config) (func(), error)

InstallDevBucketServer installs the dev bucket server, open port forwarding, and returns a function that can be used to the port forwarding.

func IsDashboardInstalled

func IsDashboardInstalled(log logger.Logger, ctx context.Context, kubeClient client.Client, name string, namespace string) bool

IsDashboardInstalled checks if the GitOps Dashboard is installed.

func IsLocalCluster

func IsLocalCluster(kubeClient *kube.KubeHTTP) bool

IsLocalCluster checks if it's a local cluster. See https://skaffold.dev/docs/environment/local-cluster/

func NewManager added in v0.9.2

func NewManager(log logger.Logger, ctx context.Context, kubeClient ctrlclient.Client, kubeConfigArgs genericclioptions.RESTClientGetter) (*ssa.ResourceManager, error)

func ParseGitRemote

func ParseGitRemote(log logger.Logger, workingDir string) (*gogit.Repository, error)

ParseGitRemote parses the git remote (if it exists) from the working directory to autofill some command options.

func ParseRemoteURL

func ParseRemoteURL(repo *gogit.Repository) (string, error)

ParseRemoteURL extracts remote URL from the repository

func ReadPassword added in v0.9.4

func ReadPassword(log logger.Logger) (string, error)

func ReconcileDashboard

func ReconcileDashboard(kubeClient client.Client, name string, namespace string, podName string, timeout time.Duration) error

ReconcileDashboard reconciles the dashboard.

func ReconcileDevBucketSourceAndKS added in v0.9.2

func ReconcileDevBucketSourceAndKS(log logger.Logger, kubeClient client.Client, namespace string, timeout time.Duration) error

ReconcileDevBucketSourceAndKS reconciles the dev-bucket and dev-ks asynchronously.

func SetupBucketSourceAndKS

func SetupBucketSourceAndKS(log logger.Logger, kubeClient client.Client, namespace string, path string, timeout time.Duration) error

func SyncDir

func SyncDir(log logger.Logger, dir string, bucket string, client *minio.Client, ignorer *ignore.GitIgnore) error

SyncDir recursively uploads all files in a directory to an S3 bucket with minio library

func UninstallDevBucketServer

func UninstallDevBucketServer(log logger.Logger, kubeClient client.Client) error

UninstallDevBucketServer deletes the dev-bucket namespace.

func WatchDirsForFileWalker added in v0.9.2

func WatchDirsForFileWalker(watcher *fsnotify.Watcher, ignorer *ignore.GitIgnore) func(path string, info os.FileInfo, err error) error

Types

type BootstrapWizard

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

func NewBootstrapWizard

func NewBootstrapWizard(log logger.Logger, remoteURL string, gitProvider GitProvider, repo *gogit.Repository, path string) (*BootstrapWizard, error)

NewBootstrapWizard creates a wizard to gather all bootstrap config options before running flux bootstrap.

func (*BootstrapWizard) BuildCommand

func (wizard *BootstrapWizard) BuildCommand(log logger.Logger) string

BuildCommand builds flux bootstrap command as a text string.

func (*BootstrapWizard) Run

func (wizard *BootstrapWizard) Run(log logger.Logger) error

Run displays text inputs to enter or edit all command flag values.

type BootstrapWizardResult

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

type BootstrapWizardTask

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

type DefaultValueGetter

type DefaultValueGetter func(*gogit.Repository) string

type GitProvider

type GitProvider int32
const (
	GitProviderUnknown         GitProvider = 0
	GitProviderGitHub          GitProvider = 1
	GitProviderGitLab          GitProvider = 2
	GitProviderGit             GitProvider = 3
	GitProviderBitbucketServer GitProvider = 4
)

func ParseGitProvider

func ParseGitProvider(hostname string) GitProvider

ParseGitProvider extracts git provider from the remote URL, if possible

func SelectGitProvider

func SelectGitProvider(log logger.Logger) (GitProvider, error)

SelectGitProvider displays text inputs to enter or edit all command flag values.

type PortForwardSpec

type PortForwardSpec struct {
	Namespace     string
	Name          string
	Kind          string
	HostPort      string
	ContainerPort string
	Map           map[string]string
}

func ParsePortForwardSpec

func ParsePortForwardSpec(spec string) (*PortForwardSpec, error)

parse port forward specin the key-value format of "port=8000:8080,resource=svc/app,namespace=default"

type ResourceManagerForApply added in v0.9.2

type ResourceManagerForApply interface {
	ApplyAll(ctx context.Context, objects []*unstructured.Unstructured, opts ssa.ApplyOptions) (*ssa.ChangeSet, error)
	WaitForSet(set object.ObjMetadataSet, opts ssa.WaitOptions) error
}

Jump to

Keyboard shortcuts

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