framework

package
v0.14.4 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: 72 Imported by: 0

Documentation

Index

Constants

View Source
const (
	ClusterPrefixVar    = "T_CLUSTER_PREFIX"
	JobIdVar            = "T_JOB_ID"
	BundlesOverrideVar  = "T_BUNDLES_OVERRIDE"
	ClusterIPPoolEnvVar = "T_CLUSTER_IP_POOL"
	CleanupVmsVar       = "T_CLEANUP_VMS"

	EksaPackagesInstallation = "eks-anywhere-packages"
)
View Source
const (
	GitRepositoryVar      = "T_GIT_REPOSITORY"
	GitRepoSshUrl         = "T_GIT_SSH_REPO_URL"
	GithubUserVar         = "T_GITHUB_USER"
	GithubTokenVar        = "EKSA_GITHUB_TOKEN"
	GitKnownHosts         = "EKSA_GIT_KNOWN_HOSTS"
	GitPrivateKeyFile     = "EKSA_GIT_PRIVATE_KEY"
	DefaultFluxConfigName = "eksa-test"
)
View Source
const (
	OIDCIssuerUrlVar = "T_OIDC_ISSUER_URL"
	OIDCClientIdVar  = "T_OIDC_CLIENT_ID"
	OIDCKidVar       = "T_OIDC_KID"
	OIDCKeyFileVar   = "T_OIDC_KEY_FILE"
)
View Source
const (
	RegistryEndpointVar           = "T_REGISTRY_MIRROR_ENDPOINT"
	RegistryPortVar               = "T_REGISTRY_MIRROR_PORT"
	RegistryUsernameVar           = "T_REGISTRY_MIRROR_USERNAME"
	RegistryPasswordVar           = "T_REGISTRY_MIRROR_PASSWORD"
	RegistryCACertVar             = "T_REGISTRY_MIRROR_CA_CERT"
	RegistryEndpointTinkerbellVar = "T_REGISTRY_MIRROR_ENDPOINT_TINKERBELL"
	RegistryPortTinkerbellVar     = "T_REGISTRY_MIRROR_PORT_TINKERBELL"
	RegistryUsernameTinkerbellVar = "T_REGISTRY_MIRROR_USERNAME_TINKERBELL"
	RegistryPasswordTinkerbellVar = "T_REGISTRY_MIRROR_PASSWORD_TINKERBELL"
	RegistryCACertTinkerbellVar   = "T_REGISTRY_MIRROR_CA_CERT_TINKERBELL"
)
View Source
const (
	TinkerbellProviderName = "tinkerbell"

	TinkerbellCIEnvironment = "T_TINKERBELL_CI_ENVIRONMENT"
)
View Source
const (
	AWSIamRoleArn = "T_AWS_IAM_ROLE_ARN"
)
View Source
const (
	BranchNameEnvVar = "T_BRANCH_NAME"
)
View Source
const LabelPrefix = "eksa.e2e"

Variables

View Source
var CloudstackProxyRequiredEnvVars = ProxyRequiredEnvVars{
	HttpProxy:  cloudstackHttpProxyVar,
	HttpsProxy: cloudstackHttpsProxyVar,
	NoProxy:    cloudstackNoProxyVar,
}
View Source
var VsphereProxyRequiredEnvVars = ProxyRequiredEnvVars{
	HttpProxy:  vsphereHttpProxyVar,
	HttpsProxy: vsphereHttpsProxyVar,
	NoProxy:    vsphereNoProxyVar,
}

Functions

func CheckCuratedPackagesCredentials added in v0.12.1

func CheckCuratedPackagesCredentials(t *testing.T)

CheckCuratedPackagesCredentials will exit out if the Curated Packages environment variables are not set.

func ControlPlaneTaint added in v0.7.1

func ControlPlaneTaint() corev1.Taint

ControlPlaneTaint has been added from 1.24 onwards.

func GenerateUniqueIp added in v0.8.0

func GenerateUniqueIp(cidr string) (string, error)

func GetIP added in v0.11.0

func GetIP(cidr, ipEnvVar string) (string, error)

func GetLatestMinorReleaseBinaryFromMain added in v0.6.1

func GetLatestMinorReleaseBinaryFromMain() (binaryPath string, err error)

func GetLatestMinorReleaseBinaryFromVersion added in v0.6.1

func GetLatestMinorReleaseBinaryFromVersion(releaseBranchVersion *semver.Version) (binaryPath string, err error)

func GetLatestMinorReleaseFromMain added in v0.7.0

func GetLatestMinorReleaseFromMain() (*releasev1alpha1.EksARelease, error)

func GetLatestMinorReleaseFromTestBranch added in v0.7.0

func GetLatestMinorReleaseFromTestBranch() (*releasev1alpha1.EksARelease, error)

func GetLatestMinorReleaseFromVersion added in v0.7.0

func GetLatestMinorReleaseFromVersion(releaseBranchVersion *semver.Version) (*releasev1alpha1.EksARelease, error)

func GetReleaseBinaryFromVersion added in v0.6.1

func GetReleaseBinaryFromVersion(version *semver.Version) (binaryPath string, err error)

func GetTestNameHash added in v0.9.2

func GetTestNameHash(name string) string

func MasterTaint added in v0.12.1

func MasterTaint() corev1.Taint

MasterTaint will be deprecated from kubernetes version 1.25 onwards.

func NoExecuteTaint added in v0.7.1

func NoExecuteTaint() corev1.Taint

func NoScheduleTaint added in v0.7.1

func NoScheduleTaint() corev1.Taint

func PopIPFromEnv added in v0.7.1

func PopIPFromEnv(ipPoolEnvVar string) (string, error)

func PreferNoScheduleTaint added in v0.7.1

func PreferNoScheduleTaint() corev1.Taint

func RemoveAllCloudStackAzs added in v0.11.3

func RemoveAllCloudStackAzs() api.CloudStackFiller

func RequiredAWSIamEnvVars added in v0.6.1

func RequiredAWSIamEnvVars() []string

func RequiredCloudstackEnvVars added in v0.9.0

func RequiredCloudstackEnvVars() []string

func RequiredFluxGitCreateRepoEnvVars added in v0.9.2

func RequiredFluxGitCreateRepoEnvVars() []string

func RequiredFluxGithubEnvVars added in v0.9.0

func RequiredFluxGithubEnvVars() []string

func RequiredNutanixEnvVars added in v0.13.0

func RequiredNutanixEnvVars() []string

RequiredNutanixEnvVars returns a list of environment variables needed for Nutanix tests.

func RequiredPackagesEnvVars added in v0.13.0

func RequiredPackagesEnvVars() []string

RequiredPackagesEnvVars returns the list of packages env vars.

func RequiredRegistryMirrorEnvVars added in v0.6.0

func RequiredRegistryMirrorEnvVars() []string

func RequiredTinkerbellEnvVars added in v0.8.0

func RequiredTinkerbellEnvVars() []string

func RequiredVsphereEnvVars

func RequiredVsphereEnvVars() []string

func UpdateAddCloudStackAz1 added in v0.11.3

func UpdateAddCloudStackAz1() api.CloudStackFiller

func UpdateAddCloudStackAz2 added in v0.11.3

func UpdateAddCloudStackAz2() api.CloudStackFiller

func UpdateLargerCloudStackComputeOffering added in v0.9.0

func UpdateLargerCloudStackComputeOffering() api.CloudStackFiller

func UpdateNutanixUbuntuTemplate121Var added in v0.12.0

func UpdateNutanixUbuntuTemplate121Var() api.NutanixFiller

UpdateNutanixUbuntuTemplate121Var returns NutanixFiller by reading the env var and setting machine config's image name parameter in the spec.

func UpdateNutanixUbuntuTemplate122Var added in v0.12.0

func UpdateNutanixUbuntuTemplate122Var() api.NutanixFiller

UpdateNutanixUbuntuTemplate122Var returns NutanixFiller by reading the env var and setting machine config's image name parameter in the spec.

func UpdateNutanixUbuntuTemplate123Var added in v0.12.0

func UpdateNutanixUbuntuTemplate123Var() api.NutanixFiller

UpdateNutanixUbuntuTemplate123Var returns NutanixFiller by reading the env var and setting machine config's image name parameter in the spec.

func UpdateNutanixUbuntuTemplate124Var added in v0.13.0

func UpdateNutanixUbuntuTemplate124Var() api.NutanixFiller

UpdateNutanixUbuntuTemplate124Var returns NutanixFiller by reading the env var and setting machine config's image name parameter in the spec.

func UpdateRedhatTemplate121Var added in v0.9.0

func UpdateRedhatTemplate121Var() api.CloudStackFiller

func UpdateRedhatTemplate122Var added in v0.14.0

func UpdateRedhatTemplate122Var() api.CloudStackFiller

UpdateRedhatTemplate122Var updates the CloudStackTemplate for all machines to the one corresponding to K8s 1.22.

func UpdateRedhatTemplate123Var added in v0.14.0

func UpdateRedhatTemplate123Var() api.CloudStackFiller

UpdateRedhatTemplate123Var updates the CloudStackTemplate for all machines to the one corresponding to K8s 1.23.

func UpdateSnowUbuntuTemplate121Var added in v0.11.0

func UpdateSnowUbuntuTemplate121Var() api.SnowFiller

func UpdateSnowUbuntuTemplate122Var added in v0.11.0

func UpdateSnowUbuntuTemplate122Var() api.SnowFiller

func UpdateSnowUbuntuTemplate123Var added in v0.11.0

func UpdateSnowUbuntuTemplate123Var() api.SnowFiller

func UpdateTinkerbellUbuntuTemplate121Var added in v0.12.0

