feat(helm): add new Helm charts for content and central-storage services, update authentication values
Signed-off-by: zhenyus <zhenyus@mathmast.com>
This commit is contained in:
parent
d8b046dc97
commit
b8c70448a3
@ -1,6 +1,6 @@
|
|||||||
apiVersion: v2
|
apiVersion: v2
|
||||||
name: authentication
|
name: authentication
|
||||||
description: A Helm Chart of authentication, which part of Freeleaps Platgorm, powered by Freeleaps.
|
description: A Helm Chart of authentication, which part of Freeleaps Platform, powered by Freeleaps.
|
||||||
type: application
|
type: application
|
||||||
version: 0.0.1
|
version: 0.0.1
|
||||||
appVersion: "0.0.1"
|
appVersion: "0.0.1"
|
||||||
|
|||||||
@ -0,0 +1,19 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: Secret
|
||||||
|
metadata:
|
||||||
|
name: authentication-config
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
type: Opaque
|
||||||
|
data:
|
||||||
|
TZ: {{ .Values.authentication.configs.tz | b64enc | quote }}
|
||||||
|
APP_NAME: {{ .Values.authentication.configs.appName | b64enc | quote }}
|
||||||
|
DEVSVC_WEBAPI_URL_BASE: {{ .Values.authentication.configs.devsvcWebapiUrlBase | b64enc | quote }}
|
||||||
|
NOTIFICATION_WEBAPI_URL_BASE: {{ .Values.authentication.configs.notificationWebapiUrlBase | b64enc | quote }}
|
||||||
|
JWT_SECRET_KEY: {{ .Values.authentication.configs.jwtSecretKey | b64enc | quote }}
|
||||||
|
JWT_ALGORITHM: {{ .Values.authentication.configs.jwtAlgorithm | b64enc | quote }}
|
||||||
|
SERVICE_API_ACCESS_HOST: {{ .Values.authentication.configs.serviceApiAccessHost | b64enc | quote }}
|
||||||
|
SERVICE_API_ACCESS_PORT: {{ .Values.authentication.configs.serviceApiAccessPort | b64enc | quote }}
|
||||||
|
MONGODB_NAME: {{ .Values.authentication.configs.mongodbName | b64enc | quote }}
|
||||||
|
MONGODB_PORT: {{ .Values.authentication.configs.mongodbPort | b64enc | quote }}
|
||||||
|
MONGODB_URI: {{ .Values.authentication.configs.mongodbUri | b64enc | quote }}
|
||||||
|
|
||||||
@ -0,0 +1,27 @@
|
|||||||
|
{{ $namespace := .Release.Namespace }}
|
||||||
|
{{ $appVersion := .Chart.AppVersion | quote }}
|
||||||
|
{{ $releaseCertificate := .Release.Service }}
|
||||||
|
{{ $releaseName := .Release.Name }}
|
||||||
|
{{- range $ingress := .Values.authentication.ingresses }}
|
||||||
|
{{- if not $ingress.tls.exists }}
|
||||||
|
---
|
||||||
|
apiVersion: cert-manager.io/v1
|
||||||
|
kind: Certificate
|
||||||
|
metadata:
|
||||||
|
name: {{ $ingress.name }}
|
||||||
|
namespace: {{ $namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/version: {{ $appVersion }}
|
||||||
|
app.kubernetes.io/name: {{ $ingress.name | quote }}
|
||||||
|
app.kubernetes.io/managed-by: {{ $releaseCertificate }}
|
||||||
|
app.kubernetes.io/instance: {{ $releaseName }}
|
||||||
|
spec:
|
||||||
|
commonName: {{ $ingress.host }}
|
||||||
|
dnsNames:
|
||||||
|
- {{ $ingress.host }}
|
||||||
|
issuerRef:
|
||||||
|
name: {{ $ingress.tls.issuerRef.name }}
|
||||||
|
kind: {{ $ingress.tls.issuerRef.kind }}
|
||||||
|
secretName: {{ $ingress.tls.name }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
@ -0,0 +1,98 @@
|
|||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
|
||||||
|
app.kubernetes.io/name: "authentication"
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
name: "authentication"
|
||||||
|
namespace: {{ .Release.Namespace | quote }}
|
||||||
|
spec:
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app.kubernetes.io/name: "authentication"
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
replicas: {{ .Values.authentication.replicas }}
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
|
||||||
|
app.kubernetes.io/name: "authentication"
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
spec:
|
||||||
|
containers:
|
||||||
|
- name: "authentication"
|
||||||
|
image: "{{ coalesce .Values.authentication.image.registry .Values.global.registry "docker.io"}}/{{ coalesce .Values.authentication.image.repository .Values.global.repository }}/{{ .Values.authentication.image.name }}:{{ .Values.authentication.image.tag | default "latest" }}"
|
||||||
|
imagePullPolicy: {{ .Values.authentication.image.imagePullPolicy | default "IfNotPresent" }}
|
||||||
|
ports:
|
||||||
|
{{- range $port := .Values.authentication.ports }}
|
||||||
|
- containerPort: {{ $port.containerPort }}
|
||||||
|
name: {{ $port.name }}
|
||||||
|
protocol: {{ $port.protocol }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.authentication.resources }}
|
||||||
|
resources:
|
||||||
|
{{- toYaml .Values.authentication.resources | nindent 12 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.authentication.probes }}
|
||||||
|
{{- if and (.Values.authentication.probes.liveness) (eq .Values.authentication.probes.liveness.type "httpGet") }}
|
||||||
|
livenessProbe:
|
||||||
|
httpGet:
|
||||||
|
path: {{ .Values.authentication.probes.liveness.config.path }}
|
||||||
|
port: {{ .Values.authentication.probes.liveness.config.port }}
|
||||||
|
{{- if .Values.authentication.probes.liveness.config.initialDelaySeconds }}
|
||||||
|
initialDelaySeconds: {{ .Values.authentication.probes.liveness.config.initialDelaySeconds }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.authentication.probes.liveness.config.periodSeconds }}
|
||||||
|
periodSeconds: {{ .Values.authentication.probes.liveness.config.periodSeconds }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.authentication.probes.liveness.config.timeoutSeconds }}
|
||||||
|
timeoutSeconds: {{ .Values.authentication.probes.liveness.config.timeoutSeconds }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.authentication.probes.liveness.config.successThreshold }}
|
||||||
|
successThreshold: {{ .Values.authentication.probes.liveness.config.successThreshold }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.authentication.probes.liveness.config.failureThreshold }}
|
||||||
|
failureThreshold: {{ .Values.authentication.probes.liveness.config.failureThreshold }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.authentication.probes.liveness.config.terminationGracePeriodSeconds }}
|
||||||
|
terminationGracePeriodSeconds: {{ .Values.authentication.probes.liveness.config.terminationGracePeriodSeconds }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if and (.Values.authentication.probes.readiness) (eq .Values.authentication.probes.readiness.type "httpGet") }}
|
||||||
|
readinessProbe:
|
||||||
|
httpGet:
|
||||||
|
path: {{ .Values.authentication.probes.readiness.config.path }}
|
||||||
|
port: {{ .Values.authentication.probes.readiness.config.port }}
|
||||||
|
{{- if .Values.authentication.probes.readiness.config.initialDelaySeconds }}
|
||||||
|
initialDelaySeconds: {{ .Values.authentication.probes.readiness.config.initialDelaySeconds }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.authentication.probes.readiness.config.periodSeconds }}
|
||||||
|
periodSeconds: {{ .Values.authentication.probes.readiness.config.periodSeconds }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.authentication.probes.readiness.config.timeoutSeconds }}
|
||||||
|
timeoutSeconds: {{ .Values.authentication.probes.readiness.config.timeoutSeconds }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.authentication.probes.readiness.config.successThreshold }}
|
||||||
|
successThreshold: {{ .Values.authentication.probes.readiness.config.successThreshold }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.authentication.probes.readiness.config.failureThreshold }}
|
||||||
|
failureThreshold: {{ .Values.authentication.probes.readiness.config.failureThreshold }}
|
||||||
|
{{- end }}:%
|
||||||
|
{{- if .Values.authentication.probes.readiness.config.terminationGracePeriodSeconds }}
|
||||||
|
terminationGracePeriodSeconds: {{ .Values.authentication.probes.readiness.config.terminationGracePeriodSeconds }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end}}
|
||||||
|
env:
|
||||||
|
{{- range $key, $value := .Values.authentication.configs }}
|
||||||
|
- name: {{ $key | snakecase | upper }}
|
||||||
|
valueFrom:
|
||||||
|
secretKeyRef:
|
||||||
|
name: authentication-config
|
||||||
|
key: {{ $key | snakecase | upper }}
|
||||||
|
{{- end }}
|
||||||
@ -0,0 +1,36 @@
|
|||||||
|
{{ $namespace := .Release.Namespace }}
|
||||||
|
{{ $appVersion := .Chart.AppVersion | quote }}
|
||||||
|
{{ $releaseIngress := .Release.Service }}
|
||||||
|
{{ $releaseName := .Release.Name }}
|
||||||
|
{{- range $ingress := .Values.authentication.ingresses }}
|
||||||
|
---
|
||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: Ingress
|
||||||
|
metadata:
|
||||||
|
name: {{ $ingress.name }}
|
||||||
|
namespace: {{ $namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/version: {{ $appVersion }}
|
||||||
|
app.kubernetes.io/name: {{ $ingress.name | quote }}
|
||||||
|
app.kubernetes.io/managed-by: {{ $releaseIngress }}
|
||||||
|
app.kubernetes.io/instance: {{ $releaseName }}
|
||||||
|
spec:
|
||||||
|
{{- if $ingress.class }}
|
||||||
|
ingressClassName: {{ $ingress.class }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if $ingress.tls }}
|
||||||
|
tls:
|
||||||
|
- hosts:
|
||||||
|
- {{ $ingress.host }}
|
||||||
|
{{- if $ingress.tls.exists }}
|
||||||
|
secretName: {{ $ingress.tls.secretRef.name }}
|
||||||
|
{{- else }}
|
||||||
|
secretName: {{ $ingress.tls.name }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
rules:
|
||||||
|
- host: {{ $ingress.host }}
|
||||||
|
http:
|
||||||
|
paths:
|
||||||
|
{{- toYaml $ingress.rules | nindent 10 }}
|
||||||
|
{{- end }}
|
||||||
@ -0,0 +1,26 @@
|
|||||||
|
{{ $namespace := .Release.Namespace }}
|
||||||
|
{{ $appVersion := .Chart.AppVersion | quote }}
|
||||||
|
{{ $releaseService := .Release.Service }}
|
||||||
|
{{ $releaseName := .Release.Name }}
|
||||||
|
{{- range $service := .Values.authentication.services }}
|
||||||
|
---
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: {{ $service.name }}
|
||||||
|
namespace: {{ $namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/version: {{ $appVersion }}
|
||||||
|
app.kubernetes.io/name: {{ $service.name | quote }}
|
||||||
|
app.kubernetes.io/managed-by: {{ $releaseService }}
|
||||||
|
app.kubernetes.io/instance: {{ $releaseName }}
|
||||||
|
spec:
|
||||||
|
ports:
|
||||||
|
- port: {{ $service.port }}
|
||||||
|
targetPort: {{ $service.targetPort }}
|
||||||
|
selector:
|
||||||
|
app.kubernetes.io/version: {{ $appVersion }}
|
||||||
|
app.kubernetes.io/name: "authentication"
|
||||||
|
app.kubernetes.io/managed-by: {{ $releaseService }}
|
||||||
|
app.kubernetes.io/instance: {{ $releaseName }}
|
||||||
|
{{- end }}
|
||||||
@ -65,8 +65,8 @@ authentication:
|
|||||||
# SERVICE_API_ACCESS_PORT
|
# SERVICE_API_ACCESS_PORT
|
||||||
serviceApiAccessPort: "8004"
|
serviceApiAccessPort: "8004"
|
||||||
# MONGODB_NAME
|
# MONGODB_NAME
|
||||||
mongodbName: ""
|
mongodbName: "freeleaps2"
|
||||||
# MONGODB_PORT
|
# MONGODB_PORT
|
||||||
mongodbPort: "27017"
|
mongodbPort: "27017"
|
||||||
# MONGODB_URL
|
# MONGODB_URI
|
||||||
mongodbUrl: ""
|
mongodbUri: "mongodb://freeleaps-alpha-mongodb.freeleaps-alpha.svc.freeleaps.cluster:27017/"
|
||||||
|
|||||||
@ -51,5 +51,5 @@ authentication:
|
|||||||
mongodbName: ""
|
mongodbName: ""
|
||||||
# MONGODB_PORT
|
# MONGODB_PORT
|
||||||
mongodbPort: "27017"
|
mongodbPort: "27017"
|
||||||
# MONGODB_URL
|
# MONGODB_URI
|
||||||
mongodbUrl: ""
|
mongodbUri: ""
|
||||||
|
|||||||
6
freeleaps/helm-pkg/central-storage/Chart.yaml
Normal file
6
freeleaps/helm-pkg/central-storage/Chart.yaml
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
apiVersion: v2
|
||||||
|
name: central-storage
|
||||||
|
description: A Helm Chart of Central Storage, which part of Freeleaps Platform, powered by Freeleaps.
|
||||||
|
type: application
|
||||||
|
version: 0.0.1
|
||||||
|
appVersion: "0.0.1"
|
||||||
@ -0,0 +1,17 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: Secret
|
||||||
|
metadata:
|
||||||
|
name: central-storage-config
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
type: Opaque
|
||||||
|
data:
|
||||||
|
TZ: {{ .Values.central-storage.configs.tz | b64enc | quote }}
|
||||||
|
APP_NAME: {{ .Values.central-storage.configs.appName | b64enc | quote }}
|
||||||
|
SERVICE_API_ACCESS_HOST: {{ .Values.central-storage.configs.serviceApiAccessHost | b64enc | quote }}
|
||||||
|
SERVICE_API_ACCESS_PORT: {{ .Values.central-storage.configs.serviceApiAccessPort | b64enc | quote }}
|
||||||
|
MONGODB_NAME: {{ .Values.central-storage.configs.mongodbName | b64enc | quote }}
|
||||||
|
MONGODB_PORT: {{ .Values.central-storage.configs.mongodbPort | b64enc | quote }}
|
||||||
|
MONGODB_URI: {{ .Values.central-storage.configs.mongodbUri | b64enc | quote }}
|
||||||
|
AZURE_STORAGE_DOCUMENT_API_KEY: {{ .Values.central-storage.configs.azureStorageDocumentApiKey | b64enc | quote }}
|
||||||
|
AZURE_STORAGE_DOCUMENT_API_ENDPOINT: {{ .Values.central-storage.configs.azureStorageDocumentApiEndpoint | b64enc | quote }}
|
||||||
|
|
||||||
@ -0,0 +1,27 @@
|
|||||||
|
{{ $namespace := .Release.Namespace }}
|
||||||
|
{{ $appVersion := .Chart.AppVersion | quote }}
|
||||||
|
{{ $releaseCertificate := .Release.Service }}
|
||||||
|
{{ $releaseName := .Release.Name }}
|
||||||
|
{{- range $ingress := .Values.central-storage.ingresses }}
|
||||||
|
{{- if not $ingress.tls.exists }}
|
||||||
|
---
|
||||||
|
apiVersion: cert-manager.io/v1
|
||||||
|
kind: Certificate
|
||||||
|
metadata:
|
||||||
|
name: {{ $ingress.name }}
|
||||||
|
namespace: {{ $namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/version: {{ $appVersion }}
|
||||||
|
app.kubernetes.io/name: {{ $ingress.name | quote }}
|
||||||
|
app.kubernetes.io/managed-by: {{ $releaseCertificate }}
|
||||||
|
app.kubernetes.io/instance: {{ $releaseName }}
|
||||||
|
spec:
|
||||||
|
commonName: {{ $ingress.host }}
|
||||||
|
dnsNames:
|
||||||
|
- {{ $ingress.host }}
|
||||||
|
issuerRef:
|
||||||
|
name: {{ $ingress.tls.issuerRef.name }}
|
||||||
|
kind: {{ $ingress.tls.issuerRef.kind }}
|
||||||
|
secretName: {{ $ingress.tls.name }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
@ -0,0 +1,98 @@
|
|||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
|
||||||
|
app.kubernetes.io/name: "central-storage"
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
name: "central-storage"
|
||||||
|
namespace: {{ .Release.Namespace | quote }}
|
||||||
|
spec:
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app.kubernetes.io/name: "central-storage"
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
replicas: {{ .Values.central-storage.replicas }}
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
|
||||||
|
app.kubernetes.io/name: "central-storage"
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
spec:
|
||||||
|
containers:
|
||||||
|
- name: "central-storage"
|
||||||
|
image: "{{ coalesce .Values.central-storage.image.registry .Values.global.registry "docker.io"}}/{{ coalesce .Values.central-storage.image.repository .Values.global.repository }}/{{ .Values.central-storage.image.name }}:{{ .Values.central-storage.image.tag | default "latest" }}"
|
||||||
|
imagePullPolicy: {{ .Values.central-storage.image.imagePullPolicy | default "IfNotPresent" }}
|
||||||
|
ports:
|
||||||
|
{{- range $port := .Values.central-storage.ports }}
|
||||||
|
- containerPort: {{ $port.containerPort }}
|
||||||
|
name: {{ $port.name }}
|
||||||
|
protocol: {{ $port.protocol }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.central-storage.resources }}
|
||||||
|
resources:
|
||||||
|
{{- toYaml .Values.central-storage.resources | nindent 12 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.central-storage.probes }}
|
||||||
|
{{- if and (.Values.central-storage.probes.liveness) (eq .Values.central-storage.probes.liveness.type "httpGet") }}
|
||||||
|
livenessProbe:
|
||||||
|
httpGet:
|
||||||
|
path: {{ .Values.central-storage.probes.liveness.config.path }}
|
||||||
|
port: {{ .Values.central-storage.probes.liveness.config.port }}
|
||||||
|
{{- if .Values.central-storage.probes.liveness.config.initialDelaySeconds }}
|
||||||
|
initialDelaySeconds: {{ .Values.central-storage.probes.liveness.config.initialDelaySeconds }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.central-storage.probes.liveness.config.periodSeconds }}
|
||||||
|
periodSeconds: {{ .Values.central-storage.probes.liveness.config.periodSeconds }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.central-storage.probes.liveness.config.timeoutSeconds }}
|
||||||
|
timeoutSeconds: {{ .Values.central-storage.probes.liveness.config.timeoutSeconds }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.central-storage.probes.liveness.config.successThreshold }}
|
||||||
|
successThreshold: {{ .Values.central-storage.probes.liveness.config.successThreshold }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.central-storage.probes.liveness.config.failureThreshold }}
|
||||||
|
failureThreshold: {{ .Values.central-storage.probes.liveness.config.failureThreshold }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.central-storage.probes.liveness.config.terminationGracePeriodSeconds }}
|
||||||
|
terminationGracePeriodSeconds: {{ .Values.central-storage.probes.liveness.config.terminationGracePeriodSeconds }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if and (.Values.central-storage.probes.readiness) (eq .Values.central-storage.probes.readiness.type "httpGet") }}
|
||||||
|
readinessProbe:
|
||||||
|
httpGet:
|
||||||
|
path: {{ .Values.central-storage.probes.readiness.config.path }}
|
||||||
|
port: {{ .Values.central-storage.probes.readiness.config.port }}
|
||||||
|
{{- if .Values.central-storage.probes.readiness.config.initialDelaySeconds }}
|
||||||
|
initialDelaySeconds: {{ .Values.central-storage.probes.readiness.config.initialDelaySeconds }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.central-storage.probes.readiness.config.periodSeconds }}
|
||||||
|
periodSeconds: {{ .Values.central-storage.probes.readiness.config.periodSeconds }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.central-storage.probes.readiness.config.timeoutSeconds }}
|
||||||
|
timeoutSeconds: {{ .Values.central-storage.probes.readiness.config.timeoutSeconds }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.central-storage.probes.readiness.config.successThreshold }}
|
||||||
|
successThreshold: {{ .Values.central-storage.probes.readiness.config.successThreshold }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.central-storage.probes.readiness.config.failureThreshold }}
|
||||||
|
failureThreshold: {{ .Values.central-storage.probes.readiness.config.failureThreshold }}
|
||||||
|
{{- end }}:%
|
||||||
|
{{- if .Values.central-storage.probes.readiness.config.terminationGracePeriodSeconds }}
|
||||||
|
terminationGracePeriodSeconds: {{ .Values.central-storage.probes.readiness.config.terminationGracePeriodSeconds }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end}}
|
||||||
|
env:
|
||||||
|
{{- range $key, $value := .Values.central-storage.configs }}
|
||||||
|
- name: {{ $key | snakecase | upper }}
|
||||||
|
valueFrom:
|
||||||
|
secretKeyRef:
|
||||||
|
name: central-storage-config
|
||||||
|
key: {{ $key | snakecase | upper }}
|
||||||
|
{{- end }}
|
||||||
@ -0,0 +1,36 @@
|
|||||||
|
{{ $namespace := .Release.Namespace }}
|
||||||
|
{{ $appVersion := .Chart.AppVersion | quote }}
|
||||||
|
{{ $releaseIngress := .Release.Service }}
|
||||||
|
{{ $releaseName := .Release.Name }}
|
||||||
|
{{- range $ingress := .Values.central-storage.ingresses }}
|
||||||
|
---
|
||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: Ingress
|
||||||
|
metadata:
|
||||||
|
name: {{ $ingress.name }}
|
||||||
|
namespace: {{ $namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/version: {{ $appVersion }}
|
||||||
|
app.kubernetes.io/name: {{ $ingress.name | quote }}
|
||||||
|
app.kubernetes.io/managed-by: {{ $releaseIngress }}
|
||||||
|
app.kubernetes.io/instance: {{ $releaseName }}
|
||||||
|
spec:
|
||||||
|
{{- if $ingress.class }}
|
||||||
|
ingressClassName: {{ $ingress.class }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if $ingress.tls }}
|
||||||
|
tls:
|
||||||
|
- hosts:
|
||||||
|
- {{ $ingress.host }}
|
||||||
|
{{- if $ingress.tls.exists }}
|
||||||
|
secretName: {{ $ingress.tls.secretRef.name }}
|
||||||
|
{{- else }}
|
||||||
|
secretName: {{ $ingress.tls.name }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
rules:
|
||||||
|
- host: {{ $ingress.host }}
|
||||||
|
http:
|
||||||
|
paths:
|
||||||
|
{{- toYaml $ingress.rules | nindent 10 }}
|
||||||
|
{{- end }}
|
||||||
@ -0,0 +1,26 @@
|
|||||||
|
{{ $namespace := .Release.Namespace }}
|
||||||
|
{{ $appVersion := .Chart.AppVersion | quote }}
|
||||||
|
{{ $releaseService := .Release.Service }}
|
||||||
|
{{ $releaseName := .Release.Name }}
|
||||||
|
{{- range $service := .Values.central-storage.services }}
|
||||||
|
---
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: {{ $service.name }}
|
||||||
|
namespace: {{ $namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/version: {{ $appVersion }}
|
||||||
|
app.kubernetes.io/name: {{ $service.name | quote }}
|
||||||
|
app.kubernetes.io/managed-by: {{ $releaseService }}
|
||||||
|
app.kubernetes.io/instance: {{ $releaseName }}
|
||||||
|
spec:
|
||||||
|
ports:
|
||||||
|
- port: {{ $service.port }}
|
||||||
|
targetPort: {{ $service.targetPort }}
|
||||||
|
selector:
|
||||||
|
app.kubernetes.io/version: {{ $appVersion }}
|
||||||
|
app.kubernetes.io/name: "central-storage"
|
||||||
|
app.kubernetes.io/managed-by: {{ $releaseService }}
|
||||||
|
app.kubernetes.io/instance: {{ $releaseName }}
|
||||||
|
{{- end }}
|
||||||
@ -0,0 +1,68 @@
|
|||||||
|
global:
|
||||||
|
registry: docker.io
|
||||||
|
repository: freeleaps
|
||||||
|
nodeSelector: {}
|
||||||
|
central-storage:
|
||||||
|
replicas: 1
|
||||||
|
image:
|
||||||
|
registry:
|
||||||
|
repository: freeleaps
|
||||||
|
name: central_storage
|
||||||
|
tag: 1.0.0
|
||||||
|
imagePullPolicy: IfNotPresent
|
||||||
|
ports:
|
||||||
|
- name: http
|
||||||
|
containerPort: 8005
|
||||||
|
protocol: TCP
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
cpu: "0.5"
|
||||||
|
memory: "512Mi"
|
||||||
|
limits:
|
||||||
|
cpu: "1"
|
||||||
|
memory: "1Gi"
|
||||||
|
# FIXME: Wait until the developers implements the probes APIs
|
||||||
|
probes: {}
|
||||||
|
services:
|
||||||
|
- name: central-storage-service
|
||||||
|
type: ClusterIP
|
||||||
|
port: 8005
|
||||||
|
targetPort: 8005
|
||||||
|
# Defaults to {}, which means doesn't have any ingress
|
||||||
|
ingresses:
|
||||||
|
- name: central-storage-ingress
|
||||||
|
host: alpha.central-storage.freeleaps.mathmast.com
|
||||||
|
class: nginx
|
||||||
|
rules:
|
||||||
|
- path: "/*"
|
||||||
|
pathType: ImplementationSpecific
|
||||||
|
backend:
|
||||||
|
service:
|
||||||
|
name: central-storage-service
|
||||||
|
port:
|
||||||
|
number: 8005
|
||||||
|
tls:
|
||||||
|
exists: false
|
||||||
|
issuerRef:
|
||||||
|
name: mathmast-dot-com
|
||||||
|
kind: ClusterIssuer
|
||||||
|
name: alpha.central-storage.freeleaps.mathmast.com-cert
|
||||||
|
configs:
|
||||||
|
# TZ
|
||||||
|
tz: "America/Settle"
|
||||||
|
# APP_NAME
|
||||||
|
appName: "central_storage"
|
||||||
|
# SERVICE_API_ACCESS_HOST
|
||||||
|
serviceApiAccessHost: "0.0.0.0"
|
||||||
|
# SERVICE_API_ACCESS_PORT
|
||||||
|
serviceApiAccessPort: "8005"
|
||||||
|
# MONGODB_NAME
|
||||||
|
mongodbName: "freeleaps2"
|
||||||
|
# MONGODB_PORT
|
||||||
|
mongodbPort: "27017"
|
||||||
|
# MONGODB_URI
|
||||||
|
mongodbUri: "mongodb://freeleaps-alpha-mongodb.freeleaps-alpha.svc.freeleaps.cluster:27017/"
|
||||||
|
# AZURE_STORAGE_DOCUMENT_API_KEY
|
||||||
|
azureStorageDocumentApiKey: ""
|
||||||
|
# AZURE_STORAGE_DOCUMENT_API_ENDPOINT
|
||||||
|
azureStorageDocumentApiEndpoint: ""
|
||||||
51
freeleaps/helm-pkg/central-storage/values.yaml
Normal file
51
freeleaps/helm-pkg/central-storage/values.yaml
Normal file
@ -0,0 +1,51 @@
|
|||||||
|
global:
|
||||||
|
registry: docker.io
|
||||||
|
repository: freeleaps
|
||||||
|
nodeSelector: {}
|
||||||
|
central-storage:
|
||||||
|
replicas: 1
|
||||||
|
image:
|
||||||
|
registry:
|
||||||
|
repository: freeleaps
|
||||||
|
name: central_storage
|
||||||
|
tag: 1.0.0
|
||||||
|
imagePullPolicy: IfNotPresent
|
||||||
|
ports:
|
||||||
|
- name: http
|
||||||
|
containerPort: 8005
|
||||||
|
protocol: TCP
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
cpu: "0.5"
|
||||||
|
memory: "512Mi"
|
||||||
|
limits:
|
||||||
|
cpu: "1"
|
||||||
|
memory: "1Gi"
|
||||||
|
# FIXME: Wait until the developers implements the probes APIs
|
||||||
|
probes: {}
|
||||||
|
services:
|
||||||
|
- name: central-storage-service
|
||||||
|
type: ClusterIP
|
||||||
|
port: 8005
|
||||||
|
targetPort: 8005
|
||||||
|
# Defaults to {}, which means doesn't have any ingress
|
||||||
|
ingresses: {}
|
||||||
|
configs:
|
||||||
|
# TZ
|
||||||
|
tz: "America/Settle"
|
||||||
|
# APP_NAME
|
||||||
|
appName: "central_storage"
|
||||||
|
# SERVICE_API_ACCESS_HOST
|
||||||
|
serviceApiAccessHost: "0.0.0.0"
|
||||||
|
# SERVICE_API_ACCESS_PORT
|
||||||
|
serviceApiAccessPort: "8005"
|
||||||
|
# MONGODB_NAME
|
||||||
|
mongodbName: ""
|
||||||
|
# MONGODB_PORT
|
||||||
|
mongodbPort: "27017"
|
||||||
|
# MONGODB_URI
|
||||||
|
mongodbUri: ""
|
||||||
|
# AZURE_STORAGE_DOCUMENT_API_KEY
|
||||||
|
azureStorageDocumentApiKey: ""
|
||||||
|
# AZURE_STORAGE_DOCUMENT_API_ENDPOINT
|
||||||
|
azureStorageDocumentApiEndpoint: ""
|
||||||
6
freeleaps/helm-pkg/content/Chart.yaml
Normal file
6
freeleaps/helm-pkg/content/Chart.yaml
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
apiVersion: v2
|
||||||
|
name: content
|
||||||
|
description: A Helm Chart of content service, which part of Freeleaps Platform, powered by Freeleaps.
|
||||||
|
type: application
|
||||||
|
version: 0.0.1
|
||||||
|
appVersion: "0.0.1"
|
||||||
27
freeleaps/helm-pkg/content/templates/certificate.yaml
Normal file
27
freeleaps/helm-pkg/content/templates/certificate.yaml
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
{{ $namespace := .Release.Namespace }}
|
||||||
|
{{ $appVersion := .Chart.AppVersion | quote }}
|
||||||
|
{{ $releaseCertificate := .Release.Service }}
|
||||||
|
{{ $releaseName := .Release.Name }}
|
||||||
|
{{- range $ingress := .Values.content.ingresses }}
|
||||||
|
{{- if not $ingress.tls.exists }}
|
||||||
|
---
|
||||||
|
apiVersion: cert-manager.io/v1
|
||||||
|
kind: Certificate
|
||||||
|
metadata:
|
||||||
|
name: {{ $ingress.name }}
|
||||||
|
namespace: {{ $namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/version: {{ $appVersion }}
|
||||||
|
app.kubernetes.io/name: {{ $ingress.name | quote }}
|
||||||
|
app.kubernetes.io/managed-by: {{ $releaseCertificate }}
|
||||||
|
app.kubernetes.io/instance: {{ $releaseName }}
|
||||||
|
spec:
|
||||||
|
commonName: {{ $ingress.host }}
|
||||||
|
dnsNames:
|
||||||
|
- {{ $ingress.host }}
|
||||||
|
issuerRef:
|
||||||
|
name: {{ $ingress.tls.issuerRef.name }}
|
||||||
|
kind: {{ $ingress.tls.issuerRef.kind }}
|
||||||
|
secretName: {{ $ingress.tls.name }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
17
freeleaps/helm-pkg/content/templates/content-config.yaml
Normal file
17
freeleaps/helm-pkg/content/templates/content-config.yaml
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: Secret
|
||||||
|
metadata:
|
||||||
|
name: content-config
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
type: Opaque
|
||||||
|
data:
|
||||||
|
TZ: {{ .Values.content.configs.tz | b64enc | quote }}
|
||||||
|
APP_NAME: {{ .Values.content.configs.appName | b64enc | quote }}
|
||||||
|
SERVICE_API_ACCESS_HOST: {{ .Values.content.configs.serviceApiAccessHost | b64enc | quote }}
|
||||||
|
SERVICE_API_ACCESS_PORT: {{ .Values.content.configs.serviceApiAccessPort | b64enc | quote }}
|
||||||
|
MONGODB_NAME: {{ .Values.content.configs.mongodbName | b64enc | quote }}
|
||||||
|
MONGODB_PORT: {{ .Values.content.configs.mongodbPort | b64enc | quote }}
|
||||||
|
MONGODB_URI: {{ .Values.content.configs.mongodbUri | b64enc | quote }}
|
||||||
|
FREELEAPS_WWW_AS_AZURE_CLIENT_SECRET: {{ .Values.content.configs.freeleapsWwwAsAzureClientSecret | b64enc | quote }}
|
||||||
|
CENTRAL_STORAGE_WEBAPI_URL_BASE: {{ .Values.content.configs.centralStorageWebapiUrlBase | b64enc | quote }}
|
||||||
|
|
||||||
98
freeleaps/helm-pkg/content/templates/deployment.yaml
Normal file
98
freeleaps/helm-pkg/content/templates/deployment.yaml
Normal file
@ -0,0 +1,98 @@
|
|||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
|
||||||
|
app.kubernetes.io/name: "content"
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
name: "content"
|
||||||
|
namespace: {{ .Release.Namespace | quote }}
|
||||||
|
spec:
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app.kubernetes.io/name: "content"
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
replicas: {{ .Values.content.replicas }}
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
|
||||||
|
app.kubernetes.io/name: "content"
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
spec:
|
||||||
|
containers:
|
||||||
|
- name: "content"
|
||||||
|
image: "{{ coalesce .Values.content.image.registry .Values.global.registry "docker.io"}}/{{ coalesce .Values.content.image.repository .Values.global.repository }}/{{ .Values.content.image.name }}:{{ .Values.content.image.tag | default "latest" }}"
|
||||||
|
imagePullPolicy: {{ .Values.content.image.imagePullPolicy | default "IfNotPresent" }}
|
||||||
|
ports:
|
||||||
|
{{- range $port := .Values.content.ports }}
|
||||||
|
- containerPort: {{ $port.containerPort }}
|
||||||
|
name: {{ $port.name }}
|
||||||
|
protocol: {{ $port.protocol }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.content.resources }}
|
||||||
|
resources:
|
||||||
|
{{- toYaml .Values.content.resources | nindent 12 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.content.probes }}
|
||||||
|
{{- if and (.Values.content.probes.liveness) (eq .Values.content.probes.liveness.type "httpGet") }}
|
||||||
|
livenessProbe:
|
||||||
|
httpGet:
|
||||||
|
path: {{ .Values.content.probes.liveness.config.path }}
|
||||||
|
port: {{ .Values.content.probes.liveness.config.port }}
|
||||||
|
{{- if .Values.content.probes.liveness.config.initialDelaySeconds }}
|
||||||
|
initialDelaySeconds: {{ .Values.content.probes.liveness.config.initialDelaySeconds }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.content.probes.liveness.config.periodSeconds }}
|
||||||
|
periodSeconds: {{ .Values.content.probes.liveness.config.periodSeconds }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.content.probes.liveness.config.timeoutSeconds }}
|
||||||
|
timeoutSeconds: {{ .Values.content.probes.liveness.config.timeoutSeconds }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.content.probes.liveness.config.successThreshold }}
|
||||||
|
successThreshold: {{ .Values.content.probes.liveness.config.successThreshold }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.content.probes.liveness.config.failureThreshold }}
|
||||||
|
failureThreshold: {{ .Values.content.probes.liveness.config.failureThreshold }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.content.probes.liveness.config.terminationGracePeriodSeconds }}
|
||||||
|
terminationGracePeriodSeconds: {{ .Values.content.probes.liveness.config.terminationGracePeriodSeconds }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if and (.Values.content.probes.readiness) (eq .Values.content.probes.readiness.type "httpGet") }}
|
||||||
|
readinessProbe:
|
||||||
|
httpGet:
|
||||||
|
path: {{ .Values.content.probes.readiness.config.path }}
|
||||||
|
port: {{ .Values.content.probes.readiness.config.port }}
|
||||||
|
{{- if .Values.content.probes.readiness.config.initialDelaySeconds }}
|
||||||
|
initialDelaySeconds: {{ .Values.content.probes.readiness.config.initialDelaySeconds }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.content.probes.readiness.config.periodSeconds }}
|
||||||
|
periodSeconds: {{ .Values.content.probes.readiness.config.periodSeconds }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.content.probes.readiness.config.timeoutSeconds }}
|
||||||
|
timeoutSeconds: {{ .Values.content.probes.readiness.config.timeoutSeconds }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.content.probes.readiness.config.successThreshold }}
|
||||||
|
successThreshold: {{ .Values.content.probes.readiness.config.successThreshold }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.content.probes.readiness.config.failureThreshold }}
|
||||||
|
failureThreshold: {{ .Values.content.probes.readiness.config.failureThreshold }}
|
||||||
|
{{- end }}:%
|
||||||
|
{{- if .Values.content.probes.readiness.config.terminationGracePeriodSeconds }}
|
||||||
|
terminationGracePeriodSeconds: {{ .Values.content.probes.readiness.config.terminationGracePeriodSeconds }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end}}
|
||||||
|
env:
|
||||||
|
{{- range $key, $value := .Values.content.configs }}
|
||||||
|
- name: {{ $key | snakecase | upper }}
|
||||||
|
valueFrom:
|
||||||
|
secretKeyRef:
|
||||||
|
name: content-config
|
||||||
|
key: {{ $key | snakecase | upper }}
|
||||||
|
{{- end }}
|
||||||
36
freeleaps/helm-pkg/content/templates/ingress.yaml
Normal file
36
freeleaps/helm-pkg/content/templates/ingress.yaml
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
{{ $namespace := .Release.Namespace }}
|
||||||
|
{{ $appVersion := .Chart.AppVersion | quote }}
|
||||||
|
{{ $releaseIngress := .Release.Service }}
|
||||||
|
{{ $releaseName := .Release.Name }}
|
||||||
|
{{- range $ingress := .Values.content.ingresses }}
|
||||||
|
---
|
||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: Ingress
|
||||||
|
metadata:
|
||||||
|
name: {{ $ingress.name }}
|
||||||
|
namespace: {{ $namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/version: {{ $appVersion }}
|
||||||
|
app.kubernetes.io/name: {{ $ingress.name | quote }}
|
||||||
|
app.kubernetes.io/managed-by: {{ $releaseIngress }}
|
||||||
|
app.kubernetes.io/instance: {{ $releaseName }}
|
||||||
|
spec:
|
||||||
|
{{- if $ingress.class }}
|
||||||
|
ingressClassName: {{ $ingress.class }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if $ingress.tls }}
|
||||||
|
tls:
|
||||||
|
- hosts:
|
||||||
|
- {{ $ingress.host }}
|
||||||
|
{{- if $ingress.tls.exists }}
|
||||||
|
secretName: {{ $ingress.tls.secretRef.name }}
|
||||||
|
{{- else }}
|
||||||
|
secretName: {{ $ingress.tls.name }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
rules:
|
||||||
|
- host: {{ $ingress.host }}
|
||||||
|
http:
|
||||||
|
paths:
|
||||||
|
{{- toYaml $ingress.rules | nindent 10 }}
|
||||||
|
{{- end }}
|
||||||
26
freeleaps/helm-pkg/content/templates/service.yaml
Normal file
26
freeleaps/helm-pkg/content/templates/service.yaml
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
{{ $namespace := .Release.Namespace }}
|
||||||
|
{{ $appVersion := .Chart.AppVersion | quote }}
|
||||||
|
{{ $releaseService := .Release.Service }}
|
||||||
|
{{ $releaseName := .Release.Name }}
|
||||||
|
{{- range $service := .Values.content.services }}
|
||||||
|
---
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: {{ $service.name }}
|
||||||
|
namespace: {{ $namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/version: {{ $appVersion }}
|
||||||
|
app.kubernetes.io/name: {{ $service.name | quote }}
|
||||||
|
app.kubernetes.io/managed-by: {{ $releaseService }}
|
||||||
|
app.kubernetes.io/instance: {{ $releaseName }}
|
||||||
|
spec:
|
||||||
|
ports:
|
||||||
|
- port: {{ $service.port }}
|
||||||
|
targetPort: {{ $service.targetPort }}
|
||||||
|
selector:
|
||||||
|
app.kubernetes.io/version: {{ $appVersion }}
|
||||||
|
app.kubernetes.io/name: "content"
|
||||||
|
app.kubernetes.io/managed-by: {{ $releaseService }}
|
||||||
|
app.kubernetes.io/instance: {{ $releaseName }}
|
||||||
|
{{- end }}
|
||||||
@ -0,0 +1,69 @@
|
|||||||
|
global:
|
||||||
|
registry: docker.io
|
||||||
|
repository: freeleaps
|
||||||
|
nodeSelector: {}
|
||||||
|
content:
|
||||||
|
replicas: 1
|
||||||
|
image:
|
||||||
|
registry:
|
||||||
|
repository: freeleaps
|
||||||
|
name: content
|
||||||
|
tag: 1.0.0
|
||||||
|
imagePullPolicy: IfNotPresent
|
||||||
|
ports:
|
||||||
|
- name: http
|
||||||
|
containerPort: 8013
|
||||||
|
protocol: TCP
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
cpu: "0.5"
|
||||||
|
memory: "512Mi"
|
||||||
|
limits:
|
||||||
|
cpu: "1"
|
||||||
|
memory: "1Gi"
|
||||||
|
# FIXME: Wait until the developers implements the probes APIs
|
||||||
|
probes: {}
|
||||||
|
services:
|
||||||
|
- name: content-service
|
||||||
|
type: ClusterIP
|
||||||
|
port: 8013
|
||||||
|
targetPort: 8013
|
||||||
|
# Defaults to {}, which means doesn't have any ingress
|
||||||
|
ingresses:
|
||||||
|
- name: content-ingress
|
||||||
|
host: alpha.content.freeleaps.mathmast.com
|
||||||
|
class: nginx
|
||||||
|
rules:
|
||||||
|
- path: "/*"
|
||||||
|
pathType: ImplementationSpecific
|
||||||
|
backend:
|
||||||
|
service:
|
||||||
|
name: content-service
|
||||||
|
port:
|
||||||
|
number: 8013
|
||||||
|
tls:
|
||||||
|
exists: false
|
||||||
|
issuerRef:
|
||||||
|
name: mathmast-dot-com
|
||||||
|
kind: ClusterIssuer
|
||||||
|
name: alpha.content.freeleaps.mathmast.com-cert
|
||||||
|
configs:
|
||||||
|
# TZ
|
||||||
|
tz: "America/Settle"
|
||||||
|
# APP_NAME
|
||||||
|
appName: "content"
|
||||||
|
# SERVICE_API_ACCESS_HOST
|
||||||
|
serviceApiAccessHost: "0.0.0.0"
|
||||||
|
# SERVICE_API_ACCESS_PORT
|
||||||
|
serviceApiAccessPort: "8013"
|
||||||
|
# MONGODB_NAME
|
||||||
|
mongodbName: "freeleaps2"
|
||||||
|
# MONGODB_PORT
|
||||||
|
mongodbPort: "27017"
|
||||||
|
# MONGODB_URI
|
||||||
|
mongodbUri: "mongodb://freeleaps-alpha-mongodb.freeleaps-alpha.svc.freeleaps.cluster:27017/"
|
||||||
|
# FREELEAPS_WWW_AS_AZURE_CLIENT_SECRET
|
||||||
|
freeleapsWwwAsAzureClientSecret: ""
|
||||||
|
# CENTRAL_STORAGE_WEBAPI_URL_BASE
|
||||||
|
centralStorageWebapiUrlBase: "http://central-storage-service.freeleaps-alpha.svc.freeleaps.cluster:8005/api/central_storage"
|
||||||
|
|
||||||
52
freeleaps/helm-pkg/content/values.yaml
Normal file
52
freeleaps/helm-pkg/content/values.yaml
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
global:
|
||||||
|
registry: docker.io
|
||||||
|
repository: freeleaps
|
||||||
|
nodeSelector: {}
|
||||||
|
content:
|
||||||
|
replicas: 1
|
||||||
|
image:
|
||||||
|
registry:
|
||||||
|
repository: freeleaps
|
||||||
|
name: content
|
||||||
|
tag: 1.0.0
|
||||||
|
imagePullPolicy: IfNotPresent
|
||||||
|
ports:
|
||||||
|
- name: http
|
||||||
|
containerPort: 8013
|
||||||
|
protocol: TCP
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
cpu: "0.5"
|
||||||
|
memory: "512Mi"
|
||||||
|
limits:
|
||||||
|
cpu: "1"
|
||||||
|
memory: "1Gi"
|
||||||
|
# FIXME: Wait until the developers implements the probes APIs
|
||||||
|
probes: {}
|
||||||
|
services:
|
||||||
|
- name: content-service
|
||||||
|
type: ClusterIP
|
||||||
|
port: 8013
|
||||||
|
targetPort: 8013
|
||||||
|
# Defaults to {}, which means doesn't have any ingress
|
||||||
|
ingresses: {}
|
||||||
|
configs:
|
||||||
|
# TZ
|
||||||
|
tz: "America/Settle"
|
||||||
|
# APP_NAME
|
||||||
|
appName: "content"
|
||||||
|
# SERVICE_API_ACCESS_HOST
|
||||||
|
serviceApiAccessHost: "0.0.0.0"
|
||||||
|
# SERVICE_API_ACCESS_PORT
|
||||||
|
serviceApiAccessPort: "8013"
|
||||||
|
# MONGODB_NAME
|
||||||
|
mongodbName: ""
|
||||||
|
# MONGODB_PORT
|
||||||
|
mongodbPort: "27017"
|
||||||
|
# MONGODB_URI
|
||||||
|
mongodbUri: ""
|
||||||
|
# FREELEAPS_WWW_AS_AZURE_CLIENT_SECRET
|
||||||
|
freeleapsWwwAsAzureClientSecret: ""
|
||||||
|
# CENTRAL_STORAGE_WEBAPI_URL_BASE
|
||||||
|
centralStorageWebapiUrlBase: ""
|
||||||
|
|
||||||
Loading…
Reference in New Issue
Block a user