Compare commits

..

1 Commits

Author SHA1 Message Date
renovate-bot 98050a9f9a Update Helm release kube-prometheus-stack to v86
renovate/stability-days Updates have met minimum release age requirement
2026-06-13 16:54:14 +00:00
107 changed files with 880 additions and 1541 deletions
+2 -2
View File
@@ -4,10 +4,10 @@ description: Atlantis map and simulation service
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.
version: v2.17.1
version: v1.42.27
# This is the version number of the application being deployed. This version number should be
# incremented each time you make changes to the application.
appVersion: v2.17.1
appVersion: v1.42.27
dependencies:
- name: diagrid-dashboard
version: "0.1.0"
+1 -1
View File
@@ -4,7 +4,7 @@
replicaCount: 1
image:
repository: git.oceanbox.io/oceanbox/poseidon/atlantis
tag: v2.17.1
tag: v1.42.27
pullPolicy: IfNotPresent
init:
enabled: false
+2 -2
View File
@@ -13,9 +13,9 @@ 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: v2.17.1
version: v1.42.27
# 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: "v2.17.1"
appVersion: "v1.42.27"
+1 -1
View File
@@ -10,7 +10,7 @@ image:
# This sets the pull policy for images.
pullPolicy: IfNotPresent
# Overrides the image tag whose default is the chart appVersion.
tag: v2.17.1
tag: v1.42.27
# This is for the secrets for pulling an image from a private repository more information can be found here: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
imagePullSecrets:
- name: gitlab-pull-secret
+2 -2
View File
@@ -12,7 +12,7 @@ description: Oceanbox Documentation
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.
version: v0.0.2
version: v0.0.1
# This is the version number of the application being deployed. This version number should be
# incremented each time you make changes to the application.
appVersion: v0.0.2
appVersion: v0.0.1
+1 -1
View File
@@ -4,7 +4,7 @@
replicaCount: 1
image:
repository: git.oceanbox.io/oceanbox/documentation/docs
tag: v0.0.2
tag: v0.0.1
pullPolicy: IfNotPresent
init:
enabled: false
+6
View File
@@ -0,0 +1,6 @@
apiVersion: v2
name: fapr
description: A Helm chart for Fapr (F# Dapr workflow orchestrator)
type: application
version: v0.1.0
appVersion: v0.1.0
+61
View File
@@ -0,0 +1,61 @@
{{/* vim: set filetype=mustache: */}}
{{/*
Expand the name of the chart.
*/}}
{{- define "fapr.name" -}}
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }}
{{- end }}
{{/*
Create a default fully qualified app name.
*/}}
{{- define "fapr.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 "fapr.chart" -}}
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
{{- end }}
{{/*
Common labels
*/}}
{{- define "fapr.labels" -}}
helm.sh/chart: {{ include "fapr.chart" . }}
{{ include "fapr.selectorLabels" . }}
{{- if .Chart.AppVersion }}
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
{{- end }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
{{- end }}
{{/*
Selector labels
*/}}
{{- define "fapr.selectorLabels" -}}
app.kubernetes.io/name: {{ include "fapr.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
{{- end }}
{{/*
Create the name of the service account to use
*/}}
{{- define "fapr.serviceAccountName" -}}
{{- if .Values.serviceAccount.create -}}
{{ default (include "fapr.fullname" .) .Values.serviceAccount.name }}
{{- else -}}
{{ default "default" .Values.serviceAccount.name }}
{{- end -}}
{{- end -}}
+85
View File
@@ -0,0 +1,85 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ include "fapr.fullname" . }}
labels:
{{- include "fapr.labels" . | nindent 4 }}
spec:
{{- if not .Values.autoscaling.enabled }}
replicas: {{ .Values.replicaCount }}
{{- end }}
selector:
matchLabels:
{{- include "fapr.selectorLabels" . | nindent 6 }}
template:
metadata:
{{- with .Values.podAnnotations }}
annotations:
{{- toYaml . | nindent 8 }}
{{- end }}
labels:
{{- include "fapr.selectorLabels" . | nindent 8 }}
spec:
{{- with .Values.imagePullSecrets }}
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
serviceAccountName: {{ include "fapr.serviceAccountName" . }}
securityContext:
{{- toYaml .Values.podSecurityContext | nindent 8 }}
containers:
- name: {{ .Chart.Name }}
securityContext:
{{- toYaml .Values.securityContext | nindent 12 }}
image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}"
imagePullPolicy: {{ .Values.image.pullPolicy }}
ports:
- name: http
containerPort: {{ .Values.service.port }}
protocol: TCP
env:
{{- toYaml .Values.env | nindent 12 }}
livenessProbe:
httpGet:
path: /healthz
port: http
initialDelaySeconds: 5
periodSeconds: 15
readinessProbe:
httpGet:
path: /healthz
port: http
initialDelaySeconds: 3
periodSeconds: 10
resources:
{{- toYaml .Values.resources | nindent 12 }}
volumeMounts:
- name: data
mountPath: /data
- name: appsettings
mountPath: /app/appsettings.json
subPath: appsettings.json
readOnly: true
volumes:
- name: data
{{- if .Values.persistence.enabled }}
persistentVolumeClaim:
claimName: {{ .Values.persistence.existingClaim | default (include "fapr.fullname" .) }}
{{- else }}
emptyDir: {}
{{- end }}
- name: appsettings
configMap:
name: {{ include "fapr.fullname" . }}-appsettings
{{- with .Values.nodeSelector }}
nodeSelector:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.affinity }}
affinity:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.tolerations }}
tolerations:
{{- toYaml . | nindent 8 }}
{{- end }}
+21
View File
@@ -0,0 +1,21 @@
{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) }}
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: {{ include "fapr.fullname" . }}
labels:
{{ include "fapr.labels" . | indent 4 }}
spec:
accessModes:
- {{ .Values.persistence.accessMode | quote }}
resources:
requests:
storage: {{ .Values.persistence.size | quote }}
{{- if .Values.persistence.storageClass }}
{{- if (eq "-" .Values.persistence.storageClass) }}
storageClassName: ""
{{- else }}
storageClassName: "{{ .Values.persistence.storageClass }}"
{{- end }}
{{- end }}
{{- end }}
+49
View File
@@ -0,0 +1,49 @@
{{- if .Values.redis.enabled -}}
apiVersion: dragonflydb.io/v1alpha1
kind: Dragonfly
metadata:
name: {{ include "fapr.fullname" . }}-redis
namespace: {{ .Release.Namespace }}
annotations:
linkerd.io/inject: disabled
labels:
app.kubernetes.io/created-by: dragonfly-operator
{{- include "fapr.labels" . | nindent 4 }}
spec:
args:
- --dbfilename=dump
- --maxmemory=$(MAX_MEMORY)Mi
- --proactor_threads=1
- --logtostderr
- --save_schedule=
env:
- name: MAX_MEMORY
valueFrom:
resourceFieldRef:
resource: limits.memory
divisor: 1Mi
replicas: {{ .Values.redis.replicas | default "1" }}
resources:
requests:
cpu: {{ .Values.redis.resources.cpu | default "100m" }}
memory: {{ .Values.redis.resources.memory | default "128Mi" }}
limits:
memory: {{ .Values.redis.resources.memory | default "128Mi" }}
authentication:
passwordFromSecret:
name: {{ .Values.redis.secret.name | default (printf "%s-redis" (include "fapr.fullname" .)) | quote }}
key: {{ .Values.redis.secret.key | quote }}
{{- if .Values.redis.backup.enabled }}
snapshot:
dir: /data
cron: "0 3 * * *"
enableOnMasterOnly: false
persistentVolumeClaimSpec:
storageClassName: {{ .Values.redis.storageClass | default "managed-nfs-storage" }}
accessModes:
- ReadWriteOnce
resources:
requests:
storage: {{ .Values.redis.size | default "1Gi" }}
{{- end }}
{{- end }}
+15
View File
@@ -0,0 +1,15 @@
apiVersion: v1
kind: Service
metadata:
name: {{ include "fapr.fullname" . }}
labels:
{{- include "fapr.labels" . | nindent 4 }}
spec:
type: {{ .Values.service.type }}
ports:
- port: {{ .Values.service.port }}
targetPort: http
protocol: TCP
name: http
selector:
{{- include "fapr.selectorLabels" . | nindent 4 }}
+12
View File
@@ -0,0 +1,12 @@
{{- if .Values.serviceAccount.create -}}
apiVersion: v1
kind: ServiceAccount
metadata:
name: {{ include "fapr.serviceAccountName" . }}
labels:
{{- include "fapr.labels" . | nindent 4 }}
{{- with .Values.serviceAccount.annotations }}
annotations:
{{- toYaml . | nindent 4 }}
{{- end }}
{{- end }}
+67
View File
@@ -0,0 +1,67 @@
# Default values for fapr.
replicaCount: 1
image:
repository: git.oceanbox.io/oceanbox/fapr/fapr
tag: v0.1.0
pullPolicy: IfNotPresent
env:
- name: APP_NAME
valueFrom:
fieldRef:
fieldPath: metadata.name
- name: APP_NAMESPACE
valueFrom:
fieldRef:
fieldPath: metadata.namespace
imagePullSecrets:
- name: gitlab-pull-secret
nameOverride: ""
fullnameOverride: ""
serviceAccount:
create: true
annotations: {}
name: ""
podAnnotations: {}
podSecurityContext:
fsGroup: 0
securityContext:
capabilities:
drop:
- ALL
readOnlyRootFilesystem: false
runAsNonRoot: false
runAsUser: 0
service:
type: ClusterIP
port: 8080
persistence:
enabled: true
existingClaim: ""
size: 1Gi
storageClass: "ceph-rbd"
accessMode: ReadWriteMany
redis:
enabled: true
replicas: 1
backup:
enabled: false
size: 1Gi
storageClass: "ceph-rbd"
secret:
name: ""
key: "redis-password"
resources:
cpu: 100m
memory: 128Mi
resources: {}
autoscaling:
enabled: false
minReplicas: 1
maxReplicas: 3
targetCPUUtilizationPercentage: 80
serviceMonitor:
enabled: false
nodeSelector: {}
tolerations: []
affinity: {}
+2 -2
View File
@@ -4,10 +4,10 @@ description: A Helm chart for Kubernetes
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.
version: v2.17.1
version: v1.42.27
# This is the version number of the application being deployed. This version number should be
# incremented each time you make changes to the application.
appVersion: v2.17.1
appVersion: v1.42.27
dependencies:
- name: diagrid-dashboard
version: "0.1.0"
+1 -1
View File
@@ -5,7 +5,7 @@
replicaCount: 1
image:
repository: git.oceanbox.io/oceanbox/poseidon/sorcerer
tag: v2.17.1
tag: v1.42.27
pullPolicy: IfNotPresent
init:
enabled: false
+1 -1
View File
@@ -55,7 +55,7 @@ ingress:
secretName: yolo-registry-tls
persistence:
enabled: true
size: 5G
size: 1G
storageClass: ""
accessMode: ReadWriteOnce
cluster:
+3 -3
View File
@@ -15,7 +15,7 @@ releases:
- name: argocd
namespace: argocd
chart: argo/argo-cd
version: 9.5.21
version: 9.5.17
condition: argo.enabled
values:
- ../values/argo/values/argocd.yaml.gotmpl
@@ -35,7 +35,7 @@ releases:
- name: argo-rollouts
namespace: argocd
chart: argo/argo-rollouts
version: 2.41.0
version: 2.40.10
condition: argo.rollouts.enabled
values:
- ../values/argo/values/rollouts.yaml.gotmpl
@@ -43,7 +43,7 @@ releases:
- name: argo-workflows
namespace: argocd
chart: argo/argo-workflows
version: 1.0.18
version: 1.0.14
condition: argo.workflows.enabled
missingFileHandler: Info
- name: manifests
-53
View File
@@ -1,53 +0,0 @@
bases:
- ../envs/environments.yaml.gotmpl
repositories:
- name: clickhouse
url: ghcr.io/clickhouse
oci: true
commonLabels:
tier: system
releases:
- name: clickhouse-operator
namespace: clickhouse
chart: clickhouse/clickhouse-operator-helm
version: 0.0.6
condition: clickhouse.enabled
values:
- ../values/clickhouse/values/operator.yaml.gotmpl
missingFileHandler: Info
- name: clickhouse-cluster
namespace: clickhouse
chart: clickhouse/clickhouse-cluster-helm
version: 0.0.6
condition: clickhouse.enabled
needs:
- clickhouse/clickhouse-operator
values:
- ../values/clickhouse/values/cluster.yaml.gotmpl
postRenderer: ../bin/kustomizer
postRendererArgs:
- ../values/clickhouse/kustomize/{{ .Environment.Name }}
missingFileHandler: Info
- name: manifests
namespace: clickhouse
chart: manifests
condition: clickhouse.enabled
missingFileHandler: Info
values:
- ../values/env.yaml
- ../values/env-{{ requiredEnv "ARGOCD_ENV_CLUSTER_NAME" }}.yaml
- ../values/clickhouse/env.yaml.gotmpl
- ../values/clickhouse/env-{{ requiredEnv "ARGOCD_ENV_CLUSTER_NAME" }}.yaml.gotmpl
hooks:
- events: [ prepare, cleanup ]
showlogs: true
command: ../bin/helmify
args:
- '{{`{{ if eq .Event.Name "prepare" }}build{{ else }}clean{{ end }}`}}'
- '{{`{{ .Release.Chart }}`}}'
- '{{`{{ .Environment.Name }}`}}'
- ../values/clickhouse/manifests
- manifests
+1 -1
View File
@@ -13,7 +13,7 @@ releases:
- name: dragonfly
namespace: dragonfly
chart: dragonfly/dragonfly-operator
version: v1.6.1
version: v1.5.0
condition: dragonfly.enabled
values:
- ../values/dragonfly/values/dragonfly.yaml.gotmpl
+39
View File
@@ -0,0 +1,39 @@
bases:
- ../envs/environments.yaml.gotmpl
commonLabels:
tier: oceanbox
releases:
- name: {{ .Environment.Name }}-fapr
namespace: {{ .Environment.Name }}-fapr
chart: ../charts/fapr
condition: fapr.enabled
values:
- ../values/fapr/values/values.yaml
- ../values/fapr/values/values-{{ .Environment.Name }}.yaml
- ../values/fapr/values/values-{{ .Environment.Name }}-{{ requiredEnv "ARGOCD_ENV_CLUSTER_NAME" }}.yaml
postRenderer: ../bin/kustomizer
postRendererArgs:
- ../values/fapr/kustomize/{{ .Environment.Name }}-{{ requiredEnv "ARGOCD_ENV_CLUSTER_NAME" }}
missingFileHandler: Info
- name: manifests
namespace: {{ .Environment.Name }}-fapr
chart: manifests
condition: fapr.enabled
missingFileHandler: Info
values:
- ../values/env.yaml
- ../values/env-{{ requiredEnv "ARGOCD_ENV_CLUSTER_NAME" }}.yaml
- ../values/fapr/env.yaml.gotmpl
- ../values/fapr/env-{{ requiredEnv "ARGOCD_ENV_CLUSTER_NAME" }}.yaml.gotmpl
hooks:
- events: [ prepare, cleanup ]
showlogs: true
command: ../bin/helmify
args:
- '{{`{{ if eq .Event.Name "prepare" }}build{{ else }}clean{{ end }}`}}'
- '{{`{{ .Release.Chart }}`}}'
- '{{`{{ .Environment.Name }}`}}'
- ../values/fapr/manifests
- manifests
+3 -5
View File
@@ -2,9 +2,8 @@ bases:
- ../envs/environments.yaml.gotmpl
repositories:
- name: gabe565
oci: true
url: ghcr.io/gabe565/charts
- name: headscale
url: https://charts.gabe565.com
commonLabels:
tier: system
@@ -12,8 +11,7 @@ commonLabels:
releases:
- name: headscale-router
namespace: headscale
chart: gabe565/headscale
version: 0.16.0
chart: headscale/headscale
condition: headscale.enabled
values:
- ../values/headscale-router/values/values.yaml
+3 -5
View File
@@ -2,9 +2,8 @@ bases:
- ../envs/environments.yaml.gotmpl
repositories:
- name: gabe565
oci: true
url: ghcr.io/gabe565/charts
- name: headscale
url: https://charts.gabe565.com
commonLabels:
tier: system
@@ -12,8 +11,7 @@ commonLabels:
releases:
- name: headscale
namespace: headscale
chart: gabe565/headscale
version: 0.16.0
chart: headscale/headscale
condition: headscale.enabled
values:
- ../values/headscale/values/values.yaml
-27
View File
@@ -1,27 +0,0 @@
bases:
- ../envs/environments.yaml.gotmpl
commonLabels:
tier: system
releases:
- name: manifests
namespace: ingest
chart: manifests
condition: ingest.enabled
missingFileHandler: Info
values:
- ../values/env.yaml
- ../values/env-{{ requiredEnv "ARGOCD_ENV_CLUSTER_NAME" }}.yaml
- ../values/ingest/env.yaml.gotmpl
- ../values/ingest/env-{{ requiredEnv "ARGOCD_ENV_CLUSTER_NAME" }}.yaml.gotmpl
hooks:
- events: [ prepare, cleanup ]
showlogs: true
command: ../bin/helmify
args:
- '{{`{{ if eq .Event.Name "prepare" }}build{{ else }}clean{{ end }}`}}'
- '{{`{{ .Release.Chart }}`}}'
- '{{`{{ .Environment.Name }}`}}'
- ../values/ingest/manifests
- manifests
+1 -1
View File
@@ -13,7 +13,7 @@ releases:
- name: ingress-haproxy
namespace: ingress-haproxy
chart: haproxytech/kubernetes-ingress
version: 1.52.0
version: 1.49.0
condition: haproxy.enabled
values:
- ../values/ingress-haproxy/values/ingress-haproxy.yaml.gotmpl
+1 -1
View File
@@ -8,7 +8,7 @@ releases:
- name: kueue
namespace: kueue-system
chart: oci://registry.k8s.io/kueue/charts/kueue
version: 0.18.1
version: 0.17.3
condition: kueue.enabled
values:
- ../values/kueue/values/values.yaml
+1 -1
View File
@@ -12,7 +12,7 @@ releases:
- name: metrics-server
namespace: kube-system
chart: metrics-server/metrics-server
version: 3.13.1
version: 3.13.0
condition: metrics_server.enabled
values:
- ../values/metrics-server/values/metrics-server.yaml.gotmpl
+1 -1
View File
@@ -16,7 +16,7 @@ releases:
namespace: {{ .Environment.Name }}-openfga
{{- end }}
chart: openfga/openfga
version: 0.3.9
version: 0.3.6
condition: openfga.enabled
values:
- ../values/openfga/values/values.yaml
@@ -12,10 +12,10 @@ releases:
- name: opentelemetry-collector
namespace: otel
chart: open-telemetry/opentelemetry-collector
version: 0.159.1
version: 0.158.0
condition: otel.enabled
values:
- ../values/opentelemetry-collector/values/values.yaml.gotmpl
- ../values/opentelemetry-collector/values/values.yaml
- ../values/opentelemetry-collector/values/values-{{ .Environment.Name }}.yaml
postRenderer: ../bin/kustomizer
postRendererArgs:
+1 -1
View File
@@ -15,7 +15,7 @@ releases:
- name: postgres-operator
namespace: cnpg
chart: cloudnative-pg/cloudnative-pg
version: 0.29.0
version: 0.28.2
condition: postgres_operator.enabled
values:
- ../values/postgres-operator/values/postgres-operator.yaml.gotmpl
-27
View File
@@ -1,27 +0,0 @@
bases:
- ../envs/environments.yaml.gotmpl
commonLabels:
tier: system
releases:
- name: manifests
namespace: proteus
chart: manifests
condition: proteus.enabled
missingFileHandler: Info
values:
- ../values/env.yaml
- ../values/env-{{ requiredEnv "ARGOCD_ENV_CLUSTER_NAME" }}.yaml
- ../values/proteus/env.yaml.gotmpl
- ../values/proteus/env-{{ requiredEnv "ARGOCD_ENV_CLUSTER_NAME" }}.yaml.gotmpl
hooks:
- events: [ prepare, cleanup ]
showlogs: true
command: ../bin/helmify
args:
- '{{`{{ if eq .Event.Name "prepare" }}build{{ else }}clean{{ end }}`}}'
- '{{`{{ .Release.Chart }}`}}'
- '{{`{{ .Environment.Name }}`}}'
- ../values/proteus/manifests
- manifests
+1 -1
View File
@@ -13,7 +13,7 @@ releases:
- name: spegel
namespace: spegel
chart: spegel/spegel
version: 0.7.1
version: 0.6.0
condition: spegel.enabled
values:
- ../values/spegel/values/spegel.yaml.gotmpl
-39
View File
@@ -1,39 +0,0 @@
bases:
- ../envs/environments.yaml.gotmpl
repositories:
- name: temporal
url: https://go.temporal.io/helm-charts
commonLabels:
tier: system
releases:
- name: temporal
namespace: temporal
chart: temporal/temporal
version: 1.5.0
condition: temporal.enabled
missingFileHandler: Info
values:
- ../values/temporal/values/temporal.yaml
- name: manifests
namespace: temporal
chart: manifests
condition: temporal.enabled
missingFileHandler: Info
values:
- ../values/env.yaml
- ../values/env-{{ requiredEnv "ARGOCD_ENV_CLUSTER_NAME" }}.yaml
- ../values/temporal/env.yaml.gotmpl
- ../values/temporal/env-{{ requiredEnv "ARGOCD_ENV_CLUSTER_NAME" }}.yaml.gotmpl
hooks:
- events: [ prepare, cleanup ]
showlogs: true
command: ../bin/helmify
args:
- '{{`{{ if eq .Event.Name "prepare" }}build{{ else }}clean{{ end }}`}}'
- '{{`{{ .Release.Chart }}`}}'
- '{{`{{ .Environment.Name }}`}}'
- ../values/temporal/manifests
- manifests
+1 -1
View File
@@ -15,7 +15,7 @@ releases:
- name: velero
namespace: velero
chart: velero/velero
version: 12.0.3
version: 12.0.2
condition: velero.enabled
values:
- ../values/velero/values/velero.yaml.gotmpl
+145 -157
View File
@@ -6,163 +6,151 @@ metadata:
namespace: argocd
spec:
clusterResourceWhitelist:
- group: "*"
kind: "*"
- group: '*'
kind: '*'
description: sys components project
destinations:
- namespace: default
server: https://kubernetes.default.svc
- namespace: argocd
server: https://kubernetes.default.svc
- namespace: kube-system
server: https://kubernetes.default.svc
- namespace: ingress-nginx
server: https://kubernetes.default.svc
- namespace: prometheus
server: https://kubernetes.default.svc
- namespace: cnpg
server: https://kubernetes.default.svc
- namespace: cert-manager
server: https://kubernetes.default.svc
- namespace: kubernetes-dashboard
server: https://kubernetes.default.svc
- namespace: rabbitmq
server: https://kubernetes.default.svc
- namespace: sealed-secrets
server: https://kubernetes.default.svc
- namespace: gitlab
server: https://kubernetes.default.svc
- namespace: thanos
server: https://kubernetes.default.svc
- namespace: linkerd
server: https://kubernetes.default.svc
- namespace: linkerd-multicluster
server: https://kubernetes.default.svc
- namespace: observability
server: https://kubernetes.default.svc
- namespace: kyverno
server: https://kubernetes.default.svc
- namespace: velero
server: https://kubernetes.default.svc
- namespace: loki
server: https://kubernetes.default.svc
- namespace: tempo
server: https://kubernetes.default.svc
- namespace: x509-exporter
server: https://kubernetes.default.svc
- namespace: mariadb-operator
server: https://kubernetes.default.svc
- namespace: dragonfly
server: https://kubernetes.default.svc
- namespace: cilium-spire
server: https://kubernetes.default.svc
- namespace: cilium-test
server: https://kubernetes.default.svc
- namespace: cilium-secrets
server: https://kubernetes.default.svc
- namespace: openfga
server: https://kubernetes.default.svc
- namespace: staging-openfga
server: https://kubernetes.default.svc
- namespace: dapr-system
server: https://kubernetes.default.svc
- namespace: rook-ceph
server: https://kubernetes.default.svc
- namespace: csi-addon-manager
server: https://kubernetes.default.svc
- namespace: headscale
server: https://kubernetes.default.svc
- namespace: drupal
server: https://kubernetes.default.svc
- namespace: otel
server: https://kubernetes.default.svc
- namespace: opentelemetry
server: https://kubernetes.default.svc
- namespace: ncps
server: https://kubernetes.default.svc
- namespace: slinky
server: https://kubernetes.default.svc
- namespace: slurm
server: https://kubernetes.default.svc
- namespace: spegel
server: https://kubernetes.default.svc
- namespace: uptime
server: https://kubernetes.default.svc
- namespace: gitea
server: https://kubernetes.default.svc
- namespace: postfix
server: https://kubernetes.default.svc
- namespace: jobset-system
server: https://kubernetes.default.svc
- namespace: ingress-haproxy
server: https://kubernetes.default.svc
- namespace: dex
server: https://kubernetes.default.svc
- namespace: cra-agent
server: https://kubernetes.default.svc
- namespace: catalyst
server: https://kubernetes.default.svc
- namespace: niks3
server: https://kubernetes.default.svc
- namespace: temporal
server: https://kubernetes.default.svc
- namespace: ingest
server: https://kubernetes.default.svc
- namespace: proteus
server: https://kubernetes.default.svc
- namespace: clickhouse
server: https://kubernetes.default.svc
- namespace: default
server: https://kubernetes.default.svc
- namespace: argocd
server: https://kubernetes.default.svc
- namespace: kube-system
server: https://kubernetes.default.svc
- namespace: ingress-nginx
server: https://kubernetes.default.svc
- namespace: prometheus
server: https://kubernetes.default.svc
- namespace: cnpg
server: https://kubernetes.default.svc
- namespace: cert-manager
server: https://kubernetes.default.svc
- namespace: kubernetes-dashboard
server: https://kubernetes.default.svc
- namespace: rabbitmq
server: https://kubernetes.default.svc
- namespace: sealed-secrets
server: https://kubernetes.default.svc
- namespace: gitlab
server: https://kubernetes.default.svc
- namespace: thanos
server: https://kubernetes.default.svc
- namespace: linkerd
server: https://kubernetes.default.svc
- namespace: linkerd-multicluster
server: https://kubernetes.default.svc
- namespace: observability
server: https://kubernetes.default.svc
- namespace: kyverno
server: https://kubernetes.default.svc
- namespace: velero
server: https://kubernetes.default.svc
- namespace: loki
server: https://kubernetes.default.svc
- namespace: tempo
server: https://kubernetes.default.svc
- namespace: x509-exporter
server: https://kubernetes.default.svc
- namespace: mariadb-operator
server: https://kubernetes.default.svc
- namespace: dragonfly
server: https://kubernetes.default.svc
- namespace: cilium-spire
server: https://kubernetes.default.svc
- namespace: cilium-test
server: https://kubernetes.default.svc
- namespace: cilium-secrets
server: https://kubernetes.default.svc
- namespace: openfga
server: https://kubernetes.default.svc
- namespace: staging-openfga
server: https://kubernetes.default.svc
- namespace: dapr-system
server: https://kubernetes.default.svc
- namespace: rook-ceph
server: https://kubernetes.default.svc
- namespace: csi-addon-manager
server: https://kubernetes.default.svc
- namespace: headscale
server: https://kubernetes.default.svc
- namespace: drupal
server: https://kubernetes.default.svc
- namespace: otel
server: https://kubernetes.default.svc
- namespace: opentelemetry
server: https://kubernetes.default.svc
- namespace: ncps
server: https://kubernetes.default.svc
- namespace: slinky
server: https://kubernetes.default.svc
- namespace: slurm
server: https://kubernetes.default.svc
- namespace: spegel
server: https://kubernetes.default.svc
- namespace: uptime
server: https://kubernetes.default.svc
- namespace: gitea
server: https://kubernetes.default.svc
- namespace: postfix
server: https://kubernetes.default.svc
- namespace: jobset-system
server: https://kubernetes.default.svc
- namespace: ingress-haproxy
server: https://kubernetes.default.svc
- namespace: dex
server: https://kubernetes.default.svc
- namespace: cra-agent
server: https://kubernetes.default.svc
- namespace: catalyst
server: https://kubernetes.default.svc
- namespace: niks3
server: https://kubernetes.default.svc
sourceRepos:
- https://argoproj.github.io/argo-helm
- https://kubernetes-sigs.github.io/metrics-server/
- https://git.oceanbox.io/platform/manifests.git
- https://git.oceanbox.io/platform/manifests
- https://git.oceanbox.io/oceanbox/manifests.git
- https://kubernetes.github.io/ingress-nginx
- https://cloudnative-pg.github.io/charts
- https://charts.jetstack.io
- https://kubernetes-sigs.github.io/nfs-subdir-external-provisioner/
- https://github.com/kubernetes/dashboard
- https://bitnami-labs.github.io/sealed-secrets
- https://prometheus-community.github.io/helm-charts
- https://github.com/prometheus-community/helm-charts.git
- https://charts.gitlab.io/
- https://charts.bitnami.com/bitnami
- https://helm.linkerd.io/stable
- https://github.com/jaegertracing/jaeger-operator
- https://kyverno.github.io/kyverno/
- https://vmware-tanzu.github.io/helm-charts
- https://grafana.github.io/helm-charts
- https://charts.enix.io
- https://helm.mariadb.com/mariadb-operator
- https://helm.mariadb.com/mariadb-operator-crds
- https://helm.mariadb.com
- https://helm.cilium.io
- https://chartmuseum.github.io/charts
- https://dapr.github.io/helm-charts
- https://charts.gabe565.com
- ghcr.io/gabe565/charts
- https://open-telemetry.github.io/opentelemetry-helm-charts
- https://ghcr.io/slinkyproject/charts/slurm-operator
- https://ghcr.io/slinkyproject/charts/slurm-operator-crds
- https://bokysan.github.io/docker-postfix/
- ghcr.io/slinkyproject/charts
- ghcr.io/slinkyproject/charts/slurm-operator
- ghcr.io/slinkyproject/charts/slurm-operator-crds
- ghcr.io/spegel-org/helm-charts
- quay.io/cilium/charts
- quay.io/jetstack/charts
- quay.io/enix/charts
- registry.k8s.io/jobset/charts/jobset
- ghcr.io/dragonflydb/dragonfly-operator/helm/dragonfly-operator
- docker.gitea.com
- https://operator.mariadb.com/mariadb-enterprise-operator
- https://ot-container-kit.github.io/helm-charts
- https://operator.mariadb.com
- https://twin.github.io/helm-charts
- https://charts.dexidp.io
- public.ecr.aws/diagrid/catalyst
- ghcr.io/haproxytech/helm-charts
- https://go.temporal.io/helm-charts
- docker.io/temporalio
- ghcr.io/clickhouse
- https://argoproj.github.io/argo-helm
- https://kubernetes-sigs.github.io/metrics-server/
- https://git.oceanbox.io/platform/manifests.git
- https://git.oceanbox.io/platform/manifests
- https://git.oceanbox.io/oceanbox/manifests.git
- https://kubernetes.github.io/ingress-nginx
- https://cloudnative-pg.github.io/charts
- https://charts.jetstack.io
- https://kubernetes-sigs.github.io/nfs-subdir-external-provisioner/
- https://github.com/kubernetes/dashboard
- https://bitnami-labs.github.io/sealed-secrets
- https://prometheus-community.github.io/helm-charts
- https://github.com/prometheus-community/helm-charts.git
- https://charts.gitlab.io/
- https://charts.bitnami.com/bitnami
- https://helm.linkerd.io/stable
- https://github.com/jaegertracing/jaeger-operator
- https://kyverno.github.io/kyverno/
- https://vmware-tanzu.github.io/helm-charts
- https://grafana.github.io/helm-charts
- https://charts.enix.io
- https://helm.mariadb.com/mariadb-operator
- https://helm.mariadb.com/mariadb-operator-crds
- https://helm.mariadb.com
- https://helm.cilium.io
- https://chartmuseum.github.io/charts
- https://dapr.github.io/helm-charts
- https://charts.gabe565.com
- https://open-telemetry.github.io/opentelemetry-helm-charts
- https://ghcr.io/slinkyproject/charts/slurm-operator
- https://ghcr.io/slinkyproject/charts/slurm-operator-crds
- https://bokysan.github.io/docker-postfix/
- ghcr.io/slinkyproject/charts
- ghcr.io/slinkyproject/charts/slurm-operator
- ghcr.io/slinkyproject/charts/slurm-operator-crds
- ghcr.io/spegel-org/helm-charts
- quay.io/cilium/charts
- quay.io/jetstack/charts
- quay.io/enix/charts
- registry.k8s.io/jobset/charts/jobset
- ghcr.io/dragonflydb/dragonfly-operator/helm/dragonfly-operator
- docker.gitea.com
- https://operator.mariadb.com/mariadb-enterprise-operator
- https://ot-container-kit.github.io/helm-charts
- https://operator.mariadb.com
- https://twin.github.io/helm-charts
- https://charts.dexidp.io
- public.ecr.aws/diagrid/catalyst
- ghcr.io/haproxytech/helm-charts
@@ -4,7 +4,7 @@ metadata:
name: beta-atlantis-actor-config
data:
KUEUE_NAMESPACE: "prod-queue"
XTRACT_IMAGE: "git.oceanbox.io/oceanbox/katamari/excavator:v1.5.3"
XTRACT_IMAGE: "git.oceanbox.io/oceanbox/katamari/excavator:v1.2.14"
XTRACT_QUEUE: "prod-queue"
PLUME_IMAGE: "git.oceanbox.io/oceanbox/katamari/plume:v1.5.3"
PLUME_IMAGE: "git.oceanbox.io/oceanbox/katamari/plume:v1.2.14"
PLUME_QUEUE: "prod-queue"
@@ -46,7 +46,7 @@
"storeId": "01JKTZXMP7ANN4GG2P5W8Y56M6",
"modelId": "01JKTZYMCZZBVSBG66W27XMW0A"
},
"sentryUrl": "https://793f73e5a9278cb638c0acd175b9289d@o4509530141622272.ingest.de.sentry.io/4509530195492944",
"sentryUrl": "https://b6e03cfc8e247297b89217b09341b4cb@o4509530141622272.ingest.de.sentry.io/4509530195492944",
"plainAuthUsers": [
{
"username": "admin",
@@ -3,10 +3,7 @@ kind: ConfigMap
metadata:
name: staging-atlantis-actor-config
data:
XTRACT_IMAGE: "git.oceanbox.io/oceanbox/katamari/excavator:v1.5.1"
XTRACT_IMAGE: "git.oceanbox.io/oceanbox/katamari/excavator:v1.4.0"
XTRACT_QUEUE: "dev-queue"
PLUME_IMAGE: "git.oceanbox.io/oceanbox/katamari/plume:v1.5.1"
PLUME_IMAGE: "git.oceanbox.io/oceanbox/katamari/plume:v1.4.0"
PLUME_QUEUE: "dev-queue"
TEMPORAL_ADDRESS: "temporal-frontend.temporal:7233"
TEMPORAL_NAMESPACE: "staging-atlantis"
TEMPORAL_TASK_QUEUE: "atlantis"
@@ -41,12 +41,12 @@
}
},
"fga": {
"apiUrl": "http://staging-openfga.staging-openfga.svc.cluster.local:8080",
"apiUrl": "http://prod-openfga.openfga.svc.cluster.local:8080",
"apiKey": "",
"storeId": "01JKTZXMP7ANN4GG2P5W8Y56M6",
"modelId": "01JKTZYMCZZBVSBG66W27XMW0A"
},
"sentryUrl": "https://793f73e5a9278cb638c0acd175b9289d@o4509530141622272.ingest.de.sentry.io/4509530195492944",
"sentryUrl": "https://b6e03cfc8e247297b89217b09341b4cb@o4509530141622272.ingest.de.sentry.io/4509530195492944",
"plainAuthUsers": [
{
"username": "admin",
@@ -2,7 +2,7 @@ replicaCount: 1
image:
repository: git.oceanbox.io/oceanbox/poseidon/atlantis
tag: v2.17.0
tag: v2.13.1
podAnnotations:
dapr.io/app-id: "beta-atlantis"
@@ -11,7 +11,7 @@ env:
- name: APP_NAMESPACE
value: beta-atlantis
- name: APP_VERSION
value: "2.17.0-beta"
value: "2.13.1-beta"
- name: LOG_LEVEL
value: "1"
- name: ANALYTICS_WEB_ID
@@ -1,7 +1,7 @@
replicaCount: 1
image:
repository: git.oceanbox.io/oceanbox/poseidon/atlantis
tag: 6442206c-debug
tag: 4733e529-debug
podAnnotations:
dapr.io/app-id: "staging-atlantis"
env:
@@ -1,4 +0,0 @@
clickhouse:
enabled: true
s3:
enabled: true
-27
View File
@@ -1,27 +0,0 @@
clickhouse:
enabled: false
autosync: true
clusterName: clickhouse
keeperName: clickhouse-keeper
serviceName: clickhouse-clickhouse-headless
storageClass: managed-nfs-storage
storage: 50Gi
keeperStorage: 5Gi
keeperReplicas: 3
resources:
cpuRequest: "1"
memoryRequest: 4Gi
memoryLimit: 8Gi
database: otel
user: default
credentialsSecret: clickhouse-credentials
credentialsKey: password
s3:
enabled: false
endpoint: "http://10.255.241.30:30080"
bucket: clickhouse
secret: clickhouse-s3
moveFactor: 0.2
ttl:
logs: 720h
traces: 336h
@@ -1,42 +0,0 @@
{{- if .Values.clusterConfig.argo.enabled }}
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: clickhouse
namespace: argocd
annotations:
argocd.argoproj.io/sync-options: SkipDryRunOnMissingResource=true
finalizers:
- resources-finalizer.argocd.argoproj.io
spec:
destination:
namespace: clickhouse
server: 'https://kubernetes.default.svc'
sources:
- repoURL: {{ .Values.clusterConfig.manifests }}
targetRevision: HEAD
path: helmfile.d
plugin:
name: helmfile-cmp
env:
- name: CLUSTER_NAME
value: {{ .Values.clusterConfig.cluster }}
- name: HELMFILE_ENVIRONMENT
value: default
- name: HELMFILE_FILE_PATH
value: clickhouse.yaml.gotmpl
project: sys
syncPolicy:
managedNamespaceMetadata:
labels:
component: sys
syncOptions:
- CreateNamespace=true
- ApplyOutOfSyncOnly=true
- ServerSideApply=true
{{- if .Values.clickhouse.autosync }}
automated:
prune: true
# selfHeal: false
{{- end }}
{{- end }}
@@ -1,25 +0,0 @@
{{- if .Values.clusterConfig.cilium.enabled }}
apiVersion: cilium.io/v2
kind: CiliumNetworkPolicy
metadata:
name: allow-prometheus
namespace: clickhouse
spec:
description: Allow Grafana queries and Prometheus metric scraping
endpointSelector:
matchLabels: {}
ingress:
- fromEndpoints:
- matchLabels:
io.kubernetes.pod.namespace: prometheus
toPorts:
- ports:
- port: "9000"
protocol: TCP
- port: "8123"
protocol: TCP
- port: "8080"
protocol: TCP
- port: "9363"
protocol: TCP
{{- end }}
@@ -1,15 +0,0 @@
{{- if .Values.clusterConfig.cilium.enabled }}
apiVersion: cilium.io/v2
kind: CiliumNetworkPolicy
metadata:
name: allow-intra
namespace: clickhouse
spec:
description: Allow all intra-namespace traffic (operator, ClickHouse servers, Keeper)
endpointSelector:
matchLabels: {}
ingress:
- fromEndpoints:
- matchLabels:
io.kubernetes.pod.namespace: clickhouse
{{- end }}
@@ -1,21 +0,0 @@
{{- if .Values.clusterConfig.cilium.enabled }}
apiVersion: cilium.io/v2
kind: CiliumNetworkPolicy
metadata:
name: allow-otel-write
namespace: clickhouse
spec:
description: Allow the opentelemetry collector to write to ClickHouse
endpointSelector:
matchLabels: {}
ingress:
- fromEndpoints:
- matchLabels:
io.kubernetes.pod.namespace: otel
toPorts:
- ports:
- port: "9000"
protocol: TCP
- port: "8123"
protocol: TCP
{{- end }}
@@ -1,83 +0,0 @@
imageTag: "24.8"
clickhouse:
enabled: true
meta:
name: {{ .Values.clickhouse.clusterName }}
spec:
shards: 1
replicas: 1
podTemplate:
nodeHostnameKey: kubernetes.io/hostname
settings:
defaultUserPassword:
secret:
name: {{ .Values.clickhouse.credentialsSecret }}
key: {{ .Values.clickhouse.credentialsKey }}
# Single replica: no cross-replica database sync needed. The operator's sync also
# breaks on the OTel-created (non-replicated) `otel` database. Revisit for multi-replica HA.
enableDatabaseSync: false
{{- if .Values.clickhouse.s3.enabled }}
extraConfig:
storage_configuration:
disks:
s3:
type: s3
endpoint: {{ .Values.clickhouse.s3.endpoint }}/{{ .Values.clickhouse.s3.bucket }}/data/
use_environment_credentials: true
policies:
tiered:
volumes:
hot:
disk: default
cold:
disk: s3
move_factor: {{ .Values.clickhouse.s3.moveFactor }}
merge_tree:
storage_policy: tiered
{{- end }}
containerTemplate:
resources:
requests:
cpu: {{ .Values.clickhouse.resources.cpuRequest }}
memory: {{ .Values.clickhouse.resources.memoryRequest }}
limits:
memory: {{ .Values.clickhouse.resources.memoryLimit }}
{{- if .Values.clickhouse.s3.enabled }}
env:
- name: AWS_ACCESS_KEY_ID
valueFrom:
secretKeyRef:
name: {{ .Values.clickhouse.s3.secret }}
key: AWS_ACCESS_KEY_ID
- name: AWS_SECRET_ACCESS_KEY
valueFrom:
secretKeyRef:
name: {{ .Values.clickhouse.s3.secret }}
key: AWS_SECRET_ACCESS_KEY
{{- end }}
dataVolumeClaimSpec:
accessModes:
- ReadWriteOnce
storageClassName: {{ .Values.clickhouse.storageClass }}
resources:
requests:
storage: {{ .Values.clickhouse.storage }}
keeper:
enabled: true
meta:
name: {{ .Values.clickhouse.keeperName }}
spec:
replicas: {{ .Values.clickhouse.keeperReplicas }}
podTemplate:
nodeHostnameKey: kubernetes.io/hostname
podDisruptionBudget:
maxUnavailable: 1
dataVolumeClaimSpec:
accessModes:
- ReadWriteOnce
storageClassName: {{ .Values.clickhouse.storageClass }}
resources:
requests:
storage: {{ .Values.clickhouse.keeperStorage }}
@@ -1 +0,0 @@
# clickhouse-operator-helm values (chart defaults)
+1 -1
View File
@@ -38,4 +38,4 @@ volumeMounts:
readOnly: true
subPath: appsettings.json
image:
tag: 6442206c-debug
tag: 4704e4f1-debug
+19
View File
@@ -0,0 +1,19 @@
fullnameOverride: prod-docs
ingress:
enabled: true
className: "haproxy"
annotations:
cert-manager.io/cluster-issuer: letsencrypt-production
haproxy.org/backend-protocol: h1
haproxy.org/cors-enable: "true"
oceanbox.io/expose: internal
hosts:
- host: docs.oceanbox.io
paths:
- path: /
pathType: ImplementationSpecific
tls:
- hosts:
- docs.oceanbox.io
secretName: prod-docs-tls
+4 -4
View File
@@ -1,20 +1,20 @@
fullnameOverride: staging-docs
image:
tag: "72b01c0b-debug"
tag: "4bec2e8e-debug"
ingress:
enabled: true
className: "haproxy"
annotations:
cert-manager.io/cluster-issuer: letsencrypt-production
cert-manager.io/cluster-issuer: ca-issuer
haproxy.org/backend-protocol: h1
haproxy.org/cors-enable: "true"
oceanbox.io/expose: internal
hosts:
- host: docs.oceanbox.io
- host: docs.dev.hel1.obx
paths:
- path: /
pathType: ImplementationSpecific
tls:
- hosts:
- docs.oceanbox.io
- docs.dev.hel1.obx
secretName: default-docs-tls
@@ -1,2 +1,2 @@
ingest:
fapr:
enabled: true
+4
View File
@@ -0,0 +1,4 @@
fapr:
enabled: true
autosync: {{ if or (eq .Environment.Name "prod") (eq .Environment.Name "beta") }}false{{ else }}true{{ end }}
env: {{ .Environment.Name }}
@@ -0,0 +1,4 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- _manifest.yaml
@@ -0,0 +1,20 @@
{
"appName": "fapr",
"appEnv": "prod",
"logLevel": "Information",
"aromeOutputDir": "/data/hdd/data/AROME",
"aromeStartDate": "2026-04-24",
"nveOutputDir": "/data/hdd/data/river-data/Data",
"nveNdays": 5000,
"nveApiUrl": "https://chartserver.nve.no/ShowData.aspx?req=getchart&ver=1.0",
"riverrunBinary": "/app/riverrun",
"norshelfOutputDir": "/data/hdd/data/norshelf/sea_norshelf_files",
"norshelfStartDate": "2026-03-01",
"nemoOutputDir": "/data/hdd/data/NEMO",
"copernicusmarineBinary": "/usr/local/bin/copernicusmarine",
"copernicusUsername": "",
"copernicusPassword": "",
"murOutputDir": "/data/hdd/data/river-data/MUR/MUR_SST_nc",
"netrcPath": "/root/.netrc",
"norkystOutputDir": "/data/hdd/data/norkyst"
}
@@ -0,0 +1,77 @@
apiVersion: dapr.io/v1alpha1
kind: Component
metadata:
name: cron-arome
spec:
type: bindings.cron
version: v1
metadata:
- name: schedule
value: "0 6 * * *"
scopes:
- prod-fapr
---
apiVersion: dapr.io/v1alpha1
kind: Component
metadata:
name: cron-nve
spec:
type: bindings.cron
version: v1
metadata:
- name: schedule
value: "0 8 * * *"
scopes:
- prod-fapr
---
apiVersion: dapr.io/v1alpha1
kind: Component
metadata:
name: cron-norshelf
spec:
type: bindings.cron
version: v1
metadata:
- name: schedule
value: "0 13 * * *"
scopes:
- prod-fapr
---
apiVersion: dapr.io/v1alpha1
kind: Component
metadata:
name: cron-nemo
spec:
type: bindings.cron
version: v1
metadata:
- name: schedule
value: "0 13 * * *"
scopes:
- prod-fapr
---
apiVersion: dapr.io/v1alpha1
kind: Component
metadata:
name: cron-mur
spec:
type: bindings.cron
version: v1
metadata:
- name: schedule
value: "0 6 * * *"
scopes:
- prod-fapr
---
apiVersion: dapr.io/v1alpha1
kind: Component
metadata:
name: cron-norkyst
spec:
type: bindings.cron
version: v1
metadata:
- name: schedule
value: "0 13 * * *"
scopes:
- prod-fapr
@@ -0,0 +1,3 @@
- op: add
path: /spec/template/spec/containers/0/envFrom
value: []
@@ -0,0 +1,21 @@
generatorOptions:
disableNameSuffixHash: true
configMapGenerator:
- name: prod-fapr-appsettings
files:
- appsettings.json
patches:
- target:
group: apps
version: v1
kind: Deployment
path: deployment_patch.yaml
resources:
- ../base
- pv.yaml
- pvc.yaml
- secrets.yaml
- secretstore.yaml
- statestore.yaml
- tracing.yaml
- cron-bindings.yaml
+22
View File
@@ -0,0 +1,22 @@
apiVersion: v1
kind: PersistentVolume
metadata:
name: pv-prod-fapr-ceph-data
spec:
accessModes:
- ReadWriteMany
capacity:
storage: 1Gi
csi:
driver: rook-ceph.cephfs.csi.ceph.com
nodeStageSecretRef:
name: rook-csi-cephfs-node
namespace: rook-ceph
volumeAttributes:
clusterID: rook-ceph
fsName: data
rootPath: /
staticVolume: "true"
volumeHandle: pv-prod-fapr-ceph-data
persistentVolumeReclaimPolicy: Retain
volumeMode: Filesystem
+13
View File
@@ -0,0 +1,13 @@
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: prod-fapr-ceph-data
spec:
accessModes:
- ReadWriteMany
resources:
requests:
storage: 1Gi
storageClassName: ""
volumeMode: Filesystem
volumeName: pv-prod-fapr-ceph-data
@@ -0,0 +1,6 @@
apiVersion: v1
kind: Secret
metadata:
name: prod-fapr-redis
type: Opaque
data:
@@ -0,0 +1,12 @@
apiVersion: dapr.io/v1alpha1
kind: Component
metadata:
name: secretstore
spec:
type: secretstores.kubernetes
version: v1
metadata:
- name: defaultNamespace
value: prod-fapr
scopes:
- prod-fapr
@@ -0,0 +1,22 @@
apiVersion: dapr.io/v1alpha1
kind: Component
metadata:
name: statestore
spec:
type: state.redis
version: v1
metadata:
- name: redisHost
value: prod-fapr-redis:6379
- name: redisUsername
value: default
- name: redisPassword
secretKeyRef:
name: prod-fapr-redis
key: redis-password
- name: actorStateStore
value: "true"
- name: redisDB
value: "0"
scopes:
- prod-fapr
@@ -0,0 +1,11 @@
apiVersion: dapr.io/v1alpha1
kind: Configuration
metadata:
name: tracing
spec:
tracing:
samplingRate: "1"
otel:
endpointAddress: "10.255.241.12:4317"
protocol: grpc
isSecure: false
@@ -1,8 +1,8 @@
{{- if .Values.clusterConfig.argo.enabled }}
{{ if .Values.clusterConfig.argo.enabled }}
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: temporal
name: {{ .Values.fapr.env }}-fapr
namespace: argocd
annotations:
argocd.argoproj.io/sync-options: SkipDryRunOnMissingResource=true
@@ -11,8 +11,9 @@ metadata:
- resources-finalizer.argocd.argoproj.io
spec:
destination:
namespace: temporal
server: 'https://kubernetes.default.svc'
namespace: {{ .Values.fapr.env }}-fapr
server: https://kubernetes.default.svc
project: atlantis
sources:
- repoURL: {{ .Values.clusterConfig.manifests }}
targetRevision: HEAD
@@ -23,26 +24,19 @@ spec:
- name: CLUSTER_NAME
value: {{ .Values.clusterConfig.cluster }}
- name: HELMFILE_ENVIRONMENT
value: default
value: {{ .Values.fapr.env }}
- name: HELMFILE_FILE_PATH
value: temporal.yaml.gotmpl
project: sys
ignoreDifferences:
- kind: Secret
jsonPointers:
- /metadata/labels
- /data
value: fapr.yaml.gotmpl
- repoURL: https://git.oceanbox.io/platform/manifests.git
targetRevision: main
ref: values
syncPolicy:
managedNamespaceMetadata:
labels:
component: sys
syncOptions:
- CreateNamespace=true
- ApplyOutOfSyncOnly=true
- ServerSideApply=true
{{- if .Values.temporal.autosync }}
{{- if .Values.fapr.autosync }}
automated:
prune: true
# selfHeal: false
selfHeal: false
{{- end }}
{{- end }}
+55
View File
@@ -0,0 +1,55 @@
replicaCount: 1
podAnnotations:
dapr.io/enabled: "true"
dapr.io/app-id: "prod-fapr"
dapr.io/app-port: "8080"
dapr.io/api-token-secret: "dapr-api-token"
dapr.io/config: "tracing"
dapr.io/app-protocol: "http"
dapr.io/log-as-json: "true"
dapr.io/sidecar-cpu-request: "10m"
dapr.io/sidecar-memory-request: "50Mi"
env:
- name: APP_NAME
valueFrom:
fieldRef:
fieldPath: metadata.name
- name: APP_NAMESPACE
valueFrom:
fieldRef:
fieldPath: metadata.namespace
- name: DAPR_API_TOKEN
valueFrom:
secretKeyRef:
name: dapr-api-token
key: token
persistence:
enabled: true
existingClaim: prod-fapr-ceph-data
redis:
enabled: true
replicas: 1
backup:
enabled: true
size: 2Gi
storageClass: "ceph-rbd"
secret:
name: "prod-fapr-redis"
key: "redis-password"
resources:
cpu: 100m
memory: 128Mi
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: "topology.kubernetes.io/group"
operator: In
values:
- srv
+1
View File
@@ -0,0 +1 @@
# Base values for fapr - overridden per environment
+1 -1
View File
@@ -142,7 +142,7 @@ ingress:
cert-manager.io/cluster-issuer: letsencrypt-production
haproxy.org/backend-protocol: h1
haproxy.org/timeout-server: 600s
oceanbox.io/expose: internal
haproxy.org/allow-list: 10.0.0.0/8,172.16.0.0/12,192.168.0.0/16,172.19.255.0/24,100.64.0.0/12,185.125.160.4/32,37.27.203.38/32
hosts:
- host: git.oceanbox.io
paths:
+8 -5
View File
@@ -130,7 +130,6 @@ configMaps:
"group:intern": [
"haavahak@stud.ntnu.no",
"haavahak@ntnu.no",
"hanna.fagrell@oceanbox.io",
],
"group:ceph": [
"jonas.juselius@oceanbox.io",
@@ -272,8 +271,15 @@ configMaps:
{ "action": "accept", "src": [ "elianne.ersdal@oceanbox.io" ], "dst": [ "elianne.ersdal@oceanbox.io:*" ] },
{ "action": "accept", "src": [ "hanskristian.djuve@oceanbox.io" ], "dst": [ "hanskristian.djuve@oceanbox.io:*" ] },
{ "action": "accept", "src": [ "erlend.mundal@oceanbox.io" ], "dst": [ "erlend.mundal@oceanbox.io:*" ] },
{ "action": "accept", "src": [ "hanna.fagrell@oceanbox.io" ], "dst": [ "hanna.fagrell@oceanbox.io:*" ] },
// s/"\([^"]*\)"/{ "action": "accept", "src": [ "\1" ], "dst": [ "\1:*" ] },
],
"ssh": [
{
"action": "accept",
"src": [ "group:admin" ],
"dst": [ "autogroup:self", "tag:hpc", "tag:mumindalen", "tag:hel1" ],
"users": [ "autogroup:nonroot", "root" ]
}
]
}
dns:
@@ -296,7 +302,6 @@ configMaps:
{ "name": "argocd.adm.oceanbox.io", "type": "A", "value": "10.255.241.11" },
{ "name": "hubble.adm.oceanbox.io", "type": "A", "value": "10.255.241.11" },
{ "name": "dapr.adm.oceanbox.io", "type": "A", "value": "10.255.241.11" },
{ "name": "temporal.adm.oceanbox.io", "type": "A", "value": "10.255.241.11" },
{ "name": "umami.srv.oceanbox.io", "type": "A", "value": "10.255.241.11" },
{ "name": "rabbitmq.srv.oceanbox.io", "type": "A", "value": "10.255.241.11" },
@@ -320,8 +325,6 @@ configMaps:
{ "name": "sorcrerer.ekman.oceanbox.io", "type": "A", "value": "10.255.241.99" },
{ "name": "plume.data.oceanbox.io", "type": "A", "value": "10.255.241.99" },
{ "name": "slurm-agent.ekman.oceanbox.io", "type": "A", "value": "10.255.241.99" },
{ "name": "temporal.ekman.oceanbox.io", "type": "A", "value": "10.255.241.99" },
{ "name": "temporal-grpc.ekman.oceanbox.io", "type": "A", "value": "10.255.241.99" },
{ "name": "git.obx", "type": "A", "value": "10.0.1.9" },
{ "name": "git.oceanbox.io", "type": "A", "value": "10.0.1.3" },
-3
View File
@@ -1,3 +0,0 @@
ingest:
enabled: false
autosync: false
-7
View File
@@ -1,7 +0,0 @@
apiVersion: temporal.io/v1alpha1
kind: Connection
metadata:
name: temporal
namespace: ingest
spec:
hostPort: temporal-frontend.temporal:7233
-40
View File
@@ -1,40 +0,0 @@
{{- if .Values.clusterConfig.argo.enabled }}
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: ingest
namespace: argocd
annotations:
argocd.argoproj.io/sync-options: SkipDryRunOnMissingResource=true
finalizers:
- resources-finalizer.argocd.argoproj.io
spec:
destination:
namespace: ingest
server: 'https://kubernetes.default.svc'
sources:
- repoURL: {{ .Values.clusterConfig.manifests }}
targetRevision: HEAD
path: helmfile.d
plugin:
name: helmfile-cmp
env:
- name: CLUSTER_NAME
value: {{ .Values.clusterConfig.cluster }}
- name: HELMFILE_ENVIRONMENT
value: default
- name: HELMFILE_FILE_PATH
value: ingest.yaml.gotmpl
project: sys
syncPolicy:
managedNamespaceMetadata:
labels:
component: sys
syncOptions:
- CreateNamespace=true
- ApplyOutOfSyncOnly=true
{{- if .Values.ingest.autosync }}
automated:
prune: true
{{- end }}
{{- end }}
-42
View File
@@ -1,42 +0,0 @@
apiVersion: v1
kind: PersistentVolume
metadata:
name: pv-ingest-data
spec:
accessModes:
- ReadWriteMany
capacity:
storage: 1Gi
claimRef:
apiVersion: v1
kind: PersistentVolumeClaim
name: ekman-data
namespace: ingest
csi:
driver: rook-ceph.cephfs.csi.ceph.com
nodeStageSecretRef:
name: rook-csi-cephfs-node
namespace: rook-ceph
volumeAttributes:
clusterID: rook-ceph
fsName: data
rootPath: /
staticVolume: "true"
volumeHandle: pv-ingest-data
persistentVolumeReclaimPolicy: Retain
volumeMode: Filesystem
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: ekman-data
namespace: ingest
spec:
accessModes:
- ReadWriteMany
resources:
requests:
storage: 1Gi
storageClassName: ""
volumeMode: Filesystem
volumeName: pv-ingest-data
@@ -1,57 +0,0 @@
apiVersion: temporal.io/v1alpha1
kind: WorkerDeployment
metadata:
name: ingest-py
namespace: ingest
spec:
replicas: 1
workerOptions:
temporalNamespace: prod-ingest
connectionRef:
name: temporal
rollout:
strategy: AllAtOnce
sunset: {}
template:
spec:
securityContext:
runAsUser: 0
runAsGroup: 0
containers:
- name: ingest-py
image: git.oceanbox.io/oceanbox/churn/ingest-py:v2.3.11
resources:
requests:
memory: 512Mi
limits:
memory: 15Gi
env:
- name: DATA_ROOT
value: /data/hdd/data
# NOTE: NASA Earthdata auth for mur (requests reads $NETRC).
- name: NETRC
value: /secrets/.netrc
- name: COPERNICUSMARINE_SERVICE_USERNAME
valueFrom:
secretKeyRef:
name: nemo-credentials
key: username
- name: COPERNICUSMARINE_SERVICE_PASSWORD
valueFrom:
secretKeyRef:
name: nemo-credentials
key: password
volumeMounts:
- name: data
mountPath: /data
- name: netrc
mountPath: /secrets/.netrc
subPath: .netrc
readOnly: true
volumes:
- name: data
persistentVolumeClaim:
claimName: ekman-data
- name: netrc
secret:
secretName: mur-netrc
@@ -1,37 +0,0 @@
apiVersion: temporal.io/v1alpha1
kind: WorkerDeployment
metadata:
name: ingest
namespace: ingest
spec:
replicas: 1
workerOptions:
temporalNamespace: prod-ingest
connectionRef:
name: temporal
rollout:
strategy: AllAtOnce
sunset: {}
template:
spec:
securityContext:
runAsUser: 0
runAsGroup: 0
containers:
- name: ingest
image: git.oceanbox.io/oceanbox/churn/ingest:v2.3.11
resources:
requests:
memory: 512Mi
limits:
memory: 15Gi
env:
- name: DATA_ROOT
value: /data/hdd/data
volumeMounts:
- name: data
mountPath: /data
volumes:
- name: data
persistentVolumeClaim:
claimName: ekman-data
+1 -1
View File
@@ -1,4 +1,4 @@
loki:
enabled: false
enabled: true
autosync: false
+1 -1
View File
@@ -1,5 +1,5 @@
loki:
enabled: false
enabled: true
autosync: true
compactor: true
s3:
+1 -1
View File
@@ -1,6 +1,6 @@
replicaCount: 1
image:
tag: "7080a0bd-debug"
tag: "e49d3f4f-debug"
env:
- name: APP_VERSION
value: "0.0.0"
@@ -4,14 +4,6 @@ image:
service:
type: LoadBalancer
loadBalancerIP: 10.255.241.12
{{- if .Values.clickhouse.enabled }}
extraEnvs:
- name: CH_PASSWORD
valueFrom:
secretKeyRef:
name: {{ .Values.clickhouse.credentialsSecret }}
key: {{ .Values.clickhouse.credentialsKey }}
{{- end }}
config:
# receivers:
# prometheus/collector:
@@ -39,20 +31,6 @@ config:
endpoint: http://loki-write-headless.loki:3100/otlp
tls:
insecure: true
{{- if .Values.clickhouse.enabled }}
clickhouse:
endpoint: tcp://{{ .Values.clickhouse.serviceName }}.clickhouse.svc:9000?dial_timeout=10s
database: {{ .Values.clickhouse.database }}
username: {{ .Values.clickhouse.user }}
password: ${env:CH_PASSWORD}
create_schema: true
logs_table_name: otel_logs
traces_table_name: otel_traces
ttl: {{ .Values.clickhouse.ttl.logs }}
timeout: 10s
retry_on_failure:
enabled: true
{{- end }}
debug/metrics:
verbosity: detailed
debug/traces:
@@ -67,7 +45,8 @@ config:
traces:
receivers: [otlp] # zipkin
processors: [batch]
exporters: [clickhouse]
exporters: [otlp]
# exporters: [otlphttp/traces,debug/traces]
metrics:
receivers: [otlp,prometheus] # prometheus/collector
processors: [batch]
@@ -76,7 +55,8 @@ config:
logs:
receivers: [otlp]
processors: [batch]
exporters: [clickhouse]
exporters: [otlphttp/logs]
# exporters: [otlphttp/logs,debug/logs]
ports:
metrics:
enabled: true
@@ -11,7 +11,10 @@ prometheus:
persistence: true
plugins:
- volkovlabs-image-panel
- marcusolsson-static-datasource
- marcusolsson-calendar-panel
- grafana-clock-panel
- redis-datasource
thanos:
enabled: true
coredns:
@@ -106,45 +106,11 @@ alertmanager:
grafana:
defaultDashboardsEnabled: {{ .Values.prometheus.grafana.defaultDashboardsEnabled }}
deploymentStrategy:
type: Recreate
{{- if .Values.prometheus.grafana.persistence }}
# This init container re-syncs the DB admin password
# to the secret before Grafana starts, so the reload can never 401 again.
extraInitContainers:
- name: sync-admin-password
image: docker.io/grafana/grafana:13.0.1-security-01
command:
- /bin/sh
- -c
- grafana cli --homepath=/usr/share/grafana admin reset-admin-password "{{ `$GF_ADMIN_PW` }}" || true
env:
- name: GF_PATHS_DATA
value: /var/lib/grafana
- name: GF_ADMIN_PW
valueFrom:
secretKeyRef:
name: prometheus-grafana
key: admin-password
volumeMounts:
- name: storage
mountPath: /var/lib/grafana
{{- end }}
{{- if or .Values.prometheus.grafana.plugins .Values.clickhouse.enabled }}
{{- if .Values.prometheus.grafana.plugins }}
plugins:
{{- range .Values.prometheus.grafana.plugins }}
- {{ . }}
{{- end }}
{{- if .Values.clickhouse.enabled }}
- grafana-clickhouse-datasource
{{- end }}
{{- end }}
{{- if .Values.clickhouse.enabled }}
envValueFrom:
CLICKHOUSE_PASSWORD:
secretKeyRef:
name: {{ .Values.clickhouse.credentialsSecret }}
key: {{ .Values.clickhouse.credentialsKey }}
{{- end }}
grafana.ini:
server:
@@ -251,34 +217,9 @@ grafana:
createPrometheusReplicasDatasources: false
label: grafana_datasource
{{ end }}
{{- if or .Values.loki.enabled .Values.clickhouse.enabled .Values.prometheus.additionalDataSources }}
{{- if or .Values.loki.enabled .Values.prometheus.additionalDataSources }}
additionalDataSources:
{{- end }}
{{- if .Values.clickhouse.enabled }}
- name: ClickHouse
type: grafana-clickhouse-datasource
uid: clickhouse
access: proxy
editable: false
jsonData:
host: {{ .Values.clickhouse.serviceName }}.clickhouse.svc
port: 9000
protocol: native
username: {{ .Values.clickhouse.user }}
defaultDatabase: {{ .Values.clickhouse.database }}
logs:
defaultDatabase: {{ .Values.clickhouse.database }}
defaultTable: otel_logs
otelEnabled: true
otelVersion: latest
traces:
defaultDatabase: {{ .Values.clickhouse.database }}
defaultTable: otel_traces
otelEnabled: true
otelVersion: latest
secureJsonData:
password: ${CLICKHOUSE_PASSWORD}
{{- end }}
{{- if .Values.tempo.enabled }}
- name: Tempo
type: tempo
-2
View File
@@ -1,2 +0,0 @@
proteus:
enabled: true
-3
View File
@@ -1,3 +0,0 @@
proteus:
enabled: false
autosync: false
-7
View File
@@ -1,7 +0,0 @@
apiVersion: temporal.io/v1alpha1
kind: Connection
metadata:
name: temporal
namespace: proteus
spec:
hostPort: temporal-frontend.temporal:7233
-44
View File
@@ -1,44 +0,0 @@
{{- if .Values.clusterConfig.cilium.enabled }}
apiVersion: cilium.io/v2
kind: CiliumNetworkPolicy
metadata:
name: proteus-egress
namespace: proteus
spec:
endpointSelector:
matchLabels: {}
egress:
# Temporal frontend (in-cluster on ekman)
- toEndpoints:
- matchLabels:
k8s:io.kubernetes.pod.namespace: temporal
toPorts:
- ports:
- port: "7233"
protocol: TCP
# k8s API server (for batch/v1 Job create/poll/delete)
- toEntities:
- kube-apiserver
# DNS
- toEndpoints:
- matchLabels:
k8s:io.kubernetes.pod.namespace: kube-system
k8s-app: kube-dns
toPorts:
- ports:
- port: "53"
protocol: UDP
- port: "53"
protocol: TCP
# RabbitMQ on oceanbox: NodePorts (30672/31672) or MetalLB IPs on standard port 5672
- toCIDR:
- 10.255.241.0/24
toPorts:
- ports:
- port: "5672"
protocol: TCP
- port: "30672"
protocol: TCP
- port: "31672"
protocol: TCP
{{- end }}
-37
View File
@@ -1,37 +0,0 @@
{{- if .Values.clusterConfig.argo.enabled }}
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: proteus
namespace: argocd
annotations:
argocd.argoproj.io/sync-options: SkipDryRunOnMissingResource=true
finalizers:
- resources-finalizer.argocd.argoproj.io
spec:
destination:
namespace: proteus
server: 'https://kubernetes.default.svc'
sources:
- repoURL: {{ .Values.clusterConfig.manifests }}
targetRevision: HEAD
path: helmfile.d
plugin:
name: helmfile-cmp
env:
- name: CLUSTER_NAME
value: {{ .Values.clusterConfig.cluster }}
- name: HELMFILE_ENVIRONMENT
value: default
- name: HELMFILE_FILE_PATH
value: proteus.yaml.gotmpl
project: atlantis
syncPolicy:
syncOptions:
- CreateNamespace=true
- ApplyOutOfSyncOnly=true
{{- if .Values.proteus.autosync }}
automated:
prune: true
{{- end }}
{{- end }}
-55
View File
@@ -1,55 +0,0 @@
# TODO: the SA the temporal-worker-controller assigns to the pod (assumed `default`).
---
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
name: proteus-dev-queue
namespace: dev-queue
rules:
- apiGroups: ["batch"]
resources: ["jobs"]
verbs: ["create", "delete", "get", "list", "watch"]
- apiGroups: [""]
resources: ["pods", "pods/log"]
verbs: ["get", "list"]
---
apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
name: proteus-dev-queue
namespace: dev-queue
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: Role
name: proteus-dev-queue
subjects:
- kind: ServiceAccount
name: default
namespace: proteus
---
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
name: proteus-prod-queue
namespace: prod-queue
rules:
- apiGroups: ["batch"]
resources: ["jobs"]
verbs: ["create", "delete", "get", "list", "watch"]
- apiGroups: [""]
resources: ["pods", "pods/log"]
verbs: ["get", "list"]
---
apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
name: proteus-prod-queue
namespace: prod-queue
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: Role
name: proteus-prod-queue
subjects:
- kind: ServiceAccount
name: default
namespace: proteus
@@ -1,115 +0,0 @@
# TEMPORAL_NAMESPACE : {env}-atlantis
# ARCHIVE_PVC : the queue's archive PVC (prod+beta -> prod-queue, staging -> dev-queue)
# Status/inbox/quota now flow via Temporal activities to the Atlantis notify worker; no RabbitMQ.
# ---
# apiVersion: temporal.io/v1alpha1
# kind: WorkerDeployment
# metadata:
# name: proteus-prod
# namespace: proteus
# spec:
# replicas: 1
# workerOptions:
# temporalNamespace: prod-atlantis
# connectionRef:
# name: temporal
# rollout:
# strategy: AllAtOnce
# sunset: {}
# template:
# spec:
# securityContext:
# runAsUser: 0
# runAsGroup: 0
# containers:
# - name: proteus
# image: git.oceanbox.io/oceanbox/poseidon/proteus:CHANGEME
# resources:
# requests:
# memory: 256Mi
# limits:
# memory: 1Gi
# env:
# - name: TEMPORAL_TASK_QUEUES
# value: plume,xtract
# - name: TEMPORAL_NAMESPACE
# value: prod-atlantis
# - name: APP_ENV
# value: prod
# - name: ARCHIVE_PVC
# value: prod-queue-ceph-archives
# ---
# apiVersion: temporal.io/v1alpha1
# kind: WorkerDeployment
# metadata:
# name: proteus-beta
# namespace: proteus
# spec:
# replicas: 1
# workerOptions:
# temporalNamespace: beta-atlantis
# connectionRef:
# name: temporal
# rollout:
# strategy: AllAtOnce
# sunset: {}
# template:
# spec:
# securityContext:
# runAsUser: 0
# runAsGroup: 0
# containers:
# - name: proteus
# image: git.oceanbox.io/oceanbox/poseidon/proteus:CHANGEME
# resources:
# requests:
# memory: 256Mi
# limits:
# memory: 1Gi
# env:
# - name: TEMPORAL_TASK_QUEUES
# value: plume,xtract
# - name: TEMPORAL_NAMESPACE
# value: beta-atlantis
# - name: APP_ENV
# value: beta
# # beta schedules into prod-queue (same as prod), so the same archive PVC.
# - name: ARCHIVE_PVC
# value: prod-queue-ceph-archives
# ---
apiVersion: temporal.io/v1alpha1
kind: WorkerDeployment
metadata:
name: proteus-staging
namespace: proteus
spec:
replicas: 1
workerOptions:
temporalNamespace: staging-atlantis
connectionRef:
name: temporal
rollout:
strategy: AllAtOnce
sunset: {}
template:
spec:
securityContext:
runAsUser: 0
runAsGroup: 0
containers:
- name: proteus
image: git.oceanbox.io/oceanbox/poseidon/proteus:v2.17.0
resources:
requests:
memory: 256Mi
limits:
memory: 1Gi
env:
- name: TEMPORAL_TASK_QUEUES
value: plume,xtract
- name: TEMPORAL_NAMESPACE
value: staging-atlantis
- name: APP_ENV
value: staging
- name: ARCHIVE_PVC
value: dev-queue-ceph-archives
@@ -47,7 +47,7 @@
"storeId": "01JKTZXMP7ANN4GG2P5W8Y56M6",
"modelId": "01JKTZYMCZZBVSBG66W27XMW0A"
},
"sentryUrl": "https://0fcc8a4e175a703b1d54358cbfd99816@o4509530141622272.ingest.de.sentry.io/4509547350065232",
"sentryUrl": "https://5e6e3584098dc006de18038cf85d2cbe@o4509530141622272.ingest.de.sentry.io/4509547350065232",
"redis": "localhost:6379,user=default,password=secret",
"allowedOrigins": [
"http://localhost:8085",
@@ -47,7 +47,7 @@
"storeId": "01JKTZXMP7ANN4GG2P5W8Y56M6",
"modelId": "01JKTZYMCZZBVSBG66W27XMW0A"
},
"sentryUrl": "https://0fcc8a4e175a703b1d54358cbfd99816@o4509530141622272.ingest.de.sentry.io/4509547350065232",
"sentryUrl": "https://5e6e3584098dc006de18038cf85d2cbe@o4509530141622272.ingest.de.sentry.io/4509547350065232",
"redis": "localhost:6379,user=default,password=secret",
"allowedOrigins": [
"http://localhost:8085",
@@ -42,12 +42,12 @@
},
"plainAuthUsers": [],
"fga": {
"apiUrl": "https://openfga.dev.oceanbox.io",
"apiUrl": "https://openfga.srv.oceanbox.io",
"apiKey": "",
"storeId": "01JKTZXMP7ANN4GG2P5W8Y56M6",
"modelId": "01JKTZYMCZZBVSBG66W27XMW0A"
},
"sentryUrl": "https://0fcc8a4e175a703b1d54358cbfd99816@o4509530141622272.ingest.de.sentry.io/4509547350065232",
"sentryUrl": "https://5e6e3584098dc006de18038cf85d2cbe@o4509530141622272.ingest.de.sentry.io/4509547350065232",
"redis": "staging-sorcerer-redis:6379,user=default,password=secret",
"allowedOrigins": [
"http://localhost:8085",
@@ -2,7 +2,7 @@ replicaCount: 1
image:
repository: git.oceanbox.io/oceanbox/poseidon/sorcerer
tag: v2.15.1
tag: v2.10.0
podAnnotations:
dapr.io/enabled: "true"
@@ -19,7 +19,7 @@ podAnnotations:
env:
- name: APP_VERSION
value: "2.15.1-beta"
value: "2.10.0-beta"
- name: LOG_LEVEL
value: "1"
- name: REDIS_USER
+1 -1
View File
@@ -1,7 +1,7 @@
replicaCount: 1
image:
repository: git.oceanbox.io/oceanbox/poseidon/sorcerer
tag: 6442206c-debug
tag: 4704e4f1-debug
podAnnotations:
dapr.io/enabled: "true"
dapr.io/app-id: "staging-sorcerer"
+1 -1
View File
@@ -1,5 +1,5 @@
tempo:
enabled: false
enabled: true
autosync: false
s3:
endpoint: 10.255.241.30:30080
-6
View File
@@ -1,6 +0,0 @@
temporal:
enabled: true
autosync: false
ingress: true
grpcIngress: true
workerController: true
-4
View File
@@ -1,4 +0,0 @@
temporal:
enabled: false
autosync: false
ingress: false
-7
View File
@@ -1,7 +0,0 @@
temporal:
enabled: false
autosync: false
ingress: false
grpcIngress: false
workerController: false
cluster: {{ requiredEnv "ARGOCD_ENV_CLUSTER_NAME" }}
@@ -1,43 +0,0 @@
apiVersion: v1
kind: ConfigMap
metadata:
name: temporal-dashboard
namespace: prometheus
labels:
grafana_dashboard: "1"
data:
temporal.json: |-
{
"title": "Temporal Server",
"editable": true,
"schemaVersion": 39,
"timezone": "",
"time": { "from": "now-6h", "to": "now" },
"templating": { "list": [] },
"panels": [
{
"type": "timeseries",
"title": "Frontend request rate",
"gridPos": { "h": 8, "w": 12, "x": 0, "y": 0 },
"datasource": { "type": "prometheus", "uid": "prometheus" },
"targets": [
{
"expr": "sum(rate(service_requests{service_name=\"frontend\"}[5m])) by (operation)",
"legendFormat": "{{`{{operation}}`}}"
}
]
},
{
"type": "timeseries",
"title": "Persistence latency p99",
"gridPos": { "h": 8, "w": 12, "x": 12, "y": 0 },
"datasource": { "type": "prometheus", "uid": "prometheus" },
"targets": [
{
"expr": "histogram_quantile(0.99, sum(rate(persistence_latency_bucket[5m])) by (le, operation))",
"legendFormat": "{{`{{operation}}`}}"
}
]
}
]
}
@@ -1,33 +0,0 @@
{{- if .Values.temporal.grpcIngress }}
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: temporal-frontend-grpc
namespace: temporal
annotations:
cert-manager.io/cluster-issuer: {{ .Values.clusterConfig.ingress_clusterissuer }}
nginx.ingress.kubernetes.io/backend-protocol: GRPC
nginx.ingress.kubernetes.io/ssl-redirect: "true"
nginx.ingress.kubernetes.io/proxy-read-timeout: "3600"
oceanbox.io/expose: internal
labels:
app.kubernetes.io/name: temporal
app.kubernetes.io/component: frontend
spec:
ingressClassName: nginx
rules:
- host: temporal-grpc.{{ .Values.clusterConfig.domain }}
http:
paths:
- backend:
service:
name: temporal-frontend
port:
number: 7233
path: /
pathType: Prefix
tls:
- hosts:
- temporal-grpc.{{ .Values.clusterConfig.domain }}
secretName: temporal-grpc.{{ .Values.clusterConfig.domain }}-tls
{{- end }}

Some files were not shown because too many files have changed in this diff Show More