func UpdateTinkerbellUbuntuTemplate121Var() api.TinkerbellFiller

func UpdateTinkerbellUbuntuTemplate122Var added in v0.12.0

func UpdateTinkerbellUbuntuTemplate122Var() api.TinkerbellFiller

func UpdateTinkerbellUbuntuTemplate123Var added in v0.12.0

func UpdateTinkerbellUbuntuTemplate123Var() api.TinkerbellFiller

func UpdateTinkerbellUbuntuTemplate124Var added in v0.12.2

func UpdateTinkerbellUbuntuTemplate124Var() api.TinkerbellFiller

UpdateTinkerbellUbuntuTemplate124Var updates the tinkerbell template.

func VSphereExtraEnvVarPrefixes added in v0.12.0

func VSphereExtraEnvVarPrefixes() []string

VSphereExtraEnvVarPrefixes returns prefixes for env vars that although not always required, might be necessary for certain tests.

func ValidateControlPlaneFailureDomainLabels added in v0.13.0

func ValidateControlPlaneFailureDomainLabels(controlPlane v1alpha1.ControlPlaneConfiguration, node corev1.Node) error

ValidateControlPlaneFailureDomainLabels validate if Cloudstack provider replaces ds.meta_data.failuredomain with proper failuredomain name in control plane node label 'cluster.x-k8s.io/failure-domain'.

func ValidateControlPlaneLabels added in v0.7.1

func ValidateControlPlaneLabels(controlPlane v1alpha1.ControlPlaneConfiguration, node corev1.Node) error

func ValidateControlPlaneNoTaints added in v0.13.0

func ValidateControlPlaneNoTaints(controlPlane v1alpha1.ControlPlaneConfiguration, node corev1.Node) (err error)

ValidateControlPlaneNoTaints will validate that a controlPlane has no taints, for example in the case of a single node cluster.

func ValidateControlPlaneNodeNameMatchCAPIMachineName added in v0.13.0

func ValidateControlPlaneNodeNameMatchCAPIMachineName(controlPlane v1alpha1.ControlPlaneConfiguration, node corev1.Node) error

ValidateControlPlaneNodeNameMatchCAPIMachineName validate if node name is same as CAPI machine name.

func ValidateControlPlaneTaints added in v0.7.1

func ValidateControlPlaneTaints(controlPlane v1alpha1.ControlPlaneConfiguration, node corev1.Node) (err error)

func ValidateWorkerNodeFailureDomainLabels added in v0.13.0

func ValidateWorkerNodeFailureDomainLabels(w v1alpha1.WorkerNodeGroupConfiguration, node corev1.Node) error

ValidateWorkerNodeFailureDomainLabels validate if Cloudstack provider replaces ds.meta_data.failuredomain with proper failuredomain name in worker group node label 'cluster.x-k8s.io/failure-domain'.

func ValidateWorkerNodeLabels added in v0.7.1

func ValidateWorkerNodeLabels(w v1alpha1.WorkerNodeGroupConfiguration, node corev1.Node) error

func ValidateWorkerNodeNameMatchCAPIMachineName added in v0.13.0

func ValidateWorkerNodeNameMatchCAPIMachineName(w v1alpha1.WorkerNodeGroupConfiguration, node corev1.Node) error

ValidateWorkerNodeNameMatchCAPIMachineName validate if node name is same as CAPI machine name.

func ValidateWorkerNodeTaints added in v0.7.1

func ValidateWorkerNodeTaints(w v1alpha1.WorkerNodeGroupConfiguration, node corev1.Node) (err error)

func WithFluxGithubConfig added in v0.14.0

func WithFluxGithubConfig(opts ...api.FluxConfigOpt) api.ClusterConfigFiller

WithFluxGithubConfig returns ClusterConfigFiller that adds FluxConfig using the Github provider to the cluster config.

Types

type CloudStack added in v0.9.0

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

func NewCloudStack added in v0.9.0

func NewCloudStack(t *testing.T, opts ...CloudStackOpt) *CloudStack

func (*CloudStack) CleanupVMs added in v0.9.2

func (c *CloudStack) CleanupVMs(clusterName string) error

func (*CloudStack) ClusterConfigUpdates added in v0.14.0

func (c *CloudStack) ClusterConfigUpdates() []api.ClusterConfigFiller

ClusterConfigUpdates satisfies the test framework Provider.

func (*CloudStack) Name added in v0.9.0

func (c *CloudStack) Name() string

func (*CloudStack) Setup added in v0.9.0

func (c *CloudStack) Setup()

func (*CloudStack) UpdateKubeConfig added in v0.14.0

func (c *CloudStack) UpdateKubeConfig(content *[]byte, clusterName string) error

UpdateKubeConfig customizes generated kubeconfig for the provider.

func (*CloudStack) WithNewCloudStackWorkerNodeGroup added in v0.9.0

func (c *CloudStack) WithNewCloudStackWorkerNodeGroup(name string, workerNodeGroup *WorkerNodeGroup, fillers ...api.CloudStackMachineConfigFiller) ClusterE2ETestOpt

func (*CloudStack) WithProviderUpgrade added in v0.9.0

func (c *CloudStack) WithProviderUpgrade(fillers ...api.CloudStackFiller) ClusterE2ETestOpt

func (*CloudStack) WithProviderUpgradeGit added in v0.9.0

func (c *CloudStack) WithProviderUpgradeGit(fillers ...api.CloudStackFiller) ClusterE2ETestOpt

type CloudStackOpt added in v0.9.0

type CloudStackOpt func(*CloudStack)

func WithCloudStackFillers added in v0.9.0

func WithCloudStackFillers(fillers ...api.CloudStackFiller) CloudStackOpt

func WithCloudStackRedhat121 added in v0.9.0

func WithCloudStackRedhat121() CloudStackOpt

func WithCloudStackRedhat122 added in v0.14.0

func WithCloudStackRedhat122() CloudStackOpt

WithCloudStackRedhat122 returns a function which can be invoked to configure the Cloudstack object to be compatible with K8s 1.22.

func WithCloudStackRedhat123 added in v0.14.0

func WithCloudStackRedhat123() CloudStackOpt

WithCloudStackRedhat123 returns a function which can be invoked to configure the Cloudstack object to be compatible with K8s 1.23.

func WithCloudStackWorkerNodeGroup added in v0.9.0

func WithCloudStackWorkerNodeGroup(name string, workerNodeGroup *WorkerNodeGroup, fillers ...api.CloudStackMachineConfigFiller) CloudStackOpt

type ClusterE2ETest added in v0.6.1

type ClusterE2ETest struct {
	T                      T
	ClusterConfigLocation  string
	ClusterConfigFolder    string
	HardwareConfigLocation string
	HardwareCsvLocation    string
	TestHardware           map[string]*api.Hardware
	HardwarePool           map[string]*api.Hardware
	WithNoPowerActions     bool
	ClusterName            string
	ClusterConfig          *cluster.Config

	Provider Provider

	KubectlClient     *executables.Kubectl
	GitProvider       git.ProviderClient
	GitClient         git.Client
	HelmInstallConfig *HelmInstallConfig
	PackageConfig     *PackageConfig
	GitWriter         filewriter.FileWriter

	ExpectFailure bool
	// contains filtered or unexported fields
}

func NewClusterE2ETest added in v0.6.1

func NewClusterE2ETest(t T, provider Provider, opts ...ClusterE2ETestOpt) *ClusterE2ETest

NewClusterE2ETest is a support structure for defining an end-to-end test.

func (*ClusterE2ETest) ApplyClusterManifest added in v0.14.0

func (e *ClusterE2ETest) ApplyClusterManifest()

ApplyClusterManifest uses client-side logic to create/update objects defined in a cluster yaml manifest.

func (*ClusterE2ETest) ApplyPackageFile added in v0.14.0

func (e *ClusterE2ETest) ApplyPackageFile(packageName string, targetNamespace string, PackageFile []byte)

ApplyPackageFile is applying a package file in the cluster.

func (*ClusterE2ETest) ApplyPrometheusPackageServerDeploymentFile added in v0.14.0

func (e *ClusterE2ETest) ApplyPrometheusPackageServerDeploymentFile(packageName string, targetNamespace string)

ApplyPrometheusPackageServerDeploymentFile is checking if deployment config changes trigger resource reloads correctly.

func (*ClusterE2ETest) ApplyPrometheusPackageServerStatefulSetFile added in v0.14.0

func (e *ClusterE2ETest) ApplyPrometheusPackageServerStatefulSetFile(packageName string, targetNamespace string)

ApplyPrometheusPackageServerStatefulSetFile is checking if statefulset config changes trigger resource reloads correctly.

func (*ClusterE2ETest) BuildPackageConfigFile added in v0.12.1

func (e *ClusterE2ETest) BuildPackageConfigFile(packageName, prefix, ns string) string

BuildPackageConfigFile will create the file in the test directory for the curated package.

func (*ClusterE2ETest) CleanUpGitRepo added in v0.9.0

func (e *ClusterE2ETest) CleanUpGitRepo()

func (*ClusterE2ETest) CleanUpGithubRepo added in v0.6.1

func (e *ClusterE2ETest) CleanUpGithubRepo()

func (*ClusterE2ETest) CleanupDockerEnvironment added in v0.10.0

func (e *ClusterE2ETest) CleanupDockerEnvironment()

func (*ClusterE2ETest) CleanupVms added in v0.9.2

func (e *ClusterE2ETest) CleanupVms()

func (*ClusterE2ETest) Cluster added in v0.14.0

func (e *ClusterE2ETest) Cluster() *types.Cluster

Cluster builds a cluster obj using the ClusterE2ETest name and kubeconfig.

func (*ClusterE2ETest) CombinedAutoScalerMetricServerTest added in v0.14.0

func (e *ClusterE2ETest) CombinedAutoScalerMetricServerTest(autoscalerName string, metricServerName string, targetNamespace string, mgmtCluster *types.Cluster)

CombinedAutoScalerMetricServerTest verifies that new nodes are spun up after using a HPA to scale a deployment.

func (*ClusterE2ETest) CreateCluster added in v0.6.1

func (e *ClusterE2ETest) CreateCluster(opts ...CommandOpt)

func (*ClusterE2ETest) CreateNamespace added in v0.12.0

func (e *ClusterE2ETest) CreateNamespace(namespace string)

func (*ClusterE2ETest) CreateResource added in v0.12.0

func (e *ClusterE2ETest) CreateResource(ctx context.Context, resource string)

func (*ClusterE2ETest) CurlEndpointByBusyBox added in v0.14.0

func (e *ClusterE2ETest) CurlEndpointByBusyBox(endpoint string, namespace string) string

CurlEndpointByBusyBox creates a busybox pod with command to curl the target endpoint, and returns the created busybox pod name.

func (*ClusterE2ETest) DeleteCluster added in v0.6.1

func (e *ClusterE2ETest) DeleteCluster(opts ...CommandOpt)

func (*ClusterE2ETest) DeleteNamespace added in v0.12.0

func (e *ClusterE2ETest) DeleteNamespace(namespace string)

func (*ClusterE2ETest) DeleteVSphereCSI added in v0.12.0

func (e *ClusterE2ETest) DeleteVSphereCSI()

DeleteVSphereCSI removes the vsphere csi from the cluster.

func (*ClusterE2ETest) DeleteWorkloadClusterFromGit added in v0.14.0

func (e *ClusterE2ETest) DeleteWorkloadClusterFromGit(w *WorkloadCluster)

DeleteWorkloadClusterFromGit deletes a workload cluster config file and pushes the changes to git.

func (*ClusterE2ETest) DownloadArtifacts added in v0.9.0

func (e *ClusterE2ETest) DownloadArtifacts(opts ...CommandOpt)

func (*ClusterE2ETest) GenerateClusterConfig added in v0.6.1

func (e *ClusterE2ETest) GenerateClusterConfig(opts ...CommandOpt)

func (*ClusterE2ETest) GenerateClusterConfigForVersion added in v0.7.0

func (e *ClusterE2ETest) GenerateClusterConfigForVersion(eksaVersion string, opts ...CommandOpt)

func (*ClusterE2ETest) GenerateHardwareConfig added in v0.8.0

func (e *ClusterE2ETest) GenerateHardwareConfig(opts ...CommandOpt)

func (*ClusterE2ETest) GetCapiMachinesForCluster added in v0.12.0

func (e *ClusterE2ETest) GetCapiMachinesForCluster(clusterName string) map[string]types.Machine

func (*ClusterE2ETest) GetEKSACluster added in v0.14.0

func (e *ClusterE2ETest) GetEKSACluster() *v1alpha1.Cluster

GetEKSACluster retrieves the EKSA cluster from the runtime environment using kubectl.

func (*ClusterE2ETest) GetEksaVSphereMachineConfigs added in v0.6.1

func (e *ClusterE2ETest) GetEksaVSphereMachineConfigs() []v1alpha1.VSphereMachineConfig

func (*ClusterE2ETest) GetHardwarePool added in v0.8.0

func (e *ClusterE2ETest) GetHardwarePool() map[string]*api.Hardware

func (*ClusterE2ETest) ImportImages added in v0.6.1

func (e *ClusterE2ETest) ImportImages(opts ...CommandOpt)

func (*ClusterE2ETest) InstallAutoScalerWithMetricServer added in v0.14.0

func (e *ClusterE2ETest) InstallAutoScalerWithMetricServer(targetNamespace string)

InstallAutoScalerWithMetricServer installs autoscaler and metrics-server with a given target namespace.

func (*ClusterE2ETest) InstallCuratedPackage added in v0.9.2

func (e *ClusterE2ETest) InstallCuratedPackage(packageName, packagePrefix, kubeconfig string, opts ...string)

InstallCuratedPackage will install a curated package.

func (*ClusterE2ETest) InstallCuratedPackageFile added in v0.12.1

func (e *ClusterE2ETest) InstallCuratedPackageFile(packageFile, kubeconfig string, opts ...string)

InstallCuratedPackageFile will install a curated package from a yaml file, this is useful since target namespace isn't supported on the CLI.

func (*ClusterE2ETest) InstallCuratedPackagesController added in v0.9.2

func (e *ClusterE2ETest) InstallCuratedPackagesController()

func (*ClusterE2ETest) InstallHelmChart added in v0.9.0

func (e *ClusterE2ETest) InstallHelmChart()

func (*ClusterE2ETest) InstallLocalStorageProvisioner added in v0.11.0

func (e *ClusterE2ETest) InstallLocalStorageProvisioner()

func (*ClusterE2ETest) MatchLogs added in v0.14.0

func (e *ClusterE2ETest) MatchLogs(targetNamespace string, targetPodName string,
	targetContainerName string, expectedLogs string, timeout time.Duration,
)

MatchLogs matches the log from a container to the expected content. Given it takes time for logs to be populated, a retrier with configurable timeout duration is added.

func (*ClusterE2ETest) NewGitTools added in v0.9.0

func (e *ClusterE2ETest) NewGitTools(ctx context.Context, cluster *v1alpha1.Cluster, fluxConfig *v1alpha1.FluxConfig, writer filewriter.FileWriter, repoPath string) (*gitFactory.GitTools, error)

func (*ClusterE2ETest) PXEBootHardware added in v0.10.0

func (e *ClusterE2ETest) PXEBootHardware()

func (*ClusterE2ETest) PowerOffHardware added in v0.8.0

func (e *ClusterE2ETest) PowerOffHardware()

func (*ClusterE2ETest) PowerOnHardware added in v0.9.0

func (e *ClusterE2ETest) PowerOnHardware()

func (*ClusterE2ETest) PushWorkloadClusterToGit added in v0.14.0

func (e *ClusterE2ETest) PushWorkloadClusterToGit(w *WorkloadCluster, opts ...api.ClusterConfigFiller)

PushWorkloadClusterToGit builds the workload cluster config file for git and pushing changes to git.

func (*ClusterE2ETest) Run added in v0.6.1

func (e *ClusterE2ETest) Run(name string, args ...string)

func (*ClusterE2ETest) RunClusterFlowWithGitOps added in v0.9.0

func (e *ClusterE2ETest) RunClusterFlowWithGitOps(clusterOpts ...ClusterE2ETestOpt)

func (*ClusterE2ETest) RunConformanceTests added in v0.6.1

func (e *ClusterE2ETest) RunConformanceTests()

func (*ClusterE2ETest) RunEKSA added in v0.6.1

func (e *ClusterE2ETest) RunEKSA(args []string, opts ...CommandOpt)

func (*ClusterE2ETest) SetPackageBundleActive added in v0.12.1

func (e *ClusterE2ETest) SetPackageBundleActive()

SetPackageBundleActive will set the current packagebundle to the active state.

func (*ClusterE2ETest) StopIfFailed added in v0.6.1

func (e *ClusterE2ETest) StopIfFailed()

func (*ClusterE2ETest) TestEmissaryPackageRouting added in v0.13.0

func (e *ClusterE2ETest) TestEmissaryPackageRouting(name string, mgmtCluster *types.Cluster)

TestEmissaryPackageRouting is checking if emissary is able to create Ingress, host, and mapping that function correctly.

func (*ClusterE2ETest) UninstallCuratedPackage added in v0.12.0

func (e *ClusterE2ETest) UninstallCuratedPackage(packagePrefix string, opts ...string)

func (*ClusterE2ETest) UpdateClusterConfig added in v0.14.0

func (e *ClusterE2ETest) UpdateClusterConfig(fillers ...api.ClusterConfigFiller)

UpdateClusterConfig applies the cluster Config provided updates to e.ClusterConfig, marshalls its content to yaml and writes it to a file on disk configured by e.ClusterConfigLocation. Call this method when you want make changes to the eks-a cluster definition before running a CLI command or API operation.

func (*ClusterE2ETest) UpgradeCluster added in v0.6.1

func (e *ClusterE2ETest) UpgradeCluster(clusterOpts []ClusterE2ETestOpt, commandOpts ...CommandOpt)

func (*ClusterE2ETest) UpgradeClusterWithKubectl added in v0.14.0

func (e *ClusterE2ETest) UpgradeClusterWithKubectl(fillers ...api.ClusterConfigFiller)

UpgradeClusterWithKubectl uses client-side logic to upgrade a cluster.

func (*ClusterE2ETest) UpgradeWithGitOps added in v0.7.1

func (e *ClusterE2ETest) UpgradeWithGitOps(clusterOpts ...ClusterE2ETestOpt)

func (*ClusterE2ETest) ValidateAWSIamAuth added in v0.6.1

func (e *ClusterE2ETest) ValidateAWSIamAuth()

func (*ClusterE2ETest) ValidateCluster added in v0.6.1

func (e *ClusterE2ETest) ValidateCluster(kubeVersion v1alpha1.KubernetesVersion)

func (*ClusterE2ETest) ValidateClusterDelete added in v0.14.0

func (e *ClusterE2ETest) ValidateClusterDelete()

ValidateClusterDelete verifies the cluster has been deleted.

func (*ClusterE2ETest) ValidateClusterState added in v0.14.0

func (e *ClusterE2ETest) ValidateClusterState()

ValidateClusterState runs a set of validations against the cluster to identify an invalid cluster state.

func (*ClusterE2ETest) ValidateControlPlaneNodes added in v0.7.1

func (e *ClusterE2ETest) ValidateControlPlaneNodes(validations ...ControlPlaneNodeValidation)

ValidateControlPlaneNodes deduces the control plane configuration to node mapping and for each configuration/node pair executes the provided validation functions.

func (*ClusterE2ETest) ValidateEndpointContent added in v0.14.0

func (e *ClusterE2ETest) ValidateEndpointContent(endpoint string, namespace string, expectedContent string)

ValidateEndpointContent validates the contents at the target endpoint.

func (*ClusterE2ETest) ValidateFlux added in v0.6.1

func (e *ClusterE2ETest) ValidateFlux()

func (*ClusterE2ETest) ValidateHardwareDecommissioned added in v0.8.0

func (e *ClusterE2ETest) ValidateHardwareDecommissioned()

func (*ClusterE2ETest) ValidateOIDC added in v0.6.1

func (e *ClusterE2ETest) ValidateOIDC()

func (*ClusterE2ETest) ValidateVSphereCSI added in v0.12.0

func (e *ClusterE2ETest) ValidateVSphereCSI(installed bool)

ValidateVSphereCSI checks whether vsphere csi exists as expected or not.

func (*ClusterE2ETest) ValidateWorkerNodes added in v0.7.1

func (e *ClusterE2ETest) ValidateWorkerNodes(workerNodeValidations ...WorkerNodeValidation)

ValidateWorkerNodes deduces the worker node group configuration to node mapping and for each configuration/node pair executes the provided validation functions.

func (*ClusterE2ETest) VerifyAdotPackageDaemonSetUpdated added in v0.13.0

func (e *ClusterE2ETest) VerifyAdotPackageDaemonSetUpdated(packageName string, targetNamespace string)

VerifyAdotPackageDaemonSetUpdated is checking if daemonset config changes trigger resource reloads correctly.

func (*ClusterE2ETest) VerifyAdotPackageDeploymentUpdated added in v0.13.0

func (e *ClusterE2ETest) VerifyAdotPackageDeploymentUpdated(packageName string, targetNamespace string)

VerifyAdotPackageDeploymentUpdated is checking if deployment config changes trigger resource reloads correctly.

func (*ClusterE2ETest) VerifyAdotPackageInstalled added in v0.13.0

func (e *ClusterE2ETest) VerifyAdotPackageInstalled(packageName string, targetNamespace string)

VerifyAdotPackageInstalled is checking if the ADOT package gets installed correctly.

func (*ClusterE2ETest) VerifyAutoScalerPackageInstalled added in v0.14.0

func (e *ClusterE2ETest) VerifyAutoScalerPackageInstalled(name string, targetNamespace string, mgmtCluster *types.Cluster)

VerifyAutoScalerPackageInstalled is verifying that the autoscaler package is installed and deployed.

func (*ClusterE2ETest) VerifyEmissaryPackageInstalled added in v0.13.0

func (e *ClusterE2ETest) VerifyEmissaryPackageInstalled(name string, mgmtCluster *types.Cluster)

VerifyEmissaryPackageInstalled is checking if emissary package gets installed correctly.

func (*ClusterE2ETest) VerifyHarborPackageInstalled added in v0.11.0

func (e *ClusterE2ETest) VerifyHarborPackageInstalled(prefix string, namespace string)

VerifyHarborPackageInstalled is checking if the harbor package gets installed correctly.

func (*ClusterE2ETest) VerifyHelloPackageInstalled added in v0.9.2

func (e *ClusterE2ETest) VerifyHelloPackageInstalled(name string, mgmtCluster *types.Cluster)

VerifyHelloPackageInstalled is checking if the hello eks anywhere package gets installed correctly.

func (*ClusterE2ETest) VerifyMetricServerPackageInstalled added in v0.14.0

func (e *ClusterE2ETest) VerifyMetricServerPackageInstalled(name string, targetNamespace string, mgmtCluster *types.Cluster)

VerifyMetricServerPackageInstalled is verifying that metrics-server is installed and deployed.

func (*ClusterE2ETest) VerifyPackageControllerNotInstalled added in v0.13.0

func (e *ClusterE2ETest) VerifyPackageControllerNotInstalled()

VerifyPackageControllerNotInstalled is verifying that package controller is not installed.

func (*ClusterE2ETest) VerifyPrometheusNodeExporterStates added in v0.13.1

func (e *ClusterE2ETest) VerifyPrometheusNodeExporterStates(packageName string, targetNamespace string)

VerifyPrometheusNodeExporterStates is checking if the Prometheus package node-exporter component is functioning properly.

func (*ClusterE2ETest) VerifyPrometheusPackageInstalled added in v0.13.1

func (e *ClusterE2ETest) VerifyPrometheusPackageInstalled(packageName string, targetNamespace string)

VerifyPrometheusPackageInstalled is checking if the Prometheus package gets installed correctly.

func (*ClusterE2ETest) VerifyPrometheusPrometheusServerStates added in v0.13.1

func (e *ClusterE2ETest) VerifyPrometheusPrometheusServerStates(packageName string, targetNamespace string, mode string)

VerifyPrometheusPrometheusServerStates is checking if the Prometheus package prometheus-server component is functioning properly.

func (*ClusterE2ETest) WaitForControlPlaneReady added in v0.7.0

func (e *ClusterE2ETest) WaitForControlPlaneReady()

func (*ClusterE2ETest) WaitForMachineDeploymentReady added in v0.12.0

func (e *ClusterE2ETest) WaitForMachineDeploymentReady(machineDeploymentName string)

func (*ClusterE2ETest) WithCluster added in v0.9.2

func (e *ClusterE2ETest) WithCluster(f func(e *ClusterE2ETest))

WithCluster helps with bringing up and tearing down E2E test clusters.

func (*ClusterE2ETest) WithClusterConfig added in v0.14.0

func (e *ClusterE2ETest) WithClusterConfig(fillers ...api.ClusterConfigFiller) *ClusterE2ETest

WithClusterConfig generates a base cluster config using the CLI `generate clusterconfig` command and updates them with the provided fillers. Helpful for defining the initial Cluster config before running a create operation.

func (*ClusterE2ETest) WithPersistentCluster added in v0.12.0

func (e *ClusterE2ETest) WithPersistentCluster(f func(e *ClusterE2ETest))

Like WithCluster but does not delete the cluster. Useful for debugging.

type ClusterE2ETestOpt added in v0.6.1

type ClusterE2ETestOpt func(e *ClusterE2ETest)

func ExpectFailure added in v0.11.1

func ExpectFailure(expected bool) ClusterE2ETestOpt

func WithAWSIam added in v0.6.1

func WithAWSIam() ClusterE2ETestOpt

func WithClusterConfigLocationOverride

func WithClusterConfigLocationOverride(path string) ClusterE2ETestOpt

func WithClusterFiller

func WithClusterFiller(f ...api.ClusterFiller) ClusterE2ETestOpt

func WithClusterName added in v0.14.0

func WithClusterName(name string) ClusterE2ETestOpt

WithClusterName sets the name that will be used for the cluster. This will drive both the name of the eks-a cluster config objects as well as the cluster config file name.

func WithClusterSingleNode added in v0.13.0

func WithClusterSingleNode(v v1alpha1.KubernetesVersion) ClusterE2ETestOpt

WithClusterSingleNode helps to create an e2e test option for a single node cluster.

func WithClusterUpgrade

func WithClusterUpgrade(fillers ...api.ClusterFiller) ClusterE2ETestOpt

func WithClusterUpgradeGit added in v0.7.1

func WithClusterUpgradeGit(fillers ...api.ClusterFiller) ClusterE2ETestOpt

func WithControlPlaneHardware added in v0.9.2

func WithControlPlaneHardware(requiredCount int) ClusterE2ETestOpt

func WithCustomLabelHardware added in v0.9.2

func WithCustomLabelHardware(requiredCount int, label string) ClusterE2ETestOpt

func WithEksaVersion added in v0.6.1

func WithEksaVersion(version *semver.Version) ClusterE2ETestOpt

func WithEnvVar added in v0.8.0

func WithEnvVar(key, val string) ClusterE2ETestOpt

func WithExternalEtcdHardware added in v0.9.2

func WithExternalEtcdHardware(requiredCount int) ClusterE2ETestOpt

func WithFluxGit added in v0.9.0

func WithFluxGit(opts ...api.FluxConfigOpt) ClusterE2ETestOpt

func WithFluxGithub added in v0.9.0

func WithFluxGithub(opts ...api.FluxConfigOpt) ClusterE2ETestOpt

func WithFluxGithubCleanup added in v0.14.0

func WithFluxGithubCleanup() ClusterE2ETestOpt

WithFluxGithubCleanup returns a ClusterE2ETestOpt that registers the git repository cleanup operation.

func WithFluxGithubEnvVarCheck added in v0.14.0

func WithFluxGithubEnvVarCheck() ClusterE2ETestOpt

WithFluxGithubEnvVarCheck returns a ClusterE2ETestOpt that checks for the required env vars.

func WithFluxLegacy added in v0.9.0

func WithFluxLegacy(opts ...api.GitOpsConfigOpt) ClusterE2ETestOpt

func WithHelmInstallConfig added in v0.9.0

func WithHelmInstallConfig(t *testing.T, chartName, chartURI, chartVersion string, chartValues []string) ClusterE2ETestOpt

func WithLatestMinorReleaseFromMain added in v0.6.1

func WithLatestMinorReleaseFromMain() ClusterE2ETestOpt

func WithLatestMinorReleaseFromVersion added in v0.6.1

