fixture

package
v2.6.6 Latest Latest
Warning

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

Go to latest
Published: Mar 16, 2023 License: Apache-2.0 Imports: 44 Imported by: 9

Documentation

Index

Constants

View Source
const (
	DefaultTestUserPassword = "password"
	TestingLabel            = "e2e.argoproj.io"
	ArgoCDNamespace         = "argocd-e2e"
	ArgoCDAppNamespace      = "argocd-e2e-external"

	// ensure all repos are in one directory tree, so we can easily clean them up
	TmpDir = "/tmp/argo-e2e"

	GuestbookPath = "guestbook"

	ProjectName = "argo-project"

	// cmp plugin sock file path
	PluginSockFilePath = "/app/config/plugin"
)
View Source
const (
	EnvAdminUsername = "ARGOCD_E2E_ADMIN_USERNAME"
	EnvAdminPassword = "ARGOCD_E2E_ADMIN_PASSWORD"
)
View Source
const (
	RepoURLTypeFile                 = "file"
	RepoURLTypeHTTPS                = "https"
	RepoURLTypeHTTPSClientCert      = "https-cc"
	RepoURLTypeHTTPSSubmodule       = "https-sub"
	RepoURLTypeHTTPSSubmoduleParent = "https-par"
	RepoURLTypeSSH                  = "ssh"
	RepoURLTypeSSHSubmodule         = "ssh-sub"
	RepoURLTypeSSHSubmoduleParent   = "ssh-par"
	RepoURLTypeHelm                 = "helm"
	RepoURLTypeHelmParent           = "helm-par"
	RepoURLTypeHelmOCI              = "helm-oci"
	GitUsername                     = "admin"
	GitPassword                     = "password"
	GpgGoodKeyID                    = "D56C4FCA57A46444"
	HelmOCIRegistryURL              = "localhost:5000/myrepo"
)
View Source
const (
	EnvRepoURLTypeSSH                  = "ARGOCD_E2E_REPO_SSH"
	EnvRepoURLTypeSSHSubmodule         = "ARGOCD_E2E_REPO_SSH_SUBMODULE"
	EnvRepoURLTypeSSHSubmoduleParent   = "ARGOCD_E2E_REPO_SSH_SUBMODULE_PARENT"
	EnvRepoURLTypeHTTPS                = "ARGOCD_E2E_REPO_HTTPS"
	EnvRepoURLTypeHTTPSClientCert      = "ARGOCD_E2E_REPO_HTTPS_CLIENT_CERT"
	EnvRepoURLTypeHTTPSSubmodule       = "ARGOCD_E2E_REPO_HTTPS_SUBMODULE"
	EnvRepoURLTypeHTTPSSubmoduleParent = "ARGOCD_E2E_REPO_HTTPS_SUBMODULE_PARENT"
	EnvRepoURLTypeHelm                 = "ARGOCD_E2E_REPO_HELM"
	EnvRepoURLDefault                  = "ARGOCD_E2E_REPO_DEFAULT"
)

Variables

View Source
var (
	KubeClientset    kubernetes.Interface
	KubeConfig       *rest.Config
	DynamicClientset dynamic.Interface
	AppClientset     appclientset.Interface
	ArgoCDClientset  apiclient.Client

	AdminPassword string
)

Functions

func AddFile

func AddFile(path, contents string)

func AddSignedFile

func AddSignedFile(path, contents string)

func AppNamespace added in v2.5.0

func AppNamespace() string

func CreateSecret

func CreateSecret(username, password string) string

creates a secret for the current test, this currently can only create a single secret

func CreateSubmoduleRepos

func CreateSubmoduleRepos(repoType string)

func Declarative

func Declarative(filename string, values interface{}) (string, error)

create the resource by creating using "kubectl apply", with bonus templating

func Delete

func Delete(path string)

func DeploymentNamespace

func DeploymentNamespace() string

func DnsFriendly

func DnsFriendly(str string, postfix string) string

returns dns friends string which is no longer than 63 characters and has specified postfix at the end

func DoHttpJsonRequest added in v2.3.0

func DoHttpJsonRequest(method string, path string, result interface{}, data ...byte) error

DoHttpJsonRequest executes a http request against the Argo CD API server and unmarshals the response body as JSON

func DoHttpRequest added in v2.3.0

func DoHttpRequest(method string, path string, data ...byte) (*http.Response, error)

DoHttpRequest executes a http request against the Argo CD API server

func EnsureCleanState

func EnsureCleanState(t *testing.T)

func GetApiResources added in v2.2.0

