Make CreatePrivilegedPSPBinding reentrant

Make CreatePrivilegedPSPBinding reentrant so tests using it (e.g. DNS) can be
executed more than once against a cluster. Without this change, such tests will
fail because the PSP already exists, short circuiting test setup.
pull/58/head
Dan Mace 2018-10-15 15:31:25 -04:00
parent b11211ed8c
commit 0bef5e4325
1 changed files with 6 additions and 2 deletions

View File

@ -113,7 +113,9 @@ func CreatePrivilegedPSPBinding(f *Framework, namespace string) {
psp := PrivilegedPSP(podSecurityPolicyPrivileged)
psp, err = f.ClientSet.ExtensionsV1beta1().PodSecurityPolicies().Create(psp)
ExpectNoError(err, "Failed to create PSP %s", podSecurityPolicyPrivileged)
if !apierrs.IsAlreadyExists(err) {
ExpectNoError(err, "Failed to create PSP %s", podSecurityPolicyPrivileged)
}
if IsRBACEnabled(f) {
// Create the Role to bind it to the namespace.
@ -126,7 +128,9 @@ func CreatePrivilegedPSPBinding(f *Framework, namespace string) {
Verbs: []string{"use"},
}},
})
ExpectNoError(err, "Failed to create PSP role")
if !apierrs.IsAlreadyExists(err) {
ExpectNoError(err, "Failed to create PSP role")
}
}
})