func WithLatestMinorReleaseFromVersion(version *semver.Version) ClusterE2ETestOpt

func WithNoPowerActions added in v0.10.0

func WithNoPowerActions() ClusterE2ETestOpt

func WithOIDC

func WithOIDC() ClusterE2ETestOpt

func WithPackageConfig added in v0.9.2

func WithPackageConfig(t *testing.T, bundleURI, chartName, chartURI,
	chartVersion string, chartValues []string,
) ClusterE2ETestOpt

func WithProxy added in v0.6.0

func WithProxy(requiredEnvVars ProxyRequiredEnvVars) ClusterE2ETestOpt

func WithRegistryMirrorEndpointAndCert added in v0.6.0

func WithRegistryMirrorEndpointAndCert(providerName string) ClusterE2ETestOpt

func WithWorkerHardware added in v0.9.2

func WithWorkerHardware(requiredCount int) ClusterE2ETestOpt

type ClusterValidation added in v0.14.0

type ClusterValidation = func(ctx context.Context, vc ClusterValidatorConfig) error

ClusterValidation defines a validation that can be registered to the ClusterValidator.

type ClusterValidator added in v0.14.0

type ClusterValidator struct {
	Config ClusterValidatorConfig
	// contains filtered or unexported fields
}

ClusterValidator is responsible for checking if a cluster is valid against the spec that is provided.

func NewClusterValidator added in v0.14.0

func NewClusterValidator(opts ...ClusterValidatorOpt) *ClusterValidator

NewClusterValidator returns a cluster validator which can be configured by passing ClusterValidatorOpt arguments.

func (*ClusterValidator) Reset added in v0.14.0

func (c *ClusterValidator) Reset()

Reset clears the registered validations.

func (*ClusterValidator) Validate added in v0.14.0

func (c *ClusterValidator) Validate(ctx context.Context) error

Validate runs through the set registered validations and returns an error if any of them fail after a number of retries.

func (*ClusterValidator) WithClusterDoesNotExist added in v0.14.0

func (c *ClusterValidator) WithClusterDoesNotExist()

WithClusterDoesNotExist registers a validation to check that a cluster does not exist or has been deleted.

func (*ClusterValidator) WithExpectedObjectsExist added in v0.14.0

func (c *ClusterValidator) WithExpectedObjectsExist()

WithExpectedObjectsExist registers a set of validations for the existence of various cluster objects.

func (*ClusterValidator) WithValidation added in v0.14.0

func (c *ClusterValidator) WithValidation(validation ClusterValidation, backoffPeriod time.Duration, maxRetries int)

WithValidation registers a validation to the ClusterValidator that will be run when Validate is called.

func (*ClusterValidator) WithWorkloadClusterValidations added in v0.14.0

func (c *ClusterValidator) WithWorkloadClusterValidations()

WithWorkloadClusterValidations registers a validation set for a workload cluster.

type ClusterValidatorConfig added in v0.14.0

type ClusterValidatorConfig struct {
	ClusterClient           client.Client // the client for the cluster
	ManagementClusterClient client.Client // the client for the management cluster
	ClusterSpec             *cluster.Spec // the cluster spec
}

ClusterValidatorConfig holds the data required to perform validations on a cluster.

type ClusterValidatorOpt added in v0.14.0

type ClusterValidatorOpt = func(cv *ClusterValidator)

ClusterValidatorOpt is a function that receives a ClusterValidator to be customized.

type CommandOpt added in v0.6.1

type CommandOpt func(*string, *[]string) (err error)

func ExecuteWithEksaRelease added in v0.7.0

func ExecuteWithEksaRelease(release *releasev1alpha1.EksARelease) CommandOpt

func WithControlPlaneWaitTimeout added in v0.12.0

func WithControlPlaneWaitTimeout(timeout string) CommandOpt

func WithExternalEtcdWaitTimeout added in v0.12.0

func WithExternalEtcdWaitTimeout(timeout string) CommandOpt

func WithForce added in v0.9.0

func WithForce() CommandOpt

func WithPerMachineWaitTimeout added in v0.12.0

func WithPerMachineWaitTimeout(timeout string) CommandOpt

type ControlPlaneNodeValidation added in v0.7.1

type ControlPlaneNodeValidation func(configuration v1alpha1.ControlPlaneConfiguration, node corev1.Node) (err error)

ControlPlaneNodeValidation should return an error if either an error is encountered during execution or the validation logically fails. This validation function will be executed by ValidateControlPlaneNodes with a Control Plane configuration and a corresponding node which was created as a part of that configuration.

type Docker

type Docker struct {
	executables.Docker
	// contains filtered or unexported fields
}

Docker is a Provider for running end-to-end tests.

func NewDocker

func NewDocker(t *testing.T) *Docker

NewDocker creates a new Docker object implementing the Provider interface for testing.

func (*Docker) CleanupVMs added in v0.9.2

func (d *Docker) CleanupVMs(_ string) error

CleanupVMs implements the Provider interface.

func (*Docker) ClusterConfigUpdates added in v0.14.0

func (d *Docker) ClusterConfigUpdates() []api.ClusterConfigFiller

ClusterConfigUpdates satisfies the test framework Provider.

func (*Docker) Name

func (d *Docker) Name() string

Name implements the Provider interface.

func (*Docker) Setup

func (d *Docker) Setup()

Setup implements the Provider interface.

func (*Docker) UpdateKubeConfig added in v0.14.0

func (d *Docker) UpdateKubeConfig(content *[]byte, clusterName string) error

UpdateKubeConfig customizes generated kubeconfig by replacing the server value with correct host and the docker LB port. This is required for the docker provider.

func (*Docker) WithProviderUpgradeGit added in v0.8.0

func (d *Docker) WithProviderUpgradeGit() ClusterE2ETestOpt

func (*Docker) WithWorkerNodeGroup added in v0.14.0

func (d *Docker) WithWorkerNodeGroup(workerNodeGroup *WorkerNodeGroup) api.ClusterConfigFiller

WithWorkerNodeGroup returns an api.ClusterFiller that adds a new workerNodeGroupConfiguration and a corresponding DockerMachineConfig to the cluster config.

type HelmInstallConfig added in v0.9.0

type HelmInstallConfig struct {
	HelmClient *executables.Helm
	// contains filtered or unexported fields
}

type LoggingOnlyT added in v0.14.0

type LoggingOnlyT struct{}

LoggingOnlyT implements select logging and error handling functionality of T.

Most non-logging, non-error reporting methods will simply panic.

func NewLoggingOnlyT added in v0.14.0

func NewLoggingOnlyT() *LoggingOnlyT

NewLoggingOnlyT creates a LoggingOnlyT, which does what its name implies.

func (LoggingOnlyT) Cleanup added in v0.14.0

func (t LoggingOnlyT) Cleanup(_ func())

Cleanup implements T.

func (LoggingOnlyT) Error added in v0.14.0

func (t LoggingOnlyT) Error(_ ...any)

Error implements T.

func (LoggingOnlyT) Errorf added in v0.14.0

func (t LoggingOnlyT) Errorf(_ string, _ ...any)

Errorf implements T.

func (LoggingOnlyT) Fail added in v0.14.0

func (t LoggingOnlyT) Fail()

Fail implements T.

func (LoggingOnlyT) FailNow added in v0.14.0

func (t LoggingOnlyT) FailNow()

FailNow implements T.

func (LoggingOnlyT) Failed added in v0.14.0

func (t LoggingOnlyT) Failed() bool

Failed implements T.

func (LoggingOnlyT) Fatal added in v0.14.0

func (t LoggingOnlyT) Fatal(_ ...any)

Fatal implements T.

func (LoggingOnlyT) Fatalf added in v0.14.0

func (t LoggingOnlyT) Fatalf(format string, args ...any)

Fatalf implements T.

func (LoggingOnlyT) Helper added in v0.14.0

func (t LoggingOnlyT) Helper()

Helper implements T.

func (LoggingOnlyT) Log added in v0.14.0

func (t LoggingOnlyT) Log(args ...any)

Log implements T.

func (LoggingOnlyT) Logf added in v0.14.0

func (t LoggingOnlyT) Logf(format string, args ...any)

Logf implements T.

func (LoggingOnlyT) Name added in v0.14.0

func (t LoggingOnlyT) Name() string

Name implements T.

func (LoggingOnlyT) Parallel added in v0.14.0

func (t LoggingOnlyT) Parallel()

Parallel implements T.

func (LoggingOnlyT) Run added in v0.14.0

func (t LoggingOnlyT) Run(_ string, _ func(*testing.T)) bool

Run implements T.

func (LoggingOnlyT) Setenv added in v0.14.0

func (t LoggingOnlyT) Setenv(_ string, _ string)

Setenv implements T.

func (LoggingOnlyT) Skip added in v0.14.0

func (t LoggingOnlyT) Skip(_ ...any)

Skip implements T.

func (LoggingOnlyT) SkipNow added in v0.14.0

func (t LoggingOnlyT) SkipNow()

SkipNow implements T.

func (LoggingOnlyT) Skipf added in v0.14.0

func (t LoggingOnlyT) Skipf(_ string, _ ...any)

Skipf implements T.

func (LoggingOnlyT) Skipped added in v0.14.0

func (t LoggingOnlyT) Skipped() bool

Skipped implements T.

func (LoggingOnlyT) TempDir added in v0.14.0

func (t LoggingOnlyT) TempDir() string

TempDir implements T.

type MulticlusterE2ETest added in v0.6.1

