blob: c6f8a06631c39db74fd9eb2f62cc8f3ab6692165 [file] [log] [blame]
#
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
---
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
name: "submarine-server"
rules:
# need to add submarines/finalizers
# https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/#ownerreferencespermissionenforcement
- apiGroups:
- submarine.apache.org
resources:
- submarines/finalizers
verbs:
- "update"
- apiGroups:
- kubeflow.org
resources:
- tfjobs
- tfjobs/status
- tfjobs/finalizers
- pytorchjobs
- pytorchjobs/status
- pytorchjobs/finalizers
- xgboostjobs
- xgboostjobs/status
- xgboostjobs/finalizers
- notebooks
- notebooks/status
- notebooks/finalizers
verbs:
- get
- list
- watch
- create
- delete
- deletecollection
- patch
- update
- apiGroups:
- traefik.containo.us
resources:
- ingressroutes
- middlewares
verbs:
- get
- list
- watch
- create
- delete
- deletecollection
- patch
- update
- apiGroups:
- machinelearning.seldon.io
resources:
- seldondeployments
verbs:
- get
- list
- watch
- create
- delete
- deletecollection
- patch
- update
- apiGroups:
- networking.istio.io
resources:
- virtualservices
verbs:
- get
- list
- watch
- create
- delete
- deletecollection
- patch
- update
- apiGroups:
- ""
resources:
- pods
- pods/log
- services
- persistentvolumeclaims
- events
- configmaps
verbs:
- '*'
- apiGroups:
- "apps"
resources:
- deployments
- deployments/status
verbs:
- '*'
---
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
name: "observer"
rules:
- apiGroups:
- kubeflow.org
resources:
- tfjobs
- tfjobs/status
- pytorchjobs
- pytorchjobs/status
- xgboostjobs
- xgboostjobs/status
- notebooks
- notebooks/status
verbs:
- get
- list
- watch
---
kind: RoleBinding
apiVersion: rbac.authorization.k8s.io/v1
metadata:
name: "submarine-server"
subjects:
- kind: ServiceAccount
name: "submarine-server"
roleRef:
kind: Role
name: "submarine-server"
apiGroup: rbac.authorization.k8s.io
---
kind: RoleBinding
apiVersion: rbac.authorization.k8s.io/v1
metadata:
name: "observer"
subjects:
- kind: ServiceAccount
name: "default"
roleRef:
kind: Role
name: "observer"
apiGroup: rbac.authorization.k8s.io