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

Remove AllowAll IDP dependency for extended and integration tests #11269

Closed
wants to merge 1 commit into from
Closed
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
20 changes: 10 additions & 10 deletions test/common/build/controllers.go
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ func mockBuild() *buildapi.Build {
}
}

func RunBuildControllerTest(t testingT, osClient *client.Client, kClientset *kclientset.Clientset) {
func RunBuildControllerTest(t testingT, osClient client.Interface, kClientset kclientset.Interface) {
// Setup an error channel
errChan := make(chan error) // go routines will send a message on this channel if an error occurs. Once this happens the test is over

Expand Down Expand Up @@ -159,7 +159,7 @@ type buildControllerPodTest struct {
States []buildControllerPodState
}

func RunBuildPodControllerTest(t testingT, osClient *client.Client, kClient *kclientset.Clientset) {
func RunBuildPodControllerTest(t testingT, osClient client.Interface, kClient kclientset.Interface) {
ns := testutil.Namespace()
waitTime := BuildPodControllerTestWait

Expand Down Expand Up @@ -213,7 +213,7 @@ func RunBuildPodControllerTest(t testingT, osClient *client.Client, kClient *kcl
}

// Watch build pod for transition to pending
podWatch, err := kClient.Pods(ns).Watch(kapi.ListOptions{FieldSelector: fields.OneTermEqualSelector("metadata.name", buildapi.GetBuildPodName(b))})
podWatch, err := kClient.Core().Pods(ns).Watch(kapi.ListOptions{FieldSelector: fields.OneTermEqualSelector("metadata.name", buildapi.GetBuildPodName(b))})
if err != nil {
t.Fatal(err)
}
Expand Down Expand Up @@ -249,15 +249,15 @@ func RunBuildPodControllerTest(t testingT, osClient *client.Client, kClient *kcl
for _, state := range test.States {
if err := retry.RetryOnConflict(retry.DefaultRetry, func() error {
// Update pod state and verify that corresponding build state happens accordingly
pod, err := kClient.Pods(ns).Get(pod.Name)
pod, err := kClient.Core().Pods(ns).Get(pod.Name)
if err != nil {
return err
}
if pod.Status.Phase == state.PodPhase {
return fmt.Errorf("another client altered the pod phase to %s: %#v", state.PodPhase, pod)
}
pod.Status.Phase = state.PodPhase
_, err = kClient.Pods(ns).UpdateStatus(pod)
_, err = kClient.Core().Pods(ns).UpdateStatus(pod)
return err
}); err != nil {
t.Fatal(err)
Expand Down Expand Up @@ -314,7 +314,7 @@ func waitForWatch(t testingT, name string, w watchapi.Interface) *watchapi.Event
}
}

func RunImageChangeTriggerTest(t testingT, clusterAdminClient *client.Client) {
func RunImageChangeTriggerTest(t testingT, clusterAdminClient client.Interface) {
tag := "latest"
streamName := "test-image-trigger-repo"

Expand Down Expand Up @@ -502,7 +502,7 @@ WaitLoop3:
}
}

func RunBuildDeleteTest(t testingT, clusterAdminClient *client.Client, clusterAdminKubeClientset *kclientset.Clientset) {
func RunBuildDeleteTest(t testingT, clusterAdminClient client.Interface, clusterAdminKubeClientset kclientset.Interface) {

buildWatch, err := clusterAdminClient.Builds(testutil.Namespace()).Watch(kapi.ListOptions{})
if err != nil {
Expand Down Expand Up @@ -567,7 +567,7 @@ func waitForWatchType(t testingT, name string, w watchapi.Interface, expect watc
return nil
}

func RunBuildRunningPodDeleteTest(t testingT, clusterAdminClient *client.Client, clusterAdminKubeClientset *kclientset.Clientset) {
func RunBuildRunningPodDeleteTest(t testingT, clusterAdminClient client.Interface, clusterAdminKubeClientset kclientset.Interface) {

buildWatch, err := clusterAdminClient.Builds(testutil.Namespace()).Watch(kapi.ListOptions{})
if err != nil {
Expand Down Expand Up @@ -634,7 +634,7 @@ func RunBuildRunningPodDeleteTest(t testingT, clusterAdminClient *client.Client,
}
}

func RunBuildCompletePodDeleteTest(t testingT, clusterAdminClient *client.Client, clusterAdminKubeClientset *kclientset.Clientset) {
func RunBuildCompletePodDeleteTest(t testingT, clusterAdminClient client.Interface, clusterAdminKubeClientset kclientset.Interface) {

buildWatch, err := clusterAdminClient.Builds(testutil.Namespace()).Watch(kapi.ListOptions{})
if err != nil {
Expand Down Expand Up @@ -698,7 +698,7 @@ func RunBuildCompletePodDeleteTest(t testingT, clusterAdminClient *client.Client
}
}

func RunBuildConfigChangeControllerTest(t testingT, clusterAdminClient *client.Client, clusterAdminKubeClientset *kclientset.Clientset) {
func RunBuildConfigChangeControllerTest(t testingT, clusterAdminClient client.Interface) {
config := configChangeBuildConfig()
created, err := clusterAdminClient.BuildConfigs(testutil.Namespace()).Create(config)
if err != nil {
Expand Down
2 changes: 1 addition & 1 deletion test/extended/builds/controller_compat.go
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ var _ = g.Describe("[bldcompat][Slow][Compatibility] build controller", func() {
})
g.Describe("RunBuildConfigChangeControllerTest", func() {
g.It("should succeed", func() {
build.RunBuildConfigChangeControllerTest(g.GinkgoT(), oc.AdminClient(), oc.AdminKubeClient())
build.RunBuildConfigChangeControllerTest(g.GinkgoT(), oc.AdminClient())
})
})
})
8 changes: 6 additions & 2 deletions test/extended/util/cli.go
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ import (
apierrs "k8s.io/kubernetes/pkg/api/errors"
kclientset "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset"
"k8s.io/kubernetes/pkg/client/retry"
clientcmd "k8s.io/kubernetes/pkg/client/unversioned/clientcmd"
"k8s.io/kubernetes/pkg/client/unversioned/clientcmd"
"k8s.io/kubernetes/pkg/util/wait"
e2e "k8s.io/kubernetes/test/e2e/framework"

Expand Down Expand Up @@ -100,7 +100,11 @@ func (c *CLI) ChangeUser(name string) *CLI {
if err != nil {
FatalErr(err)
}
_, _, clientConfig, err := testutil.GetClientForUser(*adminClientConfig, name)
clusterAdminClient, err := testutil.GetClusterAdminClient(c.adminConfigPath)
if err != nil {
FatalErr(err)
}
_, _, clientConfig, err := testutil.GetClientForUser(clusterAdminClient, *adminClientConfig, name)
if err != nil {
FatalErr(err)
}
Expand Down
2 changes: 1 addition & 1 deletion test/integration/admissionconfig_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ type TestPluginConfig struct {

func (obj *TestPluginConfig) GetObjectKind() unversioned.ObjectKind { return &obj.TypeMeta }

func setupAdmissionTest(t *testing.T, setupConfig func(*configapi.MasterConfig)) (*kclientset.Clientset, *client.Client) {
func setupAdmissionTest(t *testing.T, setupConfig func(*configapi.MasterConfig)) (kclientset.Interface, client.Interface) {
testutil.RequireEtcd(t)
masterConfig, err := testserver.DefaultMasterOptions()
if err != nil {
Expand Down
2 changes: 1 addition & 1 deletion test/integration/audit_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ import (
testserver "github.com/openshift/origin/test/util/server"
)

func setupAuditTest(t *testing.T) (*kclientset.Clientset, *client.Client) {
func setupAuditTest(t *testing.T) (kclientset.Interface, client.Interface) {
testutil.RequireEtcd(t)
masterConfig, err := testserver.DefaultMasterOptions()
if err != nil {
Expand Down
5 changes: 2 additions & 3 deletions test/integration/auth_proxy_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -61,9 +61,8 @@ func TestAuthProxyOnAuthorize(t *testing.T) {
t.Logf("proxy server is on %v\n", proxyServer.URL)

// need to prime clients so that we can get back a code. the client must be valid
result := clusterAdminClient.RESTClient.Post().Resource("oAuthClients").Body(&oauthapi.OAuthClient{ObjectMeta: kapi.ObjectMeta{Name: "test"}, Secret: "secret", RedirectURIs: []string{clusterAdminClientConfig.Host}}).Do()
if result.Error() != nil {
t.Fatal(result.Error())
if _, err := clusterAdminClient.OAuthClients().Create(&oauthapi.OAuthClient{ObjectMeta: kapi.ObjectMeta{Name: "test"}, Secret: "secret", RedirectURIs: []string{clusterAdminClientConfig.Host}}); err != nil {
t.Fatal(err)
}

// our simple URL to get back a code. We want to go through the front proxy
Expand Down
30 changes: 22 additions & 8 deletions test/integration/authorization_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -12,13 +12,14 @@ import (
"k8s.io/kubernetes/pkg/api/unversioned"
kunvapi "k8s.io/kubernetes/pkg/api/unversioned"
extensionsapi "k8s.io/kubernetes/pkg/apis/extensions"
"k8s.io/kubernetes/pkg/client/restclient"
"k8s.io/kubernetes/pkg/util/sets"
"k8s.io/kubernetes/pkg/util/wait"

authorizationapi "github.com/openshift/origin/pkg/authorization/api"
buildapi "github.com/openshift/origin/pkg/build/api"
"github.com/openshift/origin/pkg/client"
policy "github.com/openshift/origin/pkg/cmd/admin/policy"
"github.com/openshift/origin/pkg/cmd/admin/policy"
"github.com/openshift/origin/pkg/cmd/server/bootstrappolicy"
"github.com/openshift/origin/pkg/cmd/util/clientcmd"
deployapi "github.com/openshift/origin/pkg/deploy/api"
Expand Down Expand Up @@ -94,12 +95,12 @@ func TestClusterReaderCoverage(t *testing.T) {
t.Fatalf("unexpected error: %v", err)
}

clusterAdminClient, err := testutil.GetClusterAdminClient(clusterAdminKubeConfig)
clusterAdminClient, err := testutil.GetClusterAdminClientRaw(clusterAdminKubeConfig)
if err != nil {
t.Fatalf("unexpected error: %v", err)
}

discoveryClient := client.NewDiscoveryClient(clusterAdminClient.RESTClient)
discoveryClient := clusterAdminClient.Discovery()

// (map[string]*unversioned.APIResourceList, error)
allResourceList, err := discoveryClient.ServerResources()
Expand Down Expand Up @@ -320,7 +321,7 @@ func TestAuthorizationResolution(t *testing.T) {
t.Fatalf("unexpected error: %v", err)
}

buildListerClient, _, _, err := testutil.GetClientForUser(*clusterAdminConfig, "build-lister")
buildListerClient, _, _, err := testutil.GetClientForUser(clusterAdminClient, *clusterAdminConfig, "build-lister")
if err != nil {
t.Fatalf("unexpected error: %v", err)
}
Expand Down Expand Up @@ -819,7 +820,7 @@ func TestAuthorizationSubjectAccessReview(t *testing.T) {
t.Fatalf("unexpected error: %v", err)
}

dannyClient, _, dannyConfig, err := testutil.GetClientForUser(*clusterAdminClientConfig, "danny")
dannyClient, _, dannyConfig, err := testutil.GetClientForUser(clusterAdminClient, *clusterAdminClientConfig, "danny")
if err != nil {
t.Fatalf("error requesting token: %v", err)
}
Expand Down Expand Up @@ -1103,7 +1104,7 @@ func TestAuthorizationSubjectAccessReview(t *testing.T) {
t.Fatalf("unexpected error: %v", err)
}

otherAdminClient, _, _, err := testutil.GetClientForUser(*clusterAdminClientConfig, "other-admin")
otherAdminClient, _, _, err := testutil.GetClientForUser(clusterAdminClient, *clusterAdminClientConfig, "other-admin")
if err != nil {
t.Fatalf("error requesting token: %v", err)
}
Expand Down Expand Up @@ -1172,6 +1173,19 @@ func TestAuthorizationSubjectAccessReview(t *testing.T) {
}.run(t)
}

// used for doing raw REST
func createNewProjectRaw(clusterAdminClient client.Interface, clientConfig restclient.Config, projectName, adminUser string) (*client.Client, error) {
adminClient, err := testserver.CreateNewProject(clusterAdminClient, clientConfig, projectName, adminUser)
if err != nil {
return nil, err
}
rawClient, ok := adminClient.(*client.Client)
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@liggitt This is the only type cast I was not able to remove without adding a bunch of code.

if !ok {
return nil, fmt.Errorf("not a *client.Client: %#v", adminClient)
}
return rawClient, nil
}

// TestOldLocalSubjectAccessReviewEndpoint checks to make sure that the old subject access review endpoint still functions properly
// this is needed to support old docker registry images
func TestOldLocalSubjectAccessReviewEndpoint(t *testing.T) {
Expand All @@ -1193,7 +1207,7 @@ func TestOldLocalSubjectAccessReviewEndpoint(t *testing.T) {
t.Fatalf("unexpected error: %v", err)
}

haroldClient, err := testserver.CreateNewProject(clusterAdminClient, *clusterAdminClientConfig, "hammer-project", "harold")
haroldClient, err := createNewProjectRaw(clusterAdminClient, *clusterAdminClientConfig, "hammer-project", "harold")
if err != nil {
t.Fatalf("unexpected error: %v", err)
}
Expand Down Expand Up @@ -1322,7 +1336,7 @@ func TestOldLocalResourceAccessReviewEndpoint(t *testing.T) {
t.Fatalf("unexpected error: %v", err)
}

haroldClient, err := testserver.CreateNewProject(clusterAdminClient, *clusterAdminClientConfig, "hammer-project", "harold")
haroldClient, err := createNewProjectRaw(clusterAdminClient, *clusterAdminClientConfig, "hammer-project", "harold")
if err != nil {
t.Fatalf("unexpected error: %v", err)
}
Expand Down
44 changes: 9 additions & 35 deletions test/integration/bootstrap_policy_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,8 @@ import (
"k8s.io/kubernetes/pkg/util/wait"

authorizationapi "github.com/openshift/origin/pkg/authorization/api"
"github.com/openshift/origin/pkg/client"
"github.com/openshift/origin/pkg/cmd/server/admin"
originrest "github.com/openshift/origin/pkg/cmd/server/origin/rest"
"github.com/openshift/origin/pkg/cmd/util/tokencmd"
testutil "github.com/openshift/origin/test/util"
testserver "github.com/openshift/origin/test/util/server"
)
Expand All @@ -33,22 +31,12 @@ func TestBootstrapPolicyAuthenticatedUsersAgainstOpenshiftNamespace(t *testing.T
t.Errorf("unexpected error: %v", err)
}

valerieClientConfig := *clusterAdminClientConfig
valerieClientConfig.Username = ""
valerieClientConfig.Password = ""
valerieClientConfig.BearerToken = ""
valerieClientConfig.CertFile = ""
valerieClientConfig.KeyFile = ""
valerieClientConfig.CertData = nil
valerieClientConfig.KeyData = nil

accessToken, err := tokencmd.RequestToken(&valerieClientConfig, nil, "valerie", "security!")
clusterAdminClient, err := testutil.GetClusterAdminClient(clusterAdminKubeConfig)
if err != nil {
t.Fatalf("unexpected error: %v", err)
}

valerieClientConfig.BearerToken = accessToken
valerieOpenshiftClient, err := client.New(&valerieClientConfig)
valerieOpenshiftClient, _, _, err := testutil.GetClientForUser(clusterAdminClient, *clusterAdminClientConfig, "valerie")
if err != nil {
t.Fatalf("unexpected error: %v", err)
}
Expand Down Expand Up @@ -135,22 +123,12 @@ func TestBootstrapPolicySelfSubjectAccessReviews(t *testing.T) {
t.Errorf("unexpected error: %v", err)
}

valerieClientConfig := *clusterAdminClientConfig
valerieClientConfig.Username = ""
valerieClientConfig.Password = ""
valerieClientConfig.BearerToken = ""
valerieClientConfig.CertFile = ""
valerieClientConfig.KeyFile = ""
valerieClientConfig.CertData = nil
valerieClientConfig.KeyData = nil

accessToken, err := tokencmd.RequestToken(&valerieClientConfig, nil, "valerie", "security!")
clusterAdminClient, err := testutil.GetClusterAdminClient(clusterAdminKubeConfig)
if err != nil {
t.Fatalf("unexpected error: %v", err)
}

valerieClientConfig.BearerToken = accessToken
valerieOpenshiftClient, err := client.New(&valerieClientConfig)
valerieOpenshiftClient, _, _, err := testutil.GetClientForUser(clusterAdminClient, *clusterAdminClientConfig, "valerie")
if err != nil {
t.Fatalf("unexpected error: %v", err)
}
Expand Down Expand Up @@ -196,16 +174,12 @@ func TestSelfSubjectAccessReviewsNonExistingNamespace(t *testing.T) {
t.Errorf("unexpected error: %v", err)
}

valerieClientConfig := *clusterAdminClientConfig
valerieClientConfig.Username = ""
valerieClientConfig.Password = ""
valerieClientConfig.BearerToken = ""
valerieClientConfig.CertFile = ""
valerieClientConfig.KeyFile = ""
valerieClientConfig.CertData = nil
valerieClientConfig.KeyData = nil
clusterAdminClient, err := testutil.GetClusterAdminClient(clusterAdminKubeConfig)
if err != nil {
t.Fatalf("unexpected error: %v", err)
}

valerieOpenshiftClient, _, _, err := testutil.GetClientForUser(valerieClientConfig, "valerie")
valerieOpenshiftClient, _, _, err := testutil.GetClientForUser(clusterAdminClient, *clusterAdminClientConfig, "valerie")
if err != nil {
t.Fatalf("unexpected error: %v", err)
}
Expand Down
Loading