type MulticlusterE2ETest struct {
	T                 *testing.T
	ManagementCluster *ClusterE2ETest
	WorkloadClusters  WorkloadClusters
	// MaxConcurrentWorkers defines the max number of workers for concurrent operations.
	// If it's -1, it will use one worker per job.
	MaxConcurrentWorkers int
	// PersistentManagementCluster avoids creating a management cluster if it finds a kubeconfig
	// in the cluster folder. Useful for local development of tests.
	PersistentManagementCluster bool
	// contains filtered or unexported fields
}

func NewMulticlusterE2ETest added in v0.6.1

func NewMulticlusterE2ETest(t *testing.T, managementCluster *ClusterE2ETest, workloadClusters ...*ClusterE2ETest) *MulticlusterE2ETest

func (*MulticlusterE2ETest) CreateManagementCluster added in v0.6.1

func (m *MulticlusterE2ETest) CreateManagementCluster(opts ...CommandOpt)

func (*MulticlusterE2ETest) CreateManagementClusterForVersion added in v0.12.0

func (m *MulticlusterE2ETest) CreateManagementClusterForVersion(eksaVersion string, opts ...CommandOpt)

func (*MulticlusterE2ETest) CreateManagementClusterWithConfig added in v0.14.0

func (m *MulticlusterE2ETest) CreateManagementClusterWithConfig(opts ...CommandOpt)

CreateManagementClusterWithConfig first generates a cluster config based on the management cluster test's previous configuration and proceeds to create a management cluster with the CLI.

func (*MulticlusterE2ETest) CreateTinkerbellManagementCluster added in v0.13.0

func (m *MulticlusterE2ETest) CreateTinkerbellManagementCluster(opts ...CommandOpt)

CreateTinkerbellManagementCluster runs tinkerbell related steps for cluster creation.

func (*MulticlusterE2ETest) DeleteManagementCluster added in v0.6.1

func (m *MulticlusterE2ETest) DeleteManagementCluster()

func (*MulticlusterE2ETest) DeleteTinkerbellManagementCluster added in v0.13.0

func (m *MulticlusterE2ETest) DeleteTinkerbellManagementCluster()

DeleteTinkerbellManagementCluster runs tinkerbell related steps for cluster deletion.

func (*MulticlusterE2ETest) DeleteWorkloadClusterFromGit added in v0.14.0

func (m *MulticlusterE2ETest) DeleteWorkloadClusterFromGit(w *WorkloadCluster)

DeleteWorkloadClusterFromGit deletes a workload cluster config file and pushes the changes to git.

func (*MulticlusterE2ETest) NewWorkloadClusterName added in v0.14.0

func (m *MulticlusterE2ETest) NewWorkloadClusterName() string

NewWorkloadClusterName returns a new unique name for a workload cluster based on the management cluster name. This is not thread safe.

func (*MulticlusterE2ETest) PushWorkloadClusterToGit added in v0.14.0

func (m *MulticlusterE2ETest) PushWorkloadClusterToGit(w *WorkloadCluster, opts ...api.ClusterConfigFiller)

PushWorkloadClusterToGit builds the workload cluster config file for git and pushing changes to git.

func (*MulticlusterE2ETest) RunConcurrently added in v0.14.0

func (m *MulticlusterE2ETest) RunConcurrently(flows ...func())

RunConcurrently runs the given jobs concurrently using no more than MaxConcurrentWorkers workers. If MaxConcurrentWorkers is -1, it will use one worker per job.

func (*MulticlusterE2ETest) RunConcurrentlyInWorkloadClusters added in v0.14.0

func (m *MulticlusterE2ETest) RunConcurrentlyInWorkloadClusters(flow func(*WorkloadCluster))

RunConcurrentlyInWorkloadClusters executes the given flow concurrently for all workload clusters. It respects MaxConcurrentWorkers.

func (*MulticlusterE2ETest) RunInWorkloadClusters added in v0.6.1

func (m *MulticlusterE2ETest) RunInWorkloadClusters(flow func(*WorkloadCluster))

func (*MulticlusterE2ETest) WithWorkloadClusters added in v0.14.0

func (m *MulticlusterE2ETest) WithWorkloadClusters(workloadClusters ...*ClusterE2ETest)

WithWorkloadClusters adds ClusterE2ETest's as workload clusters to the test.

type Nutanix added in v0.12.0

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

func NewNutanix added in v0.12.0

func NewNutanix(t *testing.T, opts ...NutanixOpt) *Nutanix

func (*Nutanix) CleanupVMs added in v0.12.0

func (s *Nutanix) CleanupVMs(clustername string) error

CleanupVMs satisfies the test framework Provider.

func (*Nutanix) ClusterConfigUpdates added in v0.14.0

func (s *Nutanix) ClusterConfigUpdates() []api.ClusterConfigFiller

ClusterConfigUpdates satisfies the test framework Provider.

func (*Nutanix) Name added in v0.12.0

func (s *Nutanix) Name() string

func (*Nutanix) Setup added in v0.12.0

func (s *Nutanix) Setup()

func (*Nutanix) UpdateKubeConfig added in v0.14.0

func (s *Nutanix) UpdateKubeConfig(content *[]byte, clusterName string) error

UpdateKubeConfig customizes generated kubeconfig for the provider.

func (*Nutanix) WithProviderUpgrade added in v0.12.0

func (s *Nutanix) WithProviderUpgrade(fillers ...api.NutanixFiller) ClusterE2ETestOpt

type NutanixOpt added in v0.12.0

type NutanixOpt func(*Nutanix)

func WithPrismElementClusterUUID added in v0.13.0

func WithPrismElementClusterUUID() NutanixOpt

WithPrismElementClusterUUID returns a NutanixOpt that adds API fillers to use a PE Cluster UUID.

func WithSubnetUUID added in v0.13.0

func WithSubnetUUID() NutanixOpt

WithSubnetUUID returns a NutanixOpt that adds API fillers to use a Subnet UUID.

func WithUbuntu121Nutanix added in v0.13.0

func WithUbuntu121Nutanix() NutanixOpt

WithUbuntu121Nutanix returns a NutanixOpt that adds API fillers to use a Ubuntu Nutanix template for k8s 1.21 and the "ubuntu" osFamily in all machine configs.

func WithUbuntu121NutanixUUID added in v0.13.0

func WithUbuntu121NutanixUUID() NutanixOpt

WithUbuntu121NutanixUUID returns a NutanixOpt that adds API fillers to use a Ubuntu Nutanix template UUID for k8s 1.21 and the "ubuntu" osFamily in all machine configs.

func WithUbuntu122Nutanix added in v0.13.0

func WithUbuntu122Nutanix() NutanixOpt

WithUbuntu122Nutanix returns a NutanixOpt that adds API fillers to use a Ubuntu Nutanix template for k8s 1.22 and the "ubuntu" osFamily in all machine configs.

func WithUbuntu122NutanixUUID added in v0.13.0

func WithUbuntu122NutanixUUID() NutanixOpt

WithUbuntu122NutanixUUID returns a NutanixOpt that adds API fillers to use a Ubuntu Nutanix template UUID for k8s 1.22 and the "ubuntu" osFamily in all machine configs.

func WithUbuntu123Nutanix added in v0.13.0

func WithUbuntu123Nutanix() NutanixOpt

WithUbuntu123Nutanix returns a NutanixOpt that adds API fillers to use a Ubuntu Nutanix template for k8s 1.23 and the "ubuntu" osFamily in all machine configs.

func WithUbuntu123NutanixUUID added in v0.13.0

func WithUbuntu123NutanixUUID() NutanixOpt

WithUbuntu123NutanixUUID returns a NutanixOpt that adds API fillers to use a Ubuntu Nutanix template UUID for k8s 1.23 and the "ubuntu" osFamily in all machine configs.

func WithUbuntu124Nutanix added in v0.13.0

func WithUbuntu124Nutanix() NutanixOpt

WithUbuntu124Nutanix returns a NutanixOpt that adds API fillers to use a Ubuntu Nutanix template for k8s 1.24 and the "ubuntu" osFamily in all machine configs.

func WithUbuntu124NutanixUUID added in v0.13.0

func WithUbuntu124NutanixUUID() NutanixOpt

WithUbuntu124NutanixUUID returns a NutanixOpt that adds API fillers to use a Ubuntu Nutanix template UUID for k8s 1.24 and the "ubuntu" osFamily in all machine configs.

type PackageConfig added in v0.9.2

type PackageConfig struct {
	*HelmInstallConfig
	// contains filtered or unexported fields
}

type Provider

type Provider interface {
	Name() string
	// ClusterConfigUpdates allows a provider to modify the default cluster config
	// after this one is generated for the first time. This is not reapplied on every CLI operation.
	// Prefer to call UpdateClusterConfig directly from the tests to make it more explicit.
	ClusterConfigUpdates() []api.ClusterConfigFiller
	Setup()
	CleanupVMs(clusterName string) error
	UpdateKubeConfig(content *[]byte, clusterName string) error
}

type ProxyRequiredEnvVars added in v0.11.0

type ProxyRequiredEnvVars struct {
	HttpProxy  string
	HttpsProxy string
	NoProxy    string
}

type Snow added in v0.9.0

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

func NewSnow added in v0.9.0

func NewSnow(t *testing.T, opts ...SnowOpt) *Snow

func (*Snow) CleanupVMs added in v0.9.2

func (s *Snow) CleanupVMs(_ string) error

CleanupVMs satisfies the test framework Provider.

func (*Snow) ClusterConfigUpdates added in v0.14.0

func (s *Snow) ClusterConfigUpdates() []api.ClusterConfigFiller

ClusterConfigUpdates satisfies the test framework Provider.

func (*Snow) Name added in v0.9.0

func (s *Snow) Name() string

func (*Snow) Setup added in v0.9.0

func (s *Snow) Setup()

func (*Snow) UpdateKubeConfig added in v0.14.0

