Improve fission helm chart; split it into "fission core" and "fission all". fission-core is the minimal install, and fission-all will have all the bells and whistles. * Update/Add fission-core & fission-all helm charts * Fix incompatible types for comparison * Add message queue trigger * Rename openshiftRBAC to openshift * Update documentation & comments * Fix logger & kubewatcher failed to access kubernetes resource due to RBAC
259 lines
4.5 KiB
YAML
259 lines
4.5 KiB
YAML
{{ if .Values.openshift }}
|
|
|
|
# For openshift
|
|
|
|
---
|
|
apiVersion: v1
|
|
kind: ProjectRequest
|
|
metadata:
|
|
name: fission
|
|
labels:
|
|
name: fission
|
|
|
|
---
|
|
apiVersion: v1
|
|
kind: ProjectRequest
|
|
metadata:
|
|
name: fission-function
|
|
labels:
|
|
name: fission-function
|
|
|
|
---
|
|
apiVersion: v1
|
|
kind: ServiceAccount
|
|
metadata:
|
|
name: fission-admin
|
|
namespace: fission
|
|
|
|
---
|
|
apiVersion: v1
|
|
kind: ClusterRole
|
|
metadata:
|
|
name: fission:fission-admin
|
|
rules:
|
|
- apiGroups:
|
|
- extensions
|
|
attributeRestrictions: null
|
|
resources:
|
|
- deployments
|
|
verbs:
|
|
- create
|
|
- get
|
|
- list
|
|
- update
|
|
- watch
|
|
- apiGroups:
|
|
- ""
|
|
attributeRestrictions: null
|
|
resources:
|
|
- pods
|
|
verbs:
|
|
- get
|
|
- list
|
|
- update
|
|
|
|
---
|
|
apiVersion: v1
|
|
groupNames: null
|
|
kind: RoleBinding
|
|
metadata:
|
|
name: fission:fission-admin
|
|
namespace: fission-function
|
|
roleRef:
|
|
name: fission:fission-admin
|
|
subjects:
|
|
- kind: ServiceAccount
|
|
name: fission-admin
|
|
namespace: fission
|
|
userNames:
|
|
- system:serviceaccount:fission:fission-admin
|
|
|
|
{{ else }}
|
|
|
|
# For all environments except openshift
|
|
|
|
---
|
|
apiVersion: v1
|
|
kind: Namespace
|
|
metadata:
|
|
name: {{ .Values.functionNamespace }}
|
|
labels:
|
|
name: fission-function
|
|
chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
|
|
|
|
---
|
|
apiVersion: v1
|
|
kind: ServiceAccount
|
|
metadata:
|
|
name: fission-admin
|
|
namespace: fission
|
|
|
|
---
|
|
kind: RoleBinding
|
|
apiVersion: rbac.authorization.k8s.io/v1beta1
|
|
metadata:
|
|
name: fission-admin
|
|
namespace: fission
|
|
subjects:
|
|
- kind: ServiceAccount
|
|
name: fission-admin
|
|
namespace: fission
|
|
roleRef:
|
|
kind: ClusterRole
|
|
name: admin
|
|
apiGroup: rbac.authorization.k8s.io
|
|
|
|
---
|
|
kind: RoleBinding
|
|
apiVersion: rbac.authorization.k8s.io/v1beta1
|
|
metadata:
|
|
name: fission-function-admin
|
|
namespace: fission-function
|
|
subjects:
|
|
- kind: ServiceAccount
|
|
name: fission-admin
|
|
namespace: fission
|
|
roleRef:
|
|
kind: ClusterRole
|
|
name: admin
|
|
apiGroup: rbac.authorization.k8s.io
|
|
|
|
{{ end }}
|
|
|
|
---
|
|
apiVersion: extensions/v1beta1
|
|
kind: Deployment
|
|
metadata:
|
|
name: controller
|
|
labels:
|
|
chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
|
|
spec:
|
|
replicas: 1
|
|
template:
|
|
metadata:
|
|
labels:
|
|
svc: controller
|
|
spec:
|
|
containers:
|
|
- name: controller
|
|
image: "{{ .Values.image }}:{{ .Values.imageTag }}"
|
|
command: ["/fission-bundle"]
|
|
args: ["--controllerPort", "8888", "--filepath", "/filestore"]
|
|
|
|
---
|
|
apiVersion: extensions/v1beta1
|
|
kind: Deployment
|
|
metadata:
|
|
name: router
|
|
labels:
|
|
chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
|
|
spec:
|
|
replicas: 1
|
|
template:
|
|
metadata:
|
|
labels:
|
|
svc: router
|
|
spec:
|
|
containers:
|
|
- name: router
|
|
image: "{{ .Values.image }}:{{ .Values.imageTag }}"
|
|
command: ["/fission-bundle"]
|
|
args: ["--routerPort", "8888"]
|
|
|
|
---
|
|
apiVersion: v1
|
|
kind: Service
|
|
metadata:
|
|
name: poolmgr
|
|
labels:
|
|
svc: poolmgr
|
|
chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
|
|
spec:
|
|
type: ClusterIP
|
|
ports:
|
|
- port: 80
|
|
targetPort: 8888
|
|
selector:
|
|
svc: poolmgr
|
|
|
|
---
|
|
apiVersion: extensions/v1beta1
|
|
kind: Deployment
|
|
metadata:
|
|
name: poolmgr
|
|
labels:
|
|
chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
|
|
spec:
|
|
replicas: 1
|
|
template:
|
|
metadata:
|
|
labels:
|
|
svc: poolmgr
|
|
spec:
|
|
containers:
|
|
- name: poolmgr
|
|
image: "{{ .Values.image }}:{{ .Values.imageTag }}"
|
|
command: ["/fission-bundle"]
|
|
args: ["--poolmgrPort", "8888", "--namespace", "{{ .Values.functionNamespace }}"]
|
|
serviceAccount: fission-admin
|
|
|
|
---
|
|
apiVersion: extensions/v1beta1
|
|
kind: Deployment
|
|
metadata:
|
|
name: kubewatcher
|
|
labels:
|
|
chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
|
|
spec:
|
|
replicas: 1
|
|
template:
|
|
metadata:
|
|
labels:
|
|
svc: kubewatcher
|
|
spec:
|
|
containers:
|
|
- name: kubewatcher
|
|
image: "{{ .Values.image }}:{{ .Values.imageTag }}"
|
|
command: ["/fission-bundle"]
|
|
args: ["--kubewatcher"]
|
|
serviceAccount: fission-admin
|
|
|
|
---
|
|
apiVersion: v1
|
|
kind: Service
|
|
metadata:
|
|
name: etcd
|
|
labels:
|
|
svc: etcd
|
|
chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
|
|
spec:
|
|
type: ClusterIP
|
|
ports:
|
|
- port: 2379
|
|
targetPort: 2379
|
|
selector:
|
|
svc: etcd
|
|
|
|
---
|
|
apiVersion: extensions/v1beta1
|
|
kind: Deployment
|
|
metadata:
|
|
name: etcd
|
|
labels:
|
|
chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
|
|
spec:
|
|
replicas: 1
|
|
template:
|
|
metadata:
|
|
labels:
|
|
svc: etcd
|
|
spec:
|
|
containers:
|
|
- name: etcd
|
|
image: quay.io/coreos/etcd
|
|
env:
|
|
- name: ETCD_LISTEN_CLIENT_URLS
|
|
value: http://0.0.0.0:2379
|
|
- name: ETCD_ADVERTISE_CLIENT_URLS
|
|
value: http://etcd:2379
|