Use "-v6" for kubectl for an e2e test so we can get more failure output
(cherry picked from commit cd825c5e51
)
This commit is contained in:
parent
96d4d3ec7c
commit
8698d71809
@ -163,7 +163,7 @@ func TestE2EFullIntegration(t *testing.T) { // nolint:gocyclo
|
|||||||
|
|
||||||
// Run "kubectl get namespaces" which should trigger a browser login via the plugin.
|
// Run "kubectl get namespaces" which should trigger a browser login via the plugin.
|
||||||
start := time.Now()
|
start := time.Now()
|
||||||
kubectlCmd := exec.CommandContext(testCtx, "kubectl", "get", "namespace", "--kubeconfig", kubeconfigPath)
|
kubectlCmd := exec.CommandContext(testCtx, "kubectl", "get", "namespace", "--kubeconfig", kubeconfigPath, "-v", "6")
|
||||||
kubectlCmd.Env = append(os.Environ(), env.ProxyEnv()...)
|
kubectlCmd.Env = append(os.Environ(), env.ProxyEnv()...)
|
||||||
|
|
||||||
// Wrap the stdout and stderr pipes with TeeReaders which will copy each incremental read to an
|
// Wrap the stdout and stderr pipes with TeeReaders which will copy each incremental read to an
|
||||||
@ -193,8 +193,17 @@ func TestE2EFullIntegration(t *testing.T) { // nolint:gocyclo
|
|||||||
testAlreadyFailedErr = errors.New("test failed prior to clean up function")
|
testAlreadyFailedErr = errors.New("test failed prior to clean up function")
|
||||||
}
|
}
|
||||||
cleanupErrs := utilerrors.NewAggregate([]error{waitErr, stdoutReadAllErr, stderrReadAllErr, testAlreadyFailedErr})
|
cleanupErrs := utilerrors.NewAggregate([]error{waitErr, stdoutReadAllErr, stderrReadAllErr, testAlreadyFailedErr})
|
||||||
require.NoErrorf(t, cleanupErrs, "kubectl process did not exit cleanly and/or the test failed\nstdout: %q\nstderr: %q",
|
|
||||||
stdoutPipeBuf.String(), stderrPipeBuf.String())
|
if cleanupErrs != nil {
|
||||||
|
t.Logf("kubectl stdout was:\n----start of stdout\n%s\n----end of stdout", stdoutPipeBuf.String())
|
||||||
|
t.Logf("kubectl stderr was:\n----start of stderr\n%s\n----end of stderr", stderrPipeBuf.String())
|
||||||
|
}
|
||||||
|
require.NoErrorf(t, cleanupErrs, "kubectl process did not exit cleanly and/or the test failed. "+
|
||||||
|
"Note: if kubectl's first call to the Pinniped CLI results in the Pinniped CLI returning an error, "+
|
||||||
|
"then kubectl may call the Pinniped CLI again, which may hang because it will wait for the user "+
|
||||||
|
"to finish the login. This test will kill the kubectl process after a timeout. In this case, the "+
|
||||||
|
" kubectl output printed above will include multiple prompts for the user to enter their authcode.",
|
||||||
|
)
|
||||||
})
|
})
|
||||||
|
|
||||||
// Start a background goroutine to read stderr from the CLI and parse out the login URL.
|
// Start a background goroutine to read stderr from the CLI and parse out the login URL.
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
// Copyright 2020-2021 the Pinniped contributors. All Rights Reserved.
|
// Copyright 2020-2022 the Pinniped contributors. All Rights Reserved.
|
||||||
// SPDX-License-Identifier: Apache-2.0
|
// SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
// Package browsertest provides integration test helpers for our browser-based tests.
|
// Package browsertest provides integration test helpers for our browser-based tests.
|
||||||
@ -119,7 +119,7 @@ func LoginToUpstream(t *testing.T, page *agouti.Page, upstream testlib.TestOIDCU
|
|||||||
{
|
{
|
||||||
Name: "Okta",
|
Name: "Okta",
|
||||||
IssuerPattern: regexp.MustCompile(`\Ahttps://.+\.okta\.com/.+\z`),
|
IssuerPattern: regexp.MustCompile(`\Ahttps://.+\.okta\.com/.+\z`),
|
||||||
LoginPagePattern: regexp.MustCompile(`\Ahttps://.+\.okta\.com/.+\z`),
|
LoginPagePattern: regexp.MustCompile(`\Ahttps://.+\.okta\.com/.*\z`),
|
||||||
UsernameSelector: "input#okta-signin-username",
|
UsernameSelector: "input#okta-signin-username",
|
||||||
PasswordSelector: "input#okta-signin-password",
|
PasswordSelector: "input#okta-signin-password",
|
||||||
LoginButtonSelector: "input#okta-signin-submit",
|
LoginButtonSelector: "input#okta-signin-submit",
|
||||||
|
Loading…
Reference in New Issue
Block a user