func (s *Snow) UpdateKubeConfig(content *[]byte, clusterName string) error

UpdateKubeConfig customizes generated kubeconfig for the provider.

func (*Snow) WithNewSnowWorkerNodeGroup added in v0.11.0

func (s *Snow) WithNewSnowWorkerNodeGroup(name string, workerNodeGroup *WorkerNodeGroup, fillers ...api.SnowMachineConfigFiller) ClusterE2ETestOpt

WithNewSnowWorkerNodeGroup updates the test cluster Config with the fillers for an specific snow worker node group. It applies the fillers in WorkerNodeGroup to the named worker node group and the ones for the corresponding SnowMachineConfig.

func (*Snow) WithProviderUpgrade added in v0.11.0

func (s *Snow) WithProviderUpgrade(fillers ...api.SnowFiller) ClusterE2ETestOpt

type SnowOpt added in v0.9.0

type SnowOpt func(*Snow)

func WithSnowUbuntu121 added in v0.9.0

func WithSnowUbuntu121() SnowOpt

func WithSnowUbuntu122 added in v0.11.0

func WithSnowUbuntu122() SnowOpt

func WithSnowUbuntu123 added in v0.11.0

func WithSnowUbuntu123() SnowOpt

func WithSnowWorkerNodeGroup added in v0.11.0

func WithSnowWorkerNodeGroup(name string, workerNodeGroup *WorkerNodeGroup, fillers ...api.SnowMachineConfigFiller) SnowOpt

type T added in v0.14.0

type T interface {
	Cleanup(func())
	Error(...any)
	Errorf(string, ...any)
	Fail()
	FailNow()
	Failed() bool
	Fatal(...any)
	Fatalf(string, ...any)
	Helper()
	Log(args ...any)
	Logf(format string, args ...any)
	Name() string
	Parallel()
	Run(string, func(*testing.T)) bool
	Setenv(string, string)
	Skip(...any)
	SkipNow()
	Skipf(string, ...any)
	Skipped() bool
	TempDir() string
}

T defines test support functionality, ala the Go stdlib testing.T.

Being able to change its implementation supports logging functionality for test support methods that are executed outside of a test, such as when bringing up or tearing down test clusters that will be used and re-used throughout multiple tests.

Only those methods currently in use are defined. Add more methods from stdlib testing.T as necessary.

type Tinkerbell added in v0.8.0

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

func NewTinkerbell added in v0.8.0

func NewTinkerbell(t *testing.T, opts ...TinkerbellOpt) *Tinkerbell

func (*Tinkerbell) CleanupVMs added in v0.9.2

func (t *Tinkerbell) CleanupVMs(_ string) error

func (*Tinkerbell) ClusterConfigUpdates added in v0.14.0

func (t *Tinkerbell) ClusterConfigUpdates() []api.ClusterConfigFiller

ClusterConfigUpdates satisfies the test framework Provider.

func (*Tinkerbell) Name added in v0.8.0

func (t *Tinkerbell) Name() string

func (*Tinkerbell) Setup added in v0.8.0

func (t *Tinkerbell) Setup()

func (*Tinkerbell) UpdateKubeConfig added in v0.14.0

func (t *Tinkerbell) UpdateKubeConfig(content *[]byte, clusterName string) error

UpdateKubeConfig customizes generated kubeconfig for the provider.

func (*Tinkerbell) WithProviderUpgrade added in v0.12.0

func (t *Tinkerbell) WithProviderUpgrade(fillers ...api.TinkerbellFiller) ClusterE2ETestOpt

type TinkerbellOpt added in v0.8.0

type TinkerbellOpt func(*Tinkerbell)

func WithBottleRocketTinkerbell added in v0.9.2

func WithBottleRocketTinkerbell() TinkerbellOpt

func WithCustomTinkerbellMachineConfig added in v0.9.2

func WithCustomTinkerbellMachineConfig(selector string) TinkerbellOpt

func WithRedHat121Tinkerbell added in v0.12.0

func WithRedHat121Tinkerbell() TinkerbellOpt

WithRedHat121Tinkerbell tink test with redhat 1.21.

func WithRedHat122Tinkerbell added in v0.12.0

func WithRedHat122Tinkerbell() TinkerbellOpt

WithRedHat122Tinkerbell tink test with redhat 1.22.

func WithRedHat123Tinkerbell added in v0.12.0

func WithRedHat123Tinkerbell() TinkerbellOpt

WithRedHat123Tinkerbell tink test with redhat 1.23.

func WithRedHat124Tinkerbell added in v0.12.2

func WithRedHat124Tinkerbell() TinkerbellOpt

WithRedHat124Tinkerbell tink test with redhat 1.24.

func WithRedHat125Tinkerbell added in v0.14.1

func WithRedHat125Tinkerbell() TinkerbellOpt

WithRedHat125Tinkerbell tink test with redhat 1.25.

func WithTinkerbellExternalEtcdTopology added in v0.8.0

func WithTinkerbellExternalEtcdTopology(count int) TinkerbellOpt

func WithUbuntu121Tinkerbell added in v0.8.0

func WithUbuntu121Tinkerbell() TinkerbellOpt

func WithUbuntu122Tinkerbell added in v0.9.0

func WithUbuntu122Tinkerbell() TinkerbellOpt

func WithUbuntu123Tinkerbell added in v0.9.2

func WithUbuntu123Tinkerbell() TinkerbellOpt

func WithUbuntu124Tinkerbell added in v0.12.2

func WithUbuntu124Tinkerbell() TinkerbellOpt

WithUbuntu124Tinkerbell tink test with ubuntu 1.24.

func WithUbuntu125Tinkerbell added in v0.14.1

func WithUbuntu125Tinkerbell() TinkerbellOpt

WithUbuntu125Tinkerbell tink test with ubuntu 1.25.

type VSphere

type VSphere struct {
	GovcClient *executables.Govc
	// contains filtered or unexported fields
}

func NewVSphere

func NewVSphere(t *testing.T, opts ...VSphereOpt) *VSphere

func (*VSphere) Bottlerocket121Template added in v0.12.2

func (v *VSphere) Bottlerocket121Template() api.VSphereFiller

Bottlerocket121Template returns vsphere filler for 1.21 BR.

func (*VSphere) Bottlerocket122Template added in v0.12.2

func (v *VSphere) Bottlerocket122Template() api.VSphereFiller

Bottlerocket122Template returns vsphere filler for 1.22 BR.

func (*VSphere) Bottlerocket123Template added in v0.12.2

func (v *VSphere) Bottlerocket123Template() api.VSphereFiller

Bottlerocket123Template returns vsphere filler for 1.23 BR.

func (*VSphere) Bottlerocket124Template added in v0.12.2

func (v *VSphere) Bottlerocket124Template() api.VSphereFiller

Bottlerocket124Template returns vsphere filler for 1.24 BR.

func (*VSphere) Bottlerocket125Template added in v0.14.2

func (v *VSphere) Bottlerocket125Template() api.VSphereFiller

Bottlerocket125Template returns vsphere filler for 1.25 BR.

func (*VSphere) CleanupVMs added in v0.9.2

func (v *VSphere) CleanupVMs(clusterName string) error

CleanupVMs deletes all the VMs owned by the test EKS-A cluster. It satisfies the test framework Provider.

func (*VSphere) ClusterConfigUpdates added in v0.14.0

func (v *VSphere) ClusterConfigUpdates() []api.ClusterConfigFiller

ClusterConfigUpdates satisfies the test framework Provider.

func (*VSphere) Name

func (v *VSphere) Name() string

Name returns the provider name. It satisfies the test framework Provider.

func (*VSphere) Setup

func (v *VSphere) Setup()

Setup does nothing. It satisfies the test framework Provider.

func (*VSphere) Ubuntu121Template added in v0.12.2

func (v *VSphere) Ubuntu121Template() api.VSphereFiller

Ubuntu121Template returns vsphere filler for 1.21 Ubuntu.

func (*VSphere) Ubuntu122Template added in v0.12.2

func (v *VSphere) Ubuntu122Template() api.VSphereFiller

Ubuntu122Template returns vsphere filler for 1.22 Ubuntu.

func (*VSphere) Ubuntu123Template added in v0.12.2

func (v *VSphere) Ubuntu123Template() api.VSphereFiller

Ubuntu123Template returns vsphere filler for 1.23 Ubuntu.

func (*VSphere) Ubuntu124Template added in v0.12.2

func (v *VSphere) Ubuntu124Template() api.VSphereFiller

Ubuntu124Template returns vsphere filler for 1.24 Ubuntu.

func (*VSphere) Ubuntu125Template added in v0.14.2

func (v *VSphere) Ubuntu125Template() api.VSphereFiller

Ubuntu125Template returns vsphere filler for 1.25 Ubuntu.

func (*VSphere) UpdateKubeConfig added in v0.14.0

func (v *VSphere) UpdateKubeConfig(content *[]byte, clusterName string) error

UpdateKubeConfig customizes generated kubeconfig for the provider.

func (*VSphere) WithBottleRocket121 added in v0.14.0

func (v *VSphere) WithBottleRocket121() api.ClusterConfigFiller

WithBottleRocket121 returns a cluster config filler that sets the kubernetes version of the cluster to 1.21 as well as the right botllerocket template and osFamily for all VSphereMachaineConfigs.

func (*VSphere) WithBottleRocket122 added in v0.14.0

func (v *VSphere) WithBottleRocket122() api.ClusterConfigFiller

WithBottleRocket122 returns a cluster config filler that sets the kubernetes version of the cluster to 1.22 as well as the right botllerocket template and osFamily for all VSphereMachaineConfigs.

func (*VSphere) WithBottleRocket123 added in v0.14.0

