EOX GitLab Instance

Skip to content
Snippets Groups Projects
Commit eff14c08 authored by Nikola Jankovic's avatar Nikola Jankovic :computer:
Browse files

added helm charts

updated docker image
updated ci/cd stuff
parent 298458d0
No related branches found
No related tags found
No related merge requests found
Pipeline #17824 canceled
Showing
with 733 additions and 38 deletions
.git/
charts/
tests/
.gitignore
.gitlab-ci.yml
requirements-test.txt
.venv/
stages:
- test
- deploy
- chart
variables:
DOCKER_TLS_CERTDIR: ""
......@@ -36,3 +37,16 @@ deploy:
- docker push $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_NAME
only:
- tags
helm:
image: devth/helm:v3.6.3
stage: chart
script:
# push Helm chart
- "upload_filename=$(helm package ./charts/vs-renderer | sed 's/^Successfully packaged chart and saved it to: \\(.*\\)/\\1/')"
- curl -u $HELM_CHART_REPOSITORY_CREDENTIALS -v -X POST https://charts-public.hub.eox.at/api/charts --data-binary "@${upload_filename}"
- "upload_filename=$(helm package ./charts/vs-registrar | sed 's/^Successfully packaged chart and saved it to: \\(.*\\)/\\1/')"
- curl -u $HELM_CHART_REPOSITORY_CREDENTIALS -v -X POST https://charts-public.hub.eox.at/api/charts --data-binary "@${upload_filename}"
only:
- tags
- main
......@@ -36,22 +36,24 @@ LABEL name="prism view server core" \
USER root
WORKDIR /opt/core
COPY requirements.txt .
RUN apt update && \
apt install -y \
libpq-dev wait-for-it && \
apt install --no-install-recommends -y \
libpq-dev wait-for-it && \
apt autoremove -y && \
apt clean && \
rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
RUN pip3 install . && \
pip3 install python-keystoneclient python-swiftclient redis click setuptools jsonschema boto3 django-cors-headers pystac
rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* && \
pip3 install --no-cache-dir -r requirements.txt
ENV INSTANCE_ID="prism-view-server_core" \
INSTANCE_NAME="pvs_instance"\
INSTANCE_DIR="/var/www/pvs/dev/pvs_instance/" \
COLLECTION= \
UPLOAD_CONTAINER= \
DB=postgis \
DB="postgis" \
DB_USER= \
DB_PW= \
DB_HOST= \
......@@ -80,39 +82,13 @@ ENV INSTANCE_ID="prism-view-server_core" \
GDAL_PAM_ENABLED="NO" \
DEV="false"
ADD rgbnir_definition.json \
def-sentinel-2-l1c-l2a.json \
configure.sh \
run-httpd.sh \
run-registrar.sh \
entrypoint.sh \
wait-initialized.sh \
initialized.sh \
gunicorn.conf.py \
/
RUN mkdir /registrar
ADD registrar/ \
/registrar/registrar
ADD setup.py \
/registrar
RUN cd /registrar && \
ls && \
python3 setup.py install
COPY . .
RUN chmod -v +x \
/configure.sh \
/run-registrar.sh \
/run-httpd.sh \
/entrypoint.sh \
/wait-initialized.sh \
/initialized.sh
RUN python3 setup.py install
EXPOSE 80
ENTRYPOINT ["/entrypoint.sh"]
CMD ["/run-httpd.sh"]
ENTRYPOINT ["./entrypoint.sh"]
CMD ["./run-httpd.sh"]
LABEL version="2.0.0-alpha.2"
LABEL version="2.0.0"
# Patterns to ignore when building packages.
# This supports shell glob matching, relative path matching, and
# negation (prefixed with !). Only one pattern per line.
.DS_Store
# Common VCS dirs
.git/
.gitignore
.bzr/
.bzrignore
.hg/
.hgignore
.svn/
# Common backup files
*.swp
*.bak
*.tmp
*.orig
*~
# Various IDEs
.project
.idea/
*.tmproj
.vscode/
apiVersion: v2
name: vs-registrar
description: A Helm chart for the View server registrar
# A chart can be either an 'application' or a 'library' chart.
#
# Application charts are a collection of templates that can be packaged into versioned archives
# to be deployed.
#
# Library charts provide useful utilities or functions for the chart developer. They're included as
# a dependency of application charts to inject those utilities and functions into the rendering
# pipeline. Library charts do not define any templates and therefore cannot be deployed.
type: application
# This is the chart version. This version number should be incremented each time you make changes
# to the chart and its templates, including the app version.
# Versions are expected to follow Semantic Versioning (https://semver.org/)
version: 0.1.0
# This is the version number of the application being deployed. This version number should be
# incremented each time you make changes to the application. Versions are not expected to
# follow Semantic Versioning. They should reflect the version the application is using.
# It is recommended to use it with quotes.
appVersion: "1.16.0"
sources:
{{- range $name, $val := .Values.global.storage.data }}
{{- $type := ($val.type | lower ) }}
- type: {{ $type }}
name: {{ $name }}
filter: {{ .filter }}
kwargs:
{{- if eq $type "swift" }}
username: {{ $val.username }}
password: {{ $val.password }}
tenant_name: {{ $val.tenant_name }}
tenant_id: {{ $val.tenant_id }}
region_name: {{ $val.region_name }}
auth_url: {{ $val.auth_url }}
auth_version: {{ $val.auth_version }}
user_domain_name: {{ $val.user_domain_name }}
container: {{ $val.container }}
{{- else if eq $type "s3" }}
bucket_name: {{ $val.bucket | default "null" }}
endpoint_url: {{ $val.endpoint_url | default "null" }}
access_key_id: {{ $val.access_key_id }}
public: {{ $val.public | default "false" }}
region_name: {{ $val.region_name }}
secret_access_key: {{ $val.secret_access_key }}
validate_bucket_name: {{ if hasKey $val "validate_bucket_name" }}{{ $val.validate_bucket_name }}{{ else }}true{{ end }}
{{- end }}
{{- end }}
backends:
{{- if not ( .Values.disableDefaultEoxserver ) }}
- type: eoxserver
kwargs:
instance_base_path: /var/www/pvs/dev
instance_name: pvs_instance
product_types:
{{- toYaml .Values.global.dataScheme.productTypes | nindent 10 -}}
{{- end }}
{{- range .Values.backends }}
-{{ toYaml . | nindent 6 }}
{{- end }}
{{/*
Expand the name of the chart.
*/}}
{{- define "vs-registrar.name" -}}
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }}
{{- end }}
{{/*
Create a default fully qualified app name.
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
If release name contains chart name it will be used as a full name.
*/}}
{{- define "vs-registrar.fullname" -}}
{{- if .Values.fullnameOverride }}
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }}
{{- else }}
{{- $name := default .Chart.Name .Values.nameOverride }}
{{- if contains $name .Release.Name }}
{{- .Release.Name | trunc 63 | trimSuffix "-" }}
{{- else }}
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }}
{{- end }}
{{- end }}
{{- end }}
{{/*
Create chart name and version as used by the chart label.
*/}}
{{- define "vs-registrar.chart" -}}
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
{{- end }}
{{/*
Common labels
*/}}
{{- define "vs-registrar.labels" -}}
helm.sh/chart: {{ include "vs-registrar.chart" . }}
{{ include "vs-registrar.selectorLabels" . }}
{{- if .Chart.AppVersion }}
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
{{- end }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
{{- end }}
{{/*
Selector labels
*/}}
{{- define "vs-registrar.selectorLabels" -}}
app.kubernetes.io/name: {{ include "vs-registrar.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
{{- end }}
{{/*
Create the name of the service account to use
*/}}
{{- define "vs-registrar.serviceAccountName" -}}
{{- if .Values.serviceAccount.create }}
{{- default (include "vs-registrar.fullname" .) .Values.serviceAccount.name }}
{{- else }}
{{- default "default" .Values.serviceAccount.name }}
{{- end }}
{{- end }}
apiVersion: v1
kind: ConfigMap
metadata:
name: {{ include "vs-registrar.fullname" . }}-config
data:
{{ (tpl (.Files.Glob "files/registrar-config.yaml").AsConfig . ) | nindent 2}}
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ include "vs-registrar.fullname" . }}-registrar
labels:
{{- include "vs-registrar.labels" . | nindent 4 }}
app.kubernetes.io/service: registrar
spec:
replicas: {{ .Values.replicaCount }}
selector:
matchLabels:
{{- include "vs-registrar.selectorLabels" . | nindent 6 }}
app.kubernetes.io/service: registrar
strategy:
rollingUpdate:
maxUnavailable: 0
type: RollingUpdate
template:
metadata:
annotations:
prometheus.io/scrape: "false"
labels:
{{- include "vs-registrar.selectorLabels" . | nindent 8 }}
app.kubernetes.io/service: registrar
spec:
{{- with .Values.imagePullSecrets }}
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
containers:
- name: {{ .Chart.Name }}-registrar
image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default ( print "release-" .Chart.AppVersion ) }}"
imagePullPolicy: {{ .Values.image.pullPolicy | default "IfNotPresent" }}
resources:
{{- toYaml .Values.resources | nindent 12 }}
args:
- /opt/core/run-registrar.sh
env:
{{- range $key, $value := .Values.global.env }}
- name: {{ $key }}
value: {{ $value | quote }}
{{- end }}
- name: REDIS_HOST
value: {{ .Release.Name }}-redis-master
- name: INIT_SCRIPTS
value: /configure.sh /init-db.sh /initialized.sh
- name: INSTALL_DIR
value: /var/www/pvs/dev/
- name: INSTANCE_ID
value: prism-view-server_registrar
- name: STARTUP_SCRIPTS
value: /wait-initialized.sh {{- range $script := .Values.global.env.startup_scripts }} {{ $script }}{{ end }}
- name: WAIT_SERVICES
value: {{ .Release.Name }}-database:{{ .Values.global.env.DB_PORT }} {{ .Release.Name }}-redis-master:{{ .Values.global.env.REDIS_PORT }}
envFrom:
- secretRef:
name: django-secret-key
volumeMounts:
- mountPath: /init-db.sh
name: init-db
subPath: init-db.sh
- mountPath: /config.yaml
name: registrar-config
subPath: registrar-config.yaml
{{- range $volumes := .Values.volumeMounts }}
-{{- toYaml $volumes | nindent 16 -}}
{{- end -}}
{{- with .Values.affinity }}
affinity:
{{- toYaml . | nindent 8 }}
{{- end }}
volumes:
- configMap:
items:
- key: init-db.sh
path: init-db.sh
name: {{ include "vs-registrar.fullname" . }}-init-db
name: init-db
- configMap:
items:
- key: registrar-config.yaml
path: registrar-config.yaml
name: {{ include "vs-registrar.fullname" . }}-config
name: registrar-config
{{- range $volumes := .Values.volumes }}
-{{- toYaml $volumes | nindent 12 -}}
{{- end }}
replicaCount: 1
image:
repository: registry.gitlab.eox.at/vs/core
pullPolicy: IfNotPresent
tag: ""
imagePullSecrets: []
resources: {}
affinity: {}
volumeMounts: []
volumes: []
disableDefaultEoxserver: false
backends: []
global:
env:
REDIS_PORT: "6379"
DJANGO_MAIL: office@eox.at
DJANGO_PASSWORD: djangopw
DJANGO_USER: djangouser
DB_NAME: dbname
DB_PORT: "5432"
DB_PW: dbpw
DB_USER: dbuser
POSTGRES_DB: dbname
POSTGRES_PASSWORD: dbpw
POSTGRES_USER: dbuser
dataScheme:
collections: {}
productTypes: []
coverageTypes: []
storage:
data: {}
# Patterns to ignore when building packages.
# This supports shell glob matching, relative path matching, and
# negation (prefixed with !). Only one pattern per line.
.DS_Store
# Common VCS dirs
.git/
.gitignore
.bzr/
.bzrignore
.hg/
.hgignore
.svn/
# Common backup files
*.swp
*.bak
*.tmp
*.orig
*~
# Various IDEs
.project
.idea/
*.tmproj
.vscode/
apiVersion: v2
name: vs-renderer
description: A Helm chart for the View server renderer
# A chart can be either an 'application' or a 'library' chart.
#
# Application charts are a collection of templates that can be packaged into versioned archives
# to be deployed.
#
# Library charts provide useful utilities or functions for the chart developer. They're included as
# a dependency of application charts to inject those utilities and functions into the rendering
# pipeline. Library charts do not define any templates and therefore cannot be deployed.
type: application
# This is the chart version. This version number should be incremented each time you make changes
# to the chart and its templates, including the app version.
# Versions are expected to follow Semantic Versioning (https://semver.org/)
version: 0.1.0
# This is the version number of the application being deployed. This version number should be
# incremented each time you make changes to the application. Versions are not expected to
# follow Semantic Versioning. They should reflect the version the application is using.
# It is recommended to use it with quotes.
appVersion: "2.0.0"
{{/*
Template to create the invocation of a browse type from a given
product type name, browse type name and browse type definition
Expects '.' to be a dictionary in the following shape:
{
product_type_name: "<product_type_name>",
browse_type_name: "<browse_type_name>", // or nil
browse_type: {
// either
grey: {
expression: "",
range: [low, high], // optional
nodata: nodatavalue, // optional
}
// or
red: {
expression: "",
range: [low, high], // optional
nodata: nodatavalue, // optional
},
green: {
expression: "",
range: [low, high], // optional
nodata: nodatavalue, // optional
},
blue: {
expression: "",
range: [low, high], // optional
nodata: nodatavalue, // optional
},
// optionally:
alpha: {
expression: "",
range: [low, high], // optional
nodata: nodatavalue, // optional
}
}
}
*/}}
{{- define "browsetype.cli" }}
python3 manage.py browsetype create "{{ .product_type_name }}" {{ if .browse_type_name }} "{{ .browse_type_name }}" {{- end }} \
{{- if hasKey .browse_type "grey" }}
--grey {{ .browse_type.grey.expression | quote }} \
{{- if hasKey .browse_type.grey "range" }}
--grey-range {{ range .browse_type.grey.range }}{{ . }} {{ end }}\
{{- end }}
{{- if hasKey .browse_type.grey "nodata" }}
--grey-nodata {{ .browse_type.grey.nodata }} \
{{- end }}
{{- else if and (.browse_type.red) (and .browse_type.green .browse_type.blue) }}
--red {{ .browse_type.red.expression | quote }} \
--green {{ .browse_type.green.expression | quote }} \
--blue {{ .browse_type.blue.expression | quote }} \
{{- if hasKey .browse_type.red "range" }}
--red-range {{ range .browse_type.red.range }}{{ . }} {{ end }}\
{{- end }}
{{- if hasKey .browse_type.green "range" }}
--green-range {{ range .browse_type.green.range }}{{ . }} {{ end }}\
{{- end }}
{{- if hasKey .browse_type.blue "range" }}
--blue-range {{ range .browse_type.blue.range }}{{ . }} {{ end }}\
{{- end }}
{{- if hasKey .browse_type.red "nodata" }}
--red-nodata {{ .browse_type.red.nodata }} \
{{- end }}
{{- if hasKey .browse_type.green "nodata" }}
--green-nodata {{ .browse_type.green.nodata }} \
{{- end }}
{{- if hasKey .browse_type.blue "nodata" }}
--blue-nodata {{ .browse_type.blue.nodata }} \
{{- end }}
{{- if hasKey .browse_type "alpha" }}
--alpha {{ .browse_type.alpha.expression | quote }} \
{{- if hasKey .browse_type.alpha "range" }}
--alpha-range {{ range .browse_type.alpha.range }}{{ . }} {{ end }}\
{{- end }}
{{- if hasKey .browse_type.alpha "nodata" }}
--alpha-nodata {{ .browse_type.alpha.nodata }} \
{{- end }}
{{- end }}
{{- end }}
--traceback
{{- end -}}
# Check if collection exits in database and initialize database only if not
{{- if .Values.global.dataScheme.collections }}
if python3 manage.py id check {{ index (keys $.Values.global.dataScheme.collections) 0 | quote }}; then
echo "Initializing database"
python3 manage.py coveragetype import /rgbnir_definition.json --traceback
python3 manage.py coveragetype import /def-sentinel-2-l1c-l2a.json --traceback
{{- if $.Values.global.dataScheme.coverageTypes }}
{{- range $coverageType := $.Values.global.dataScheme.coverageTypes }}
echo {{- toJson $coverageType | squote }} | python3 manage.py coveragetype import --in --traceback
{{- end }}
{{- end }}
{{- range $product_type := $.Values.dataScheme.productTypes | default dict }}
python3 manage.py producttype create {{ $product_type.name | quote }} \
{{ range $coverage_type_name, $coverage_type := $product_type.coverages }}--coverage-type {{ $coverage_type_name | quote }} \
{{ end }}--traceback
{{- if hasKey $product_type "defaultBrowse" }}
{{ template "browsetype.cli" dict "product_type_name" $product_type.name "browse_type_name" nil "browse_type" (get $product_type.browses $product_type.defaultBrowse) }}
{{- end }}
{{- range $browse_type_name, $browse_type := $product_type.browses }}
{{ template "browsetype.cli" dict "product_type_name" $product_type.name "browse_type_name" $browse_type_name "browse_type" $browse_type }}
{{- end }}
{{- range $mask_type := $product_type.masks }}
python3 manage.py masktype create {{ $product_type.name | quote }} {{ $mask_type.name | quote }} \
{{- if $mask_type.validity -}} --validity \ {{- end }} --traceback
{{- end }}
{{- end }}{{/* range $.Values.global.dataScheme.productTypes */}}
{{- range $collection_name, $collection := $.Values.global.dataScheme.collections }}
python3 manage.py collectiontype create "{{ $collection_name }}_type" \
{{- range $coverage_type := $collection.coverageTypes }}
--coverage-type {{ $coverage_type | quote }} \
{{- end }}
{{- range $product_type_name := $collection.productTypes }}
--product-type {{ $product_type_name | quote }} \
{{- end }}
--traceback
python3 manage.py collection create {{ $collection_name | quote }} \
--type "{{ $collection_name }}_type" \
--traceback
{{- end -}}{{/* range .collections */}}
else
echo "Using existing database"
fi
{{- end }}
{{/*
Expand the name of the chart.
*/}}
{{- define "vs-renderer.name" -}}
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }}
{{- end }}
{{/*
Create a default fully qualified app name.
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
If release name contains chart name it will be used as a full name.
*/}}
{{- define "vs-renderer.fullname" -}}
{{- if .Values.fullnameOverride }}
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }}
{{- else }}
{{- $name := default .Chart.Name .Values.nameOverride }}
{{- if contains $name .Release.Name }}
{{- .Release.Name | trunc 63 | trimSuffix "-" }}
{{- else }}
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }}
{{- end }}
{{- end }}
{{- end }}
{{/*
Create chart name and version as used by the chart label.
*/}}
{{- define "vs-renderer.chart" -}}
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
{{- end }}
{{/*
Common labels
*/}}
{{- define "vs-renderer.labels" -}}
helm.sh/chart: {{ include "vs-renderer.chart" . }}
{{ include "vs-renderer.selectorLabels" . }}
{{- if .Chart.AppVersion }}
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
{{- end }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
{{- end }}
{{/*
Selector labels
*/}}
{{- define "vs-renderer.selectorLabels" -}}
app.kubernetes.io/name: {{ include "vs-renderer.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
{{- end }}
{{/*
Create the name of the service account to use
*/}}
{{- define "vs-renderer.serviceAccountName" -}}
{{- if .Values.serviceAccount.create }}
{{- default (include "vs-renderer.fullname" .) .Values.serviceAccount.name }}
{{- else }}
{{- default "default" .Values.serviceAccount.name }}
{{- end }}
{{- end }}
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ include "vs-renderer.fullname" . }}-renderer
labels:
{{- include "vs-renderer.labels" . | nindent 4 }}
app.kubernetes.io/service: renderer
spec:
replicas: {{ .Values.replicaCount }}
selector:
matchLabels:
{{- include "vs-renderer.selectorLabels" . | nindent 6 }}
app.kubernetes.io/service: renderer
strategy:
rollingUpdate:
maxUnavailable: 0
type: RollingUpdate
template:
metadata:
annotations:
prometheus.io/scrape: "false"
labels:
{{- include "vs-renderer.selectorLabels" . | nindent 8 }}
app.kubernetes.io/service: renderer
spec:
{{- with .Values.imagePullSecrets }}
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
containers:
- name: {{ .Chart.Name }}-renderer
image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default ( print "release-" .Chart.AppVersion ) }}"
imagePullPolicy: {{ .Values.image.pullPolicy | default "IfNotPresent" }}
ports:
- name: http
containerPort: 80
protocol: TCP
livenessProbe:
{{- toYaml .Values.livenessProbe | nindent 12 }}
readinessProbe:
httpGet:
path: /
port: http
startupProbe:
httpGet:
path: /
port: http
failureThreshold: 30
periodSeconds: 10
resources:
{{- toYaml .Values.resources | nindent 12 }}
args:
- /opt/core/run-httpd.sh
env:
{{- range $key, $value := .Values.global.env }}
- name: {{ $key }}
value: {{ $value | quote }}
{{- end }}
- name: INIT_SCRIPTS
value: /configure.sh /init-db.sh /initialized.sh
- name: INSTALL_DIR
value: /var/www/pvs/dev/
- name: INSTANCE_ID
value: prism-view-server_renderer
- name: STARTUP_SCRIPTS
value: /wait-initialized.sh {{- range $script := .Values.global.env.startup_scripts }} {{ $script }}{{ end }}
- name: WAIT_SERVICES
value: {{ .Release.Name }}-database:{{ .Values.global.env.DB_PORT }}
envFrom:
- secretRef:
name: django-secret-key
volumeMounts:
- mountPath: /init-db.sh
name: init-db
subPath: init-db.sh
{{- range $volumes := .Values.volumeMounts }}
- {{- toYaml $volumes | nindent 16 }}
{{- end }}
{{- with .Values.affinity }}
affinity:
{{- toYaml . | nindent 8 }}
{{- end }}
volumes:
- configMap:
items:
- key: init-db.sh
path: init-db.sh
name: {{ include "vs-renderer.fullname" . }}-init-db
name: init-db
{{- range $volumes := .Values.volumes }}
- {{- toYaml $volumes | nindent 12 }}
{{- end }}
apiVersion: v1
kind: Secret
metadata:
name: django-secret-key
type: Opaque
data:
DJANGO_SECRET_KEY: {{ .Values.global.env.DJANGO_SECRET_KEY | default (randAlphaNum 36) | b64enc }}
apiVersion: v1
kind: ConfigMap
metadata:
name: {{ include "vs-renderer.fullname" . }}-init-db
data:
{{ (tpl (.Files.Glob "files/init-db.sh").AsConfig . ) | nindent 2}}
apiVersion: v1
kind: Service
metadata:
name: {{ include "vs-renderer.fullname" . }}-renderer
labels:
{{- include "vs-renderer.labels" . | nindent 4 }}
app.kubernetes.io/service: renderer
spec:
type: {{ .Values.service.type }}
ports:
- port: {{ .Values.service.port }}
targetPort: http
protocol: TCP
name: http
selector:
{{- include "vs-renderer.selectorLabels" . | nindent 4 }}
app.kubernetes.io/service: renderer
replicaCount: 1
image:
repository: registry.gitlab.eox.at/vs/core
pullPolicy: IfNotPresent
tag: ""
livenessProbe:
failureThreshold: 3
httpGet:
path: /
port: 80
scheme: HTTP
periodSeconds: 10
successThreshold: 1
timeoutSeconds: 1
imagePullSecrets: []
service:
type: ClusterIP
port: 80
resources: {}
affinity: {}
volumeMounts: []
volumes: []
global:
env:
REDIS_PORT: "6379"
DJANGO_MAIL: office@eox.at
DJANGO_PASSWORD: djangopw
DJANGO_USER: djangouser
DB_NAME: dbname
DB_PORT: "5432"
DB_PW: dbpw
DB_USER: dbuser
POSTGRES_DB: dbname
POSTGRES_PASSWORD: dbpw
POSTGRES_USER: dbuser
dataScheme:
collections: {}
productTypes: []
coverageTypes: []
configure.sh 100644 → 100755
File mode changed from 100644 to 100755
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment