Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

E2E: plugin sync e2e test implementation for TMC target #229

Merged
merged 1 commit into from
May 5, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions pkg/constants/env_variables.go
Original file line number Diff line number Diff line change
Expand Up @@ -18,4 +18,5 @@ const (
PublicKeyPathForPluginDiscoveryImageSignature = "TANZU_CLI_PLUGIN_DISCOVERY_IMAGE_SIGNATURE_PUBLIC_KEY_PATH"
SuppressSkipSignatureVerificationWarning = "TANZU_CLI_SUPPRESS_SKIP_SIGNATURE_VERIFICATION_WARNING"
CEIPOptInUserPromptAnswer = "TANZU_CLI_CEIP_OPT_IN_PROMPT_ANSWER"
E2ETestEnvironment = "TANZU_CLI_E2E_TEST_ENVIRONMENT"
)
8 changes: 8 additions & 0 deletions pkg/pluginmanager/default_discoveries.go
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,15 @@ package pluginmanager

import (
"fmt"
"os"
"strings"

"github.com/vmware-tanzu/tanzu-cli/pkg/constants"
configtypes "github.com/vmware-tanzu/tanzu-plugin-runtime/config/types"
)

const True = "true"

func defaultDiscoverySourceBasedOnServer(server *configtypes.Server) []configtypes.PluginDiscovery { // nolint:staticcheck // Deprecated
var defaultDiscoveries []configtypes.PluginDiscovery
// If current server type is management-cluster, then add
Expand Down Expand Up @@ -57,6 +61,10 @@ func defaultDiscoverySourceForTMCTargetedContext(context *configtypes.Context) c
}

func appendURLScheme(endpoint string) string {
// At present, the e2e test environment lacks support for HTTPS, thus hardcoding HTTPS is being skipped.
if os.Getenv(constants.E2ETestEnvironment) == True {
return endpoint
}
e := strings.Split(endpoint, ":")[0]
if !strings.Contains(e, "https") {
return fmt.Sprintf("https://%s", e)
Expand Down
69 changes: 47 additions & 22 deletions test/e2e/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -43,9 +43,12 @@ ifndef TANZU_CLI_E2E_AIRGAPPED_REPO
TANZU_CLI_E2E_AIRGAPPED_REPO = localhost:6001/tanzu-cli/plugins/
endif

.PHONY: e2e-cli-core-all ## Execute all CLI Core E2E Tests
e2e-cli-core-all: e2e-cli-lifecycle e2e-cli-config e2e-cli-plugin-compatibility-test e2e-context-k8s-tests e2e-context-tmc-test e2e-cli-plugin-lifecycle-sync-test e2e-airgapped-tests
# Set the plugin group name for the plugins used to execute E2E test cases.
E2E_TEST_USE_PLGINS_FROM_PLUGIN_GROUP_FOR_TMC ?= vmware-tmc/v9.9.9
E2E_TEST_USE_PLGINS_FROM_PLUGIN_GROUP_FOR_K8S ?= vmware-tkg/v9.9.9

.PHONY: e2e-cli-core-all ## Execute all CLI Core E2E Tests
e2e-cli-core-all: e2e-cli-lifecycle e2e-cli-config e2e-plugin-compatibility-test e2e-plugin-lifecycle-test e2e-plugin-sync-tmc e2e-plugin-sync-k8s e2e-context-tmc-test e2e-context-k8s-tests e2e-airgapped-tests

.PHONY: e2e-cli-lifecycle ## Execute CLI life cycle specific e2e tests
e2e-cli-lifecycle:
Expand All @@ -57,35 +60,48 @@ e2e-cli-config:
export TANZU_CLI_CEIP_OPT_IN_PROMPT_ANSWER="No" ; \
${GO} test ${ROOT_DIR}/test/e2e/config -timeout ${E2E_TEST_TIMEOUT} -race -coverprofile ${E2E_TEST_OUTPUT} ${GOTEST_VERBOSE} ; \

.PHONY: e2e-cli-plugin-compatibility-test ## Execute CLI Core Plugin Compatibility E2E test cases
e2e-cli-plugin-compatibility-test:
@if [ "${TANZU_CLI_E2E_TEST_CENTRAL_REPO_URL}" = "" ]; then \
echo "***Skipping Plugin Compatibility test cases because environment variables TANZU_CLI_E2E_TEST_CENTRAL_REPO_URL is not set***" ; \
else \
export TANZU_CLI_E2E_TEST_CENTRAL_REPO_URL=$(TANZU_CLI_E2E_TEST_CENTRAL_REPO_URL) ; \
export TANZU_CLI_PLUGIN_DISCOVERY_IMAGE_SIGNATURE_VERIFICATION_SKIP_LIST=$(TANZU_CLI_E2E_TEST_CENTRAL_REPO_URL) ; \
export TANZU_CLI_CEIP_OPT_IN_PROMPT_ANSWER="No" ; \
${GO} test ${ROOT_DIR}/test/e2e/plugins_compatibility -timeout ${E2E_TEST_TIMEOUT} -race -coverprofile ${E2E_TEST_OUTPUT} ${GOTEST_VERBOSE} ; \
fi
.PHONY: e2e-plugin-compatibility-test ## Execute CLI Core Plugin Compatibility E2E test cases
e2e-plugin-compatibility-test:
export TANZU_CLI_E2E_TEST_CENTRAL_REPO_URL=$(TANZU_CLI_E2E_TEST_CENTRAL_REPO_URL) ; \
export TANZU_CLI_PLUGIN_DISCOVERY_IMAGE_SIGNATURE_VERIFICATION_SKIP_LIST=$(TANZU_CLI_E2E_TEST_CENTRAL_REPO_URL) ; \
export TANZU_CLI_CEIP_OPT_IN_PROMPT_ANSWER="No" ; \
${GO} test ${ROOT_DIR}/test/e2e/plugins_compatibility -timeout ${E2E_TEST_TIMEOUT} -race -coverprofile ${E2E_TEST_OUTPUT} ${GOTEST_VERBOSE} ; \

.PHONY: e2e-plugin-lifecycle-test ## Execute CLI Core Plugin life cycle E2E test cases
e2e-plugin-lifecycle-test:
export TANZU_CLI_E2E_TEST_LOCAL_CENTRAL_REPO_URL=$(TANZU_CLI_E2E_TEST_LOCAL_CENTRAL_REPO_URL) ; \
export TANZU_CLI_E2E_TEST_LOCAL_CENTRAL_REPO_PLUGIN_DISCOVERY_IMAGE_SIGNATURE_PUBLIC_KEY_PATH=$(TANZU_CLI_E2E_TEST_LOCAL_CENTRAL_REPO_PLUGIN_DISCOVERY_IMAGE_SIGNATURE_PUBLIC_KEY_PATH) ; \
export TANZU_CLI_E2E_TEST_LOCAL_CENTRAL_REPO_HOST=${TANZU_CLI_E2E_TEST_LOCAL_CENTRAL_REPO_HOST} ; \
export TANZU_CLI_E2E_TEST_LOCAL_CENTRAL_REPO_CA_CERT_PATH=${TANZU_CLI_E2E_TEST_LOCAL_CENTRAL_REPO_CA_CERT_PATH} ; \
export TANZU_CLI_CEIP_OPT_IN_PROMPT_ANSWER="No" ; \
${GO} test ${ROOT_DIR}/test/e2e/plugin_lifecycle -timeout ${E2E_TEST_TIMEOUT} -race -coverprofile ${E2E_TEST_OUTPUT} ${GOTEST_VERBOSE} ; \

.PHONY: e2e-plugin-sync-k8s ## Execute CLI Core Plugin sync E2E test cases for k8s target
e2e-plugin-sync-k8s:
export TANZU_CLI_E2E_TEST_LOCAL_CENTRAL_REPO_URL=$(TANZU_CLI_E2E_TEST_LOCAL_CENTRAL_REPO_URL) ; \
export TANZU_CLI_E2E_TEST_LOCAL_CENTRAL_REPO_PLUGIN_DISCOVERY_IMAGE_SIGNATURE_PUBLIC_KEY_PATH=$(TANZU_CLI_E2E_TEST_LOCAL_CENTRAL_REPO_PLUGIN_DISCOVERY_IMAGE_SIGNATURE_PUBLIC_KEY_PATH) ; \
export TANZU_CLI_E2E_TEST_LOCAL_CENTRAL_REPO_HOST=${TANZU_CLI_E2E_TEST_LOCAL_CENTRAL_REPO_HOST} ; \
export TANZU_CLI_E2E_TEST_LOCAL_CENTRAL_REPO_CA_CERT_PATH=${TANZU_CLI_E2E_TEST_LOCAL_CENTRAL_REPO_CA_CERT_PATH} ; \
export TANZU_CLI_CEIP_OPT_IN_PROMPT_ANSWER="No" ; \
${GO} test ${ROOT_DIR}/test/e2e/plugin_sync/k8s -timeout ${E2E_TEST_TIMEOUT} -race -coverprofile ${E2E_TEST_OUTPUT} ${GOTEST_VERBOSE} ; \

.PHONY: e2e-cli-plugin-lifecycle-sync-test ## Execute CLI Core Plugin life cycle E2E test cases
e2e-cli-plugin-lifecycle-sync-test:
@if [ "${TANZU_CLI_E2E_TEST_LOCAL_CENTRAL_REPO_URL}" = "" ]; then \
echo "***Skipping Plugin life cycle test cases because environment variables TANZU_CLI_E2E_TEST_LOCAL_CENTRAL_REPO_URL is not set***" ; \

## To run TMC tests, we need to set environment variable TANZU_API_TOKEN, in case of github workflow, its been set as environment variable
.PHONY: e2e-plugin-sync-tmc ## Execute CLI Core Plugin sync E2E test cases for tmc target
e2e-plugin-sync-tmc:
@if [ "${TANZU_API_TOKEN}" = "" ]; then \
echo "***Skipping TMC specific plugin sync e2e test cases because environment variables TANZU_API_TOKEN is not set***" ; \
else \
export TANZU_CLI_E2E_TEST_LOCAL_CENTRAL_REPO_URL=$(TANZU_CLI_E2E_TEST_LOCAL_CENTRAL_REPO_URL) ; \
export TANZU_CLI_E2E_TEST_LOCAL_CENTRAL_REPO_PLUGIN_DISCOVERY_IMAGE_SIGNATURE_PUBLIC_KEY_PATH=$(TANZU_CLI_E2E_TEST_LOCAL_CENTRAL_REPO_PLUGIN_DISCOVERY_IMAGE_SIGNATURE_PUBLIC_KEY_PATH) ; \
export TANZU_CLI_E2E_TEST_LOCAL_CENTRAL_REPO_HOST=${TANZU_CLI_E2E_TEST_LOCAL_CENTRAL_REPO_HOST} ; \
export TANZU_CLI_E2E_TEST_LOCAL_CENTRAL_REPO_CA_CERT_PATH=${TANZU_CLI_E2E_TEST_LOCAL_CENTRAL_REPO_CA_CERT_PATH} ; \
export TANZU_CLI_CEIP_OPT_IN_PROMPT_ANSWER="No" ; \
${GO} test ${ROOT_DIR}/test/e2e/plugin_lifecycle -timeout ${E2E_TEST_TIMEOUT} -race -coverprofile ${E2E_TEST_OUTPUT} ${GOTEST_VERBOSE} ; \
${GO} test ${ROOT_DIR}/test/e2e/plugin_sync -timeout ${E2E_TEST_TIMEOUT} -race -coverprofile ${E2E_TEST_OUTPUT} ${GOTEST_VERBOSE} ; \
export TANZU_CLI_E2E_TEST_ENVIRONMENT="true" ; \
export TANZU_API_TOKEN=$(TANZU_API_TOKEN) ; \
${GO} test -p 1 ${ROOT_DIR}/test/e2e/plugin_sync/tmc -timeout ${E2E_TEST_TIMEOUT} -race -coverprofile ${E2E_TEST_OUTPUT} ${GOTEST_VERBOSE} ; \
fi

.PHONY: e2e-context-k8s-tests ## Execute CLI context life cycle e2e tests for k8s target
e2e-context-k8s-tests:
export TANZU_CLI_CEIP_OPT_IN_PROMPT_ANSWER="No" ; \
${GO} test `go list ${ROOT_DIR}/test/e2e/context/... | grep -v test/e2e/context/tmc` -timeout ${E2E_TEST_TIMEOUT} -race -coverprofile ${E2E_TEST_OUTPUT} ${GOTEST_VERBOSE}

## To run TMC tests, we need to set environment variables TANZU_API_TOKEN and TANZU_CLI_TMC_UNSTABLE_URL, in case of github workflow, these are set as github environment variables
.PHONY: e2e-context-tmc-test ## Execute CLI context life cycle e2e tests for tmc target
Expand All @@ -97,6 +113,15 @@ e2e-context-tmc-test:
${GO} test ${ROOT_DIR}/test/e2e/context/tmc -timeout ${E2E_TEST_TIMEOUT} -race -coverprofile ${E2E_TEST_OUTPUT} ${GOTEST_VERBOSE} ; \
fi

.PHONY: e2e-context-k8s-tests ## Execute CLI context life cycle e2e tests for k8s target
e2e-context-k8s-tests:
export TANZU_CLI_E2E_TEST_LOCAL_CENTRAL_REPO_URL=$(TANZU_CLI_E2E_TEST_LOCAL_CENTRAL_REPO_URL) ; \
export TANZU_CLI_E2E_TEST_LOCAL_CENTRAL_REPO_PLUGIN_DISCOVERY_IMAGE_SIGNATURE_PUBLIC_KEY_PATH=$(TANZU_CLI_E2E_TEST_LOCAL_CENTRAL_REPO_PLUGIN_DISCOVERY_IMAGE_SIGNATURE_PUBLIC_KEY_PATH) ; \
export TANZU_CLI_E2E_TEST_LOCAL_CENTRAL_REPO_HOST=${TANZU_CLI_E2E_TEST_LOCAL_CENTRAL_REPO_HOST} ; \
export TANZU_CLI_E2E_TEST_LOCAL_CENTRAL_REPO_CA_CERT_PATH=${TANZU_CLI_E2E_TEST_LOCAL_CENTRAL_REPO_CA_CERT_PATH} ; \
export TANZU_CLI_CEIP_OPT_IN_PROMPT_ANSWER="No" ; \
${GO} test `go list ${ROOT_DIR}/test/e2e/context/... | grep -v test/e2e/context/tmc` -timeout ${E2E_TEST_TIMEOUT} -race -coverprofile ${E2E_TEST_OUTPUT} ${GOTEST_VERBOSE}

.PHONY: e2e-airgapped-tests ## Execute CLI airgapped tests
e2e-airgapped-tests:
export TANZU_CLI_E2E_TEST_LOCAL_CENTRAL_REPO_URL=$(TANZU_CLI_E2E_TEST_LOCAL_CENTRAL_REPO_IMAGE_FOR_AIRGAPPED) ; \
Expand Down
9 changes: 6 additions & 3 deletions test/e2e/airgapped/airgapped_suite_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@ var (
pluginGroupToPluginListMap map[string][]*framework.PluginInfo
pluginSourceName string
tempDir string
err error
)

// BeforeSuite initializes and set up the environment to execute the airgapped tests
Expand Down Expand Up @@ -68,10 +69,11 @@ var _ = BeforeSuite(func() {
// set up the local central repository discovery image public key path
e2eTestLocalCentralRepoPluginDiscoveryImageSignaturePublicKeyPath := os.Getenv(framework.TanzuCliE2ETestLocalCentralRepositoryPluginDiscoveryImageSignaturePublicKeyPath)
Expect(e2eTestLocalCentralRepoPluginDiscoveryImageSignaturePublicKeyPath).NotTo(BeEmpty(), fmt.Sprintf("environment variable %s should set with local central repository discovery image signature public key path", framework.TanzuCliE2ETestLocalCentralRepositoryPluginDiscoveryImageSignaturePublicKeyPath))
os.Setenv("TANZU_CLI_PLUGIN_DISCOVERY_IMAGE_SIGNATURE_PUBLIC_KEY_PATH", e2eTestLocalCentralRepoPluginDiscoveryImageSignaturePublicKeyPath)
os.Setenv(framework.TanzuCliPluginDiscoveryImageSignaturePublicKeyPath, e2eTestLocalCentralRepoPluginDiscoveryImageSignaturePublicKeyPath)

// search plugin groups and make sure there plugin groups available
pluginGroups = pluginlifecyclee2e.SearchAllPluginGroups(tf)
pluginGroups, err = pluginlifecyclee2e.SearchAllPluginGroups(tf)
Expect(err).To(BeNil(), framework.NoErrorForPluginGroupSearch)

// Make sure airgapped plugin inventory image doesn't exists before starting the tests
_, _, err = carvelhelpers.GetImageDigest(e2eAirgappedCentralRepoImage)
Expand All @@ -81,7 +83,8 @@ var _ = BeforeSuite(func() {
Expect(framework.IsAllPluginGroupsExists(pluginGroups, framework.PluginGroupsForLifeCycleTests)).Should(BeTrue(), "all required plugin groups for life cycle tests should exists in plugin group search output")

// search plugins and make sure there are plugins available
pluginsSearchList = pluginlifecyclee2e.SearchAllPlugins(tf)
pluginsSearchList, err = pluginlifecyclee2e.SearchAllPlugins(tf)
Expect(err).To(BeNil(), framework.NoErrorForPluginSearch)
Expect(len(pluginsSearchList)).Should(BeNumerically(">", 0))

// check all required plugins are available in the central repository with plugin search output before running airgapped tests
Expand Down
24 changes: 16 additions & 8 deletions test/e2e/airgapped/airgapped_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -41,15 +41,17 @@ var _ = framework.CLICoreDescribe("[Tests:E2E][Feature:Airgapped-Plugin-Download
// Test case: Validate that the correct plugins and plugin group exists with `tanzu plugin search` and `tanzu plugin group search` output
It("validate the plugins from group 'vmware-tkg/v0.0.1' exists", func() {
// search plugin groups
pluginGroups = pluginlifecyclee2e.SearchAllPluginGroups(tf)
pluginGroups, err = pluginlifecyclee2e.SearchAllPluginGroups(tf)
Expect(err).To(BeNil(), framework.NoErrorForPluginGroupSearch)
// check all expected plugin groups are available in the `plugin group search` output from the airgapped repository
expectedPluginGroups := []*framework.PluginGroup{{Group: "vmware-tkg/v0.0.1"}}
Expect(framework.IsAllPluginGroupsExists(pluginGroups, expectedPluginGroups)).Should(BeTrue(), "all required plugin groups for life cycle tests should exists in plugin group search output")

// search plugins and make sure correct number of plugins available
// check expected plugins are available in the `plugin search` output from the airgapped repository
expectedPlugins := pluginsForPG_TKG_001
pluginsSearchList = pluginlifecyclee2e.SearchAllPlugins(tf)
pluginsSearchList, err = pluginlifecyclee2e.SearchAllPlugins(tf)
Expect(err).To(BeNil(), framework.NoErrorForPluginSearch)
Expect(len(pluginsSearchList)).To(Equal(len(expectedPlugins)))
Expect(framework.CheckAllPluginsExists(pluginsSearchList, expectedPlugins)).To(BeTrue())
})
Expand Down Expand Up @@ -91,14 +93,16 @@ var _ = framework.CLICoreDescribe("[Tests:E2E][Feature:Airgapped-Plugin-Download

It("validate the plugins from group 'vmware-tmc/v9.9.9' exists", func() {
// search plugin groups and make sure there plugin groups available
pluginGroups = pluginlifecyclee2e.SearchAllPluginGroups(tf)
pluginGroups, err = pluginlifecyclee2e.SearchAllPluginGroups(tf)
Expect(err).To(BeNil(), framework.NoErrorForPluginGroupSearch)
// check all expected plugin groups are available in plugin group search output
expectedPluginGroups := []*framework.PluginGroup{{Group: "vmware-tkg/v0.0.1"}, {Group: "vmware-tmc/v9.9.9"}}
Expect(framework.IsAllPluginGroupsExists(pluginGroups, expectedPluginGroups)).Should(BeTrue(), "all required plugin groups for life cycle tests should exists in plugin group search output")

// search plugins and make sure correct number of plugins available
// check expected plugins are available in the `plugin search` output from the airgapped repository
pluginsSearchList = pluginlifecyclee2e.SearchAllPlugins(tf)
pluginsSearchList, err = pluginlifecyclee2e.SearchAllPlugins(tf)
Expect(err).To(BeNil(), framework.NoErrorForPluginGroupSearch)
expectedPlugins := append(pluginsForPG_TKG_001, pluginsForPG_TMC_999...)
Expect(len(pluginsSearchList)).To(Equal(len(expectedPlugins)))
Expect(framework.CheckAllPluginsExists(pluginsSearchList, expectedPlugins)).To(BeTrue())
Expand Down Expand Up @@ -132,15 +136,17 @@ var _ = framework.CLICoreDescribe("[Tests:E2E][Feature:Airgapped-Plugin-Download

It("validate the plugins from group 'vmware-tmc/v0.0.1' exists", func() {
// search plugin groups
pluginGroups = pluginlifecyclee2e.SearchAllPluginGroups(tf)
pluginGroups, err = pluginlifecyclee2e.SearchAllPluginGroups(tf)
Expect(err).To(BeNil(), framework.NoErrorForPluginGroupSearch)
// check all expected plugin groups are available in the `plugin group search` output from the airgapped repository
expectedPluginGroups := []*framework.PluginGroup{{Group: "vmware-tkg/v0.0.1"}, {Group: "vmware-tmc/v9.9.9"}, {Group: "vmware-tmc/v0.0.1"}}
Expect(framework.IsAllPluginGroupsExists(pluginGroups, expectedPluginGroups)).Should(BeTrue(), "all required plugin groups for life cycle tests should exists in plugin group search output")

// search plugins and make sure correct number of plugins available
// check expected plugins are available in the `plugin search` output from the airgapped repository
expectedPlugins := append(pluginsForPG_TKG_001, pluginsForPG_TMC_999...)
pluginsSearchList = pluginlifecyclee2e.SearchAllPlugins(tf)
pluginsSearchList, err = pluginlifecyclee2e.SearchAllPlugins(tf)
Expect(err).To(BeNil(), framework.NoErrorForPluginGroupSearch)
Expect(len(pluginsSearchList)).To(Equal(len(expectedPlugins)))
Expect(framework.CheckAllPluginsExists(pluginsSearchList, expectedPlugins)).To(BeTrue())
})
Expand Down Expand Up @@ -174,7 +180,8 @@ var _ = framework.CLICoreDescribe("[Tests:E2E][Feature:Airgapped-Plugin-Download
// Test case: validate that all plugins and plugin groups exists
It("validate that all plugins and plugin groups exists", func() {
// search plugin groups and make sure there plugin groups available
pluginGroups = pluginlifecyclee2e.SearchAllPluginGroups(tf)
pluginGroups, err = pluginlifecyclee2e.SearchAllPluginGroups(tf)
Expect(err).To(BeNil(), framework.NoErrorForPluginGroupSearch)
// check all expected plugin groups are available in the `plugin group search` output from the airgapped repository
expectedPluginGroups := []*framework.PluginGroup{{Group: "vmware-tkg/v0.0.1"}, {Group: "vmware-tkg/v9.9.9"}, {Group: "vmware-tmc/v9.9.9"}, {Group: "vmware-tmc/v0.0.1"}}
Expect(framework.IsAllPluginGroupsExists(pluginGroups, expectedPluginGroups)).Should(BeTrue(), "all required plugin groups for life cycle tests should exists in plugin group search output")
Expand All @@ -183,7 +190,8 @@ var _ = framework.CLICoreDescribe("[Tests:E2E][Feature:Airgapped-Plugin-Download
// check expected plugins are available in the `plugin search` output from the airgapped repository
expectedPlugins := append(pluginsForPG_TKG_999, pluginsForPG_TMC_999...)
expectedPlugins = append(expectedPlugins, pluginsNotInAnyPG_999...)
pluginsSearchList = pluginlifecyclee2e.SearchAllPlugins(tf)
pluginsSearchList, err = pluginlifecyclee2e.SearchAllPlugins(tf)
Expect(err).To(BeNil(), framework.NoErrorForPluginGroupSearch)
Expect(len(pluginsSearchList)).To(Equal(len(expectedPlugins)))
Expect(framework.CheckAllPluginsExists(pluginsSearchList, expectedPlugins)).To(BeTrue())
})
Expand Down
Loading