func GetApiResources() string

func GetEnvWithDefault added in v2.1.0

func GetEnvWithDefault(envName, defaultValue string) string

func IsLocal added in v2.1.0

func IsLocal() bool

IsLocal returns when the tests are being run against a local workload

func IsRemote added in v2.1.0

func IsRemote() bool

IsRemote returns true when the tests are being run against a workload that is running in a remote cluster.

func LocalOrRemotePath added in v2.1.0

func LocalOrRemotePath(base string) string

LocalOrRemotePath selects a path for a given application based on whether tests are running local or remote.

func LoginAs added in v2.2.0

func LoginAs(username string)

func Name

func Name() string

func NormalizeOutput

func NormalizeOutput(text string) string

utility method to deal with white-space

func Patch

func Patch(path string, jsonPatch string)

func RecordTestRun added in v2.1.0

func RecordTestRun(t *testing.T)

RecordTestRun records a test that has been run successfully to a text file, so that it can be automatically skipped if requested.

func RepoBaseURL

func RepoBaseURL(urlType RepoURLType) string

func RepoURL

func RepoURL(urlType RepoURLType) string

func RestartAPIServer added in v2.1.0

func RestartAPIServer()

RestartAPIServer performs a restart of the API server deployemt and waits until the rollout has completed.

func RestartRepoServer added in v2.1.0

func RestartRepoServer()

RestartRepoServer performs a restart of the repo server deployment and waits until the rollout has completed.

func Run

func Run(workDir, name string, args ...string) (string, error)

func RunCli

func RunCli(args ...string) (string, error)

func RunCliWithStdin

func RunCliWithStdin(stdin string, args ...string) (string, error)

func RunWithStdin

func RunWithStdin(stdin, workDir, name string, args ...string) (string, error)

func SetAccounts

func SetAccounts(accounts map[string][]string)

func SetConfigManagementPlugins

func SetConfigManagementPlugins(plugin ...v1alpha1.ConfigManagementPlugin)

func SetEnableManifestGeneration added in v2.3.0

func SetEnableManifestGeneration(val map[v1alpha1.ApplicationSourceType]bool)

func SetHelmRepos

func SetHelmRepos(repos ...settings.HelmRepoCredentials)

func SetParamInNotificationsConfigMap added in v2.5.0

func SetParamInNotificationsConfigMap(key, value string)

func SetParamInSettingConfigMap added in v2.4.0

func SetParamInSettingConfigMap(key, value string)

func SetPermissions added in v2.2.0

func SetPermissions(permissions []ACL, username string, roleName string)

func SetProjectSpec

func SetProjectSpec(project string, spec v1alpha1.AppProjectSpec)

func SetRepos

func SetRepos(repos ...settings.RepositoryCredentials)

func SetResourceFilter

func SetResourceFilter(filters settings.ResourcesFilter)

func SetResourceOverrides

func SetResourceOverrides(overrides map[string]v1alpha1.ResourceOverride)

func SetResourceOverridesSplitKeys added in v2.1.0

func SetResourceOverridesSplitKeys(overrides map[string]v1alpha1.ResourceOverride)

func SetTrackingLabel added in v2.4.6

func SetTrackingLabel(trackingLabel string)

func SetTrackingMethod added in v2.2.0

func SetTrackingMethod(trackingMethod string)

func SkipIfAlreadyRun added in v2.1.0

func SkipIfAlreadyRun(t *testing.T)

SkipIfAlreadyRun skips a test if it has been already run by a previous test cycle and was recorded.

func SkipOnEnv added in v2.1.0

func SkipOnEnv(t *testing.T, suffixes ...string)

SkipOnEnv allows to skip a test when a given environment variable is set. Environment variable names follow the ARGOCD_E2E_SKIP_<suffix> pattern, and must be set to the string value 'true' in order to skip a test.

func TestNamespace added in v2.1.0

func TestNamespace() string

TestNamespace returns the namespace where Argo CD E2E test instance will be running in.

func Tmpl

func Tmpl(text string, values interface{}) string

utility method to template a string using a map

func WriteFile

func WriteFile(path, contents string)

Types

type ACL added in v2.2.0

type ACL struct {
	Resource string
	Action   string
	Scope    string
}

type RepoURLType

type RepoURLType string

type Version

type Version struct {
	Major, Minor string
}

func (Version) Format

func (v Version) Format(format string) string

func (Version) String

func (v Version) String() string

type Versions

type Versions struct {
	ServerVersion Version
}

func GetVersions

func GetVersions() *Versions

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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