105 lines
2.7 KiB
Go
105 lines
2.7 KiB
Go
// +build OpenShiftOAuth
|
|
|
|
package e2e
|
|
|
|
// TODO
|
|
/*
|
|
import (
|
|
"context"
|
|
"testing"
|
|
|
|
"github.com/jenkinsci/kubernetes-operator/pkg/apis/jenkins/v1alpha2"
|
|
"github.com/jenkinsci/kubernetes-operator/pkg/configuration/base/resources"
|
|
"github.com/jenkinsci/kubernetes-operator/pkg/constants"
|
|
|
|
framework "github.com/operator-framework/operator-sdk/pkg/test"
|
|
corev1 "k8s.io/api/core/v1"
|
|
rbacv1 "k8s.io/api/rbac/v1"
|
|
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
|
)
|
|
|
|
const (
|
|
skipTestSafeRestart = true
|
|
skipTestPriorityClass = true
|
|
)
|
|
|
|
func updateJenkinsCR(t *testing.T, jenkins *v1alpha2.Jenkins) {
|
|
t.Log("Update Jenkins CR: OpenShiftOAuth")
|
|
|
|
adminRoleBinding := &rbacv1.RoleBinding{
|
|
TypeMeta: metav1.TypeMeta{
|
|
Kind: "RoleBinding",
|
|
APIVersion: "rbac.authorization.k8s.io/v1",
|
|
},
|
|
ObjectMeta: metav1.ObjectMeta{
|
|
Name: "admin",
|
|
Namespace: jenkins.Namespace,
|
|
},
|
|
RoleRef: rbacv1.RoleRef{
|
|
APIGroup: "rbac.authorization.k8s.io",
|
|
Kind: "ClusterRole",
|
|
Name: "admin",
|
|
},
|
|
Subjects: []rbacv1.Subject{
|
|
{
|
|
Kind: "ServiceAccount",
|
|
Name: constants.OperatorName,
|
|
Namespace: jenkins.Namespace,
|
|
},
|
|
},
|
|
}
|
|
if err := framework.Global.Client.Create(context.TODO(), adminRoleBinding, nil); err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
|
|
jenkins.Spec.JenkinsAPISettings = v1alpha2.JenkinsAPISettings{AuthorizationStrategy: v1alpha2.ServiceAccountAuthorizationStrategy}
|
|
jenkins.Spec.Master.Containers[0].Image = "quay.io/openshift/origin-jenkins"
|
|
jenkins.Spec.Master.Containers[0].Command = []string{
|
|
"bash",
|
|
"-c",
|
|
"/var/jenkins/scripts/init.sh && exec /usr/bin/go-init -main /usr/libexec/s2i/run",
|
|
}
|
|
jenkins.Spec.Roles = []rbacv1.RoleRef{
|
|
{
|
|
APIGroup: "rbac.authorization.k8s.io",
|
|
Kind: "ClusterRole",
|
|
Name: "admin",
|
|
},
|
|
}
|
|
jenkins.Spec.Master.DisableCSRFProtection = true
|
|
jenkins.Spec.Master.Containers[0].Env = append(jenkins.Spec.Master.Containers[0].Env,
|
|
corev1.EnvVar{
|
|
Name: "OPENSHIFT_ENABLE_OAUTH",
|
|
Value: "true",
|
|
},
|
|
corev1.EnvVar{
|
|
Name: "OPENSHIFT_ENABLE_REDIRECT_PROMPT",
|
|
Value: "true",
|
|
},
|
|
corev1.EnvVar{
|
|
Name: "DISABLE_ADMINISTRATIVE_MONITORS",
|
|
Value: "false",
|
|
},
|
|
corev1.EnvVar{
|
|
Name: "KUBERNETES_TRUST_CERTIFICATES",
|
|
Value: "true",
|
|
},
|
|
corev1.EnvVar{
|
|
Name: "JENKINS_UC_INSECURE",
|
|
Value: "false",
|
|
},
|
|
corev1.EnvVar{
|
|
Name: "JENKINS_SERVICE_NAME",
|
|
Value: resources.GetJenkinsHTTPServiceName(jenkins),
|
|
},
|
|
corev1.EnvVar{
|
|
Name: "JNLP_SERVICE_NAME",
|
|
Value: resources.GetJenkinsSlavesServiceName(jenkins),
|
|
},
|
|
)
|
|
|
|
if len(jenkins.Spec.Master.Plugins) == 4 && jenkins.Spec.Master.Plugins[3].Name == "devoptics" {
|
|
jenkins.Spec.Master.Plugins = jenkins.Spec.Master.Plugins[0:3] // remove devoptics plugin
|
|
}
|
|
}
|
|
*/ |