func (v *VSphere) WithBottleRocket123() api.ClusterConfigFiller

WithBottleRocket123 returns a cluster config filler that sets the kubernetes version of the cluster to 1.23 as well as the right botllerocket template and osFamily for all VSphereMachaineConfigs.

func (*VSphere) WithBottleRocket124 added in v0.14.0

func (v *VSphere) WithBottleRocket124() api.ClusterConfigFiller

WithBottleRocket124 returns a cluster config filler that sets the kubernetes version of the cluster to 1.24 as well as the right botllerocket template and osFamily for all VSphereMachaineConfigs.

func (*VSphere) WithNewVSphereWorkerNodeGroup added in v0.7.1

func (v *VSphere) WithNewVSphereWorkerNodeGroup(name string, workerNodeGroup *WorkerNodeGroup) ClusterE2ETestOpt

WithNewVSphereWorkerNodeGroup adds a new worker node group to the cluster config.

func (*VSphere) WithProviderUpgrade

func (v *VSphere) WithProviderUpgrade(fillers ...api.VSphereFiller) ClusterE2ETestOpt

func (*VSphere) WithProviderUpgradeGit added in v0.7.1

func (v *VSphere) WithProviderUpgradeGit(fillers ...api.VSphereFiller) ClusterE2ETestOpt

func (*VSphere) WithUbuntu121 added in v0.14.0

func (v *VSphere) WithUbuntu121() api.ClusterConfigFiller

WithUbuntu121 returns a cluster config filler that sets the kubernetes version of the cluster to 1.21 as well as the right ubuntu template and osFamily for all VSphereMachineConfigs.

func (*VSphere) WithUbuntu122 added in v0.14.0

func (v *VSphere) WithUbuntu122() api.ClusterConfigFiller

WithUbuntu122 returns a cluster config filler that sets the kubernetes version of the cluster to 1.22 as well as the right ubuntu template and osFamily for all VSphereMachineConfigs.

func (*VSphere) WithUbuntu123 added in v0.14.0

func (v *VSphere) WithUbuntu123() api.ClusterConfigFiller

WithUbuntu123 returns a cluster config filler that sets the kubernetes version of the cluster to 1.23 as well as the right ubuntu template and osFamily for all VSphereMachineConfigs.

func (*VSphere) WithUbuntu124 added in v0.14.0

func (v *VSphere) WithUbuntu124() api.ClusterConfigFiller

WithUbuntu124 returns a cluster config filler that sets the kubernetes version of the cluster to 1.24 as well as the right ubuntu template and osFamily for all VSphereMachineConfigs.

func (*VSphere) WithWorkerNodeGroup added in v0.14.0

func (v *VSphere) WithWorkerNodeGroup(name string, workerNodeGroup *WorkerNodeGroup, fillers ...api.VSphereMachineConfigFiller) api.ClusterConfigFiller

WithWorkerNodeGroup returns an api.ClusterFiller that adds a new workerNodeGroupConfiguration and a corresponding VSphereMachineConfig to the cluster config.

func (*VSphere) WithWorkerNodeGroupConfiguration added in v0.14.0

func (v *VSphere) WithWorkerNodeGroupConfiguration(name string, workerNodeGroup *WorkerNodeGroup) api.ClusterConfigFiller

WithWorkerNodeGroupConfiguration returns an api.ClusterFiller that adds a new workerNodeGroupConfiguration item to the cluster config.

type VSphereOpt

type VSphereOpt func(*VSphere)

VSphereOpt is construction option for the E2E vSphere provider.

func WithBottleRocket121

func WithBottleRocket121() VSphereOpt

func WithBottleRocket122 added in v0.8.0

func WithBottleRocket122() VSphereOpt

func WithBottleRocket123 added in v0.9.2

func WithBottleRocket123() VSphereOpt

func WithBottleRocket124 added in v0.12.1

func WithBottleRocket124() VSphereOpt

WithBottleRocket124 returns br 124 var.

func WithBottleRocket125 added in v0.14.2

func WithBottleRocket125() VSphereOpt

WithBottleRocket125 returns br 1.25 var.

func WithBottlerocketFromRelease added in v0.12.0

func WithBottlerocketFromRelease(release *releasev1.EksARelease, kubeVersion anywherev1.KubernetesVersion) VSphereOpt

func WithPrivateNetwork added in v0.6.0

func WithPrivateNetwork() VSphereOpt

func WithRedHat121VSphere added in v0.12.0

func WithRedHat121VSphere() VSphereOpt

WithRedHat121VSphere vsphere test with redhat 1.21.

func WithRedHat122VSphere added in v0.12.0

func WithRedHat122VSphere() VSphereOpt

WithRedHat122VSphere vsphere test with redhat 1.22.

func WithRedHat123VSphere added in v0.12.0

func WithRedHat123VSphere() VSphereOpt

WithRedHat123VSphere vsphere test with redhat 1.23.

func WithUbuntu121

func WithUbuntu121() VSphereOpt

WithUbuntu121 returns a VSphereOpt that adds API fillers to use a Ubuntu vSphere template for k8s 1.21 and the "ubuntu" osFamily in all machine configs.

func WithUbuntu122 added in v0.8.0

func WithUbuntu122() VSphereOpt

WithUbuntu122 returns a VSphereOpt that adds API fillers to use a Ubuntu vSphere template for k8s 1.22 and the "ubuntu" osFamily in all machine configs.

func WithUbuntu123 added in v0.9.1

func WithUbuntu123() VSphereOpt

WithUbuntu123 returns a VSphereOpt that adds API fillers to use a Ubuntu vSphere template for k8s 1.23 and the "ubuntu" osFamily in all machine configs.

func WithUbuntu124 added in v0.12.0

func WithUbuntu124() VSphereOpt

WithUbuntu124 returns a VSphereOpt that adds API fillers to use a Ubuntu vSphere template for k8s 1.24 and the "ubuntu" osFamily in all machine configs.

func WithUbuntu125 added in v0.14.2

func WithUbuntu125() VSphereOpt

WithUbuntu125 returns a VSphereOpt that adds API fillers to use a Ubuntu vSphere template for k8s 1.25 and the "ubuntu" osFamily in all machine configs.

func WithUbuntuForRelease added in v0.12.0

func WithUbuntuForRelease(release *releasev1.EksARelease, kubeVersion anywherev1.KubernetesVersion) VSphereOpt

func WithVSphereFillers

func WithVSphereFillers(fillers ...api.VSphereFiller) VSphereOpt

WithVSphereFillers adds VSphereFiller to the provider default fillers.

func WithVSphereTags added in v0.13.0

func WithVSphereTags() VSphereOpt

WithVSphereTags with vsphere tags option.

func WithVSphereWorkerNodeGroup added in v0.7.1

func WithVSphereWorkerNodeGroup(name string, workerNodeGroup *WorkerNodeGroup, fillers ...api.VSphereMachineConfigFiller) VSphereOpt

type WorkerNodeGroup added in v0.7.1

type WorkerNodeGroup struct {
	Name                                 string
	Fillers                              []api.WorkerNodeGroupFiller
	MachineConfigKind, MachineConfigName string
}

func NoScheduleWorkerNodeGroup added in v0.7.1

func NoScheduleWorkerNodeGroup(name string, count int) *WorkerNodeGroup

func PreferNoScheduleWorkerNodeGroup added in v0.7.1

func PreferNoScheduleWorkerNodeGroup(name string, count int) *WorkerNodeGroup

func WithWorkerNodeGroup added in v0.7.1

func WithWorkerNodeGroup(name string, fillers ...api.WorkerNodeGroupFiller) *WorkerNodeGroup

func (*WorkerNodeGroup) ClusterFiller added in v0.9.0

func (w *WorkerNodeGroup) ClusterFiller() api.ClusterFiller

type WorkerNodeValidation added in v0.7.1

type WorkerNodeValidation func(configuration v1alpha1.WorkerNodeGroupConfiguration, node corev1.Node) (err error)

WorkerNodeValidation should return an error if either an error is encountered during execution or the validation logically fails. This validation function will be executed by ValidateWorkerNodes with a worker node group configuration and a corresponding node which was created as a part of that worker node group configuration.

type WorkloadCluster added in v0.6.1

type WorkloadCluster struct {
	*ClusterE2ETest
	ManagementClusterKubeconfigFile func() string
}

func (*WorkloadCluster) ApplyClusterManifest added in v0.14.0

func (w *WorkloadCluster) ApplyClusterManifest()

ApplyClusterManifest uses client-side logic to create/update objects defined in a cluster yaml manifest.

func (*WorkloadCluster) CreateCluster added in v0.6.1

func (w *WorkloadCluster) CreateCluster(opts ...CommandOpt)

func (*WorkloadCluster) DeleteCluster added in v0.6.1

func (w *WorkloadCluster) DeleteCluster(opts ...CommandOpt)

func (*WorkloadCluster) DeleteClusterWithKubectl added in v0.14.0

func (w *WorkloadCluster) DeleteClusterWithKubectl()

DeleteClusterWithKubectl uses client-side logic to delete a cluster.

func (*WorkloadCluster) UpgradeCluster added in v0.6.1

func (w *WorkloadCluster) UpgradeCluster(clusterOpts []ClusterE2ETestOpt, commandOpts ...CommandOpt)

func (*WorkloadCluster) WaitForKubeconfig added in v0.14.0

func (w *WorkloadCluster) WaitForKubeconfig()

WaitForKubeconfig waits for the kubeconfig for the workload cluster to be available and then writes it to disk.

type WorkloadClusters added in v0.6.1

type WorkloadClusters map[string]*WorkloadCluster

Jump to

Keyboard shortcuts

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