import (\r
corev1 "k8s.io/api/core/v1"\r
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"\r
+ rbacv1 "k8s.io/api/rbac/v1"\r
) \r
\r
func GetClusterRole() []*rbacv1.ClusterRole {\r
},\r
}\r
\r
- return []*rbacv1.ClusterRole{clusterRole1, clusterRole2}\r
+ clusterRole3 := &rbacv1.ClusterRole{\r
+ ObjectMeta: metav1.ObjectMeta{\r
+ Labels: map[string]string{\r
+ "app.kubernetes.io/version": "1.4",\r
+ "helm.sh/chart": "kong-0.36.6",\r
+ "app.kubernetes.io/instance": "release-name",\r
+ "app.kubernetes.io/managed-by": "Helm",\r
+ "app.kubernetes.io/name": "kong",\r
+ },\r
+ Name: "release-name-kong",\r
+ },\r
+ Rules: []rbacv1.PolicyRule{\r
+\r
+ rbacv1.PolicyRule{\r
+ Resources: []string{\r
+\r
+ "endpoints",\r
+ "nodes",\r
+ "pods",\r
+ "secrets",\r
+ },\r
+ Verbs: []string{\r
+\r
+ "list",\r
+ "watch",\r
+ },\r
+ APIGroups: []string{\r
+\r
+ "",\r
+ },\r
+ },\r
+ rbacv1.PolicyRule{\r
+ APIGroups: []string{\r
+\r
+ "",\r
+ },\r
+ Resources: []string{\r
+\r
+ "nodes",\r
+ },\r
+ Verbs: []string{\r
+\r
+ "get",\r
+ },\r
+ },\r
+ rbacv1.PolicyRule{\r
+ APIGroups: []string{\r
+\r
+ "",\r
+ },\r
+ Resources: []string{\r
+\r
+ "services",\r
+ },\r
+ Verbs: []string{\r
+\r
+ "get",\r
+ "list",\r
+ "watch",\r
+ },\r
+ },\r
+ rbacv1.PolicyRule{\r
+ APIGroups: []string{\r
+\r
+ "extensions",\r
+ "networking.k8s.io",\r
+ },\r
+ Resources: []string{\r
+\r
+ "ingresses",\r
+ },\r
+ Verbs: []string{\r
+\r
+ "get",\r
+ "list",\r
+ "watch",\r
+ },\r
+ },\r
+ rbacv1.PolicyRule{\r
+ APIGroups: []string{\r
+\r
+ "",\r
+ },\r
+ Resources: []string{\r
+\r
+ "events",\r
+ },\r
+ Verbs: []string{\r
+\r
+ "create",\r
+ "patch",\r
+ },\r
+ },\r
+ rbacv1.PolicyRule{\r
+ APIGroups: []string{\r
+\r
+ "extensions",\r
+ "networking.k8s.io",\r
+ },\r
+ Resources: []string{\r
+\r
+ "ingresses/status",\r
+ },\r
+ Verbs: []string{\r
+\r
+ "update",\r
+ },\r
+ },\r
+ rbacv1.PolicyRule{\r
+ Verbs: []string{\r
+\r
+ "get",\r
+ "list",\r
+ "watch",\r
+ },\r
+ APIGroups: []string{\r
+\r
+ "configuration.konghq.com",\r
+ },\r
+ Resources: []string{\r
+\r
+ "kongplugins",\r
+ "kongcredentials",\r
+ "kongconsumers",\r
+ "kongingresses",\r
+ },\r
+ },\r
+ },\r
+ TypeMeta: metav1.TypeMeta{\r
+ APIVersion: "rbac.authorization.k8s.io/v1",\r
+ Kind: "ClusterRole",\r
+ },\r
+ }\r
+\r
+ clusterRole4 := &rbacv1.ClusterRole{\r
+ ObjectMeta: metav1.ObjectMeta{\r
+ Labels: map[string]string{\r
+ "app.kubernetes.io/managed-by": "Helm",\r
+ "app.kubernetes.io/name": "kong",\r
+ "app.kubernetes.io/version": "1.4",\r
+ "helm.sh/chart": "kong-0.36.6",\r
+ "app.kubernetes.io/instance": "release-name",\r
+ },\r
+ Name: "release-name-kong",\r
+ },\r
+ Rules: []rbacv1.PolicyRule{\r
+\r
+ rbacv1.PolicyRule{\r
+ APIGroups: []string{\r
+\r
+ "",\r
+ },\r
+ Resources: []string{\r
+\r
+ "endpoints",\r
+ "nodes",\r
+ "pods",\r
+ "secrets",\r
+ },\r
+ Verbs: []string{\r
+\r
+ "list",\r
+ "watch",\r
+ },\r
+ },\r
+ rbacv1.PolicyRule{\r
+ Resources: []string{\r
+\r
+ "nodes",\r
+ },\r
+ Verbs: []string{\r
+\r
+ "get",\r
+ },\r
+ APIGroups: []string{\r
+\r
+ "",\r
+ },\r
+ },\r
+ rbacv1.PolicyRule{\r
+ Verbs: []string{\r
+\r
+ "get",\r
+ "list",\r
+ "watch",\r
+ },\r
+ APIGroups: []string{\r
+\r
+ "",\r
+ },\r
+ Resources: []string{\r
+\r
+ "services",\r
+ },\r
+ },\r
+ rbacv1.PolicyRule{\r
+ APIGroups: []string{\r
+\r
+ "extensions",\r
+ "networking.k8s.io",\r
+ },\r
+ Resources: []string{\r
+\r
+ "ingresses",\r
+ },\r
+ Verbs: []string{\r
+\r
+ "get",\r
+ "list",\r
+ "watch",\r
+ },\r
+ },\r
+ rbacv1.PolicyRule{\r
+ Resources: []string{\r
+\r
+ "events",\r
+ },\r
+ Verbs: []string{\r
+\r
+ "create",\r
+ "patch",\r
+ },\r
+ APIGroups: []string{\r
+\r
+ "",\r
+ },\r
+ },\r
+ rbacv1.PolicyRule{\r
+ APIGroups: []string{\r
+\r
+ "extensions",\r
+ "networking.k8s.io",\r
+ },\r
+ Resources: []string{\r
+\r
+ "ingresses/status",\r
+ },\r
+ Verbs: []string{\r
+\r
+ "update",\r
+ },\r
+ },\r
+ rbacv1.PolicyRule{\r
+ APIGroups: []string{\r
+\r
+ "configuration.konghq.com",\r
+ },\r
+ Resources: []string{\r
+\r
+ "kongplugins",\r
+ "kongcredentials",\r
+ "kongconsumers",\r
+ "kongingresses",\r
+ },\r
+ Verbs: []string{\r
+\r
+ "get",\r
+ "list",\r
+ "watch",\r
+ },\r
+ },\r
+ },\r
+ TypeMeta: metav1.TypeMeta{\r
+ APIVersion: "rbac.authorization.k8s.io/v1",\r
+ Kind: "ClusterRole",\r
+ },\r
+ }\r
\r
+ return []*rbacv1.ClusterRole{clusterRole1, clusterRole2, clusterRole3, clusterRole4}\r
}
\ No newline at end of file