@@ -102,18 +102,6 @@ func GetOpenshiftBootstrapClusterRoles() []rbacv1.ClusterRole {
102
102
// four resource can be a single line
103
103
// up to ten-ish resources per line otherwise
104
104
clusterRoles := []rbacv1.ClusterRole {
105
- {
106
- ObjectMeta : metav1.ObjectMeta {
107
- Name : ClusterAdminRoleName ,
108
- Annotations : map [string ]string {
109
- oapi .OpenShiftDescription : "A super-user that can perform any action in the cluster. When granted to a user within a project, they have full control over quota and membership and can perform every action on every resource in the project." ,
110
- },
111
- },
112
- Rules : []rbacv1.PolicyRule {
113
- rbacv1helpers .NewRule (rbacv1 .VerbAll ).Groups (rbacv1 .APIGroupAll ).Resources (rbacv1 .ResourceAll ).RuleOrDie (),
114
- rbacv1helpers .NewRule (rbacv1 .VerbAll ).URLs (rbacv1 .NonResourceAll ).RuleOrDie (),
115
- },
116
- },
117
105
{
118
106
ObjectMeta : metav1.ObjectMeta {
119
107
Name : SudoerRoleName ,
@@ -741,7 +729,6 @@ func GetBootstrapClusterRoles() []rbacv1.ClusterRole {
741
729
// so add them to this list.
742
730
openshiftClusterRoles = append (openshiftClusterRoles , GetDeadClusterRoles ()... )
743
731
kubeClusterRoles := bootstrappolicy .ClusterRoles ()
744
- kubeSAClusterRoles := bootstrappolicy .ControllerRoles ()
745
732
openshiftControllerRoles := ControllerRoles ()
746
733
747
734
// Eventually openshift controllers and kube controllers have different prefixes
@@ -757,26 +744,14 @@ func GetBootstrapClusterRoles() []rbacv1.ClusterRole {
757
744
}
758
745
759
746
conflictingNames := kubeClusterRoleNames .Intersection (openshiftClusterRoleNames )
760
- extraRBACConflicts := conflictingNames .Difference (clusterRoleConflicts )
761
- extraWhitelistEntries := clusterRoleConflicts .Difference (conflictingNames )
762
- switch {
763
- case len (extraRBACConflicts ) > 0 && len (extraWhitelistEntries ) > 0 :
764
- panic (fmt .Sprintf ("kube ClusterRoles conflict with openshift ClusterRoles: %v and ClusterRole whitelist contains a extraneous entries: %v " , extraRBACConflicts .List (), extraWhitelistEntries .List ()))
765
- case len (extraRBACConflicts ) > 0 :
766
- panic (fmt .Sprintf ("kube ClusterRoles conflict with openshift ClusterRoles: %v" , extraRBACConflicts .List ()))
767
- case len (extraWhitelistEntries ) > 0 :
768
- panic (fmt .Sprintf ("ClusterRole whitelist contains a extraneous entries: %v" , extraWhitelistEntries .List ()))
747
+ if len (conflictingNames ) > 0 {
748
+ panic (fmt .Sprintf ("kube ClusterRoles conflict with openshift ClusterRoles: %v" , conflictingNames .List ()))
769
749
}
770
750
771
751
finalClusterRoles := []rbacv1.ClusterRole {}
772
752
finalClusterRoles = append (finalClusterRoles , openshiftClusterRoles ... )
773
753
finalClusterRoles = append (finalClusterRoles , openshiftControllerRoles ... )
774
- finalClusterRoles = append (finalClusterRoles , kubeSAClusterRoles ... )
775
- for i := range kubeClusterRoles {
776
- if ! clusterRoleConflicts .Has (kubeClusterRoles [i ].Name ) {
777
- finalClusterRoles = append (finalClusterRoles , kubeClusterRoles [i ])
778
- }
779
- }
754
+ finalClusterRoles = append (finalClusterRoles , kubeClusterRoles ... )
780
755
781
756
// TODO we should not do this for kube cluster roles since we cannot control them once we run on top of kube
782
757
// conditionally add the web console annotations
@@ -876,7 +851,7 @@ func GetOpenshiftBootstrapClusterRoleBindings() []rbacv1.ClusterRoleBinding {
876
851
newOriginClusterBinding (WebHooksRoleBindingName , WebHooksRoleName ).
877
852
Groups (AuthenticatedGroup , UnauthenticatedGroup ).
878
853
BindingOrDie (),
879
- newOriginClusterBinding ( DiscoveryRoleBindingName , DiscoveryRoleName ).
854
+ rbacv1helpers . NewClusterBinding ( DiscoveryRoleName ).
880
855
Groups (AuthenticatedGroup , UnauthenticatedGroup ).
881
856
BindingOrDie (),
882
857
// Allow all build strategies by default.
@@ -915,7 +890,6 @@ func GetBootstrapClusterRoleBindings() []rbacv1.ClusterRoleBinding {
915
890
openshiftClusterRoleBindings = append (openshiftClusterRoleBindings , GetDeadClusterRoleBindings ()... )
916
891
917
892
kubeClusterRoleBindings := bootstrappolicy .ClusterRoleBindings ()
918
- kubeControllerClusterRoleBindings := bootstrappolicy .ControllerRoleBindings ()
919
893
openshiftControllerClusterRoleBindings := ControllerRoleBindings ()
920
894
921
895
// openshift controllers and kube controllers have different prefixes
@@ -930,44 +904,17 @@ func GetBootstrapClusterRoleBindings() []rbacv1.ClusterRoleBinding {
930
904
}
931
905
932
906
conflictingNames := kubeClusterRoleBindingNames .Intersection (openshiftClusterRoleBindingNames )
933
- extraRBACConflicts := conflictingNames .Difference (clusterRoleBindingConflicts )
934
- extraWhitelistEntries := clusterRoleBindingConflicts .Difference (conflictingNames )
935
- switch {
936
- case len (extraRBACConflicts ) > 0 && len (extraWhitelistEntries ) > 0 :
937
- panic (fmt .Sprintf ("kube ClusterRoleBindings conflict with openshift ClusterRoleBindings: %v and ClusterRoleBinding whitelist contains a extraneous entries: %v " , extraRBACConflicts .List (), extraWhitelistEntries .List ()))
938
- case len (extraRBACConflicts ) > 0 :
939
- panic (fmt .Sprintf ("kube ClusterRoleBindings conflict with openshift ClusterRoleBindings: %v" , extraRBACConflicts .List ()))
940
- case len (extraWhitelistEntries ) > 0 :
941
- panic (fmt .Sprintf ("ClusterRoleBinding whitelist contains a extraneous entries: %v" , extraWhitelistEntries .List ()))
907
+ if len (conflictingNames ) > 0 {
908
+ panic (fmt .Sprintf ("kube ClusterRoleBindings conflict with openshift ClusterRoleBindings: %v" , conflictingNames .List ()))
942
909
}
943
910
944
911
finalClusterRoleBindings := []rbacv1.ClusterRoleBinding {}
945
912
finalClusterRoleBindings = append (finalClusterRoleBindings , openshiftClusterRoleBindings ... )
946
- finalClusterRoleBindings = append (finalClusterRoleBindings , kubeControllerClusterRoleBindings ... )
947
913
finalClusterRoleBindings = append (finalClusterRoleBindings , openshiftControllerClusterRoleBindings ... )
948
- for i := range kubeClusterRoleBindings {
949
- if ! clusterRoleBindingConflicts .Has (kubeClusterRoleBindings [i ].Name ) {
950
- finalClusterRoleBindings = append (finalClusterRoleBindings , kubeClusterRoleBindings [i ])
951
- }
952
- }
953
914
954
915
return finalClusterRoleBindings
955
916
}
956
917
957
- // clusterRoleConflicts lists the roles which are known to conflict with upstream and which we have manually
958
- // deconflicted with our own.
959
- var clusterRoleConflicts = sets .NewString (
960
- // TODO this should probably be re-swizzled to be the delta on top of the kube role
961
- "system:discovery" ,
962
-
963
- // TODO these should be reconsidered
964
- "cluster-admin" ,
965
- )
966
-
967
- // clusterRoleBindingConflicts lists the roles which are known to conflict with upstream and which we have manually
968
- // deconflicted with our own.
969
- var clusterRoleBindingConflicts = sets .NewString ()
970
-
971
918
// The current list of roles considered useful for normal users (non-admin)
972
919
var rolesToShow = sets .NewString (
973
920
"admin" ,
0 commit comments