Compare commits
1 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| e4d8a55871 |
@@ -1,16 +1,13 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
# the shebang is ignored, but nice for editors
|
# the shebang is ignored, but nice for editors
|
||||||
watch_file npins/sources.json
|
watch_file nix/sources.json
|
||||||
|
watch_file nix/checks.nix
|
||||||
|
|
||||||
# Load .env file if it exists
|
# Load .env file if it exists
|
||||||
dotenv_if_exists
|
dotenv_if_exists
|
||||||
|
|
||||||
|
# Set npins dir
|
||||||
|
export NPINS_DIRECTORY="nix"
|
||||||
|
|
||||||
# Activate development shell
|
# Activate development shell
|
||||||
if type lorri &>/dev/null; then
|
use nix
|
||||||
echo "direnv: using lorri from PATH ($(type -p lorri))"
|
|
||||||
eval "$(lorri direnv)"
|
|
||||||
else
|
|
||||||
# fall back to using direnv's builtin nix support
|
|
||||||
# to prevent bootstrapping problems.
|
|
||||||
use nix
|
|
||||||
fi
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
FROM ghcr.io/helmfile/helmfile:v1.3.1
|
FROM ghcr.io/helmfile/helmfile:v1.1.9
|
||||||
|
|
||||||
RUN mkdir -p /home/argocd/cmp-server/config/
|
RUN mkdir -p /home/argocd/cmp-server/config/
|
||||||
COPY plugin.yaml /home/argocd/cmp-server/config/
|
COPY plugin.yaml /home/argocd/cmp-server/config/
|
||||||
|
|||||||
@@ -4,10 +4,10 @@ description: Atlantis map and simulation service
|
|||||||
type: application
|
type: application
|
||||||
# This is the chart version. This version number should be incremented each time you make changes
|
# 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.
|
# to the chart and its templates, including the app version.
|
||||||
version: v1.46.5
|
version: v1.42.2
|
||||||
# This is the version number of the application being deployed. This version number should be
|
# This is the version number of the application being deployed. This version number should be
|
||||||
# incremented each time you make changes to the application.
|
# incremented each time you make changes to the application.
|
||||||
appVersion: v1.46.5
|
appVersion: v1.42.2
|
||||||
dependencies:
|
dependencies:
|
||||||
- name: diagrid-dashboard
|
- name: diagrid-dashboard
|
||||||
version: "0.1.0"
|
version: "0.1.0"
|
||||||
|
|||||||
@@ -3,8 +3,8 @@
|
|||||||
# Declare variables to be passed into your templates.
|
# Declare variables to be passed into your templates.
|
||||||
replicaCount: 1
|
replicaCount: 1
|
||||||
image:
|
image:
|
||||||
repository: git.oceanbox.io/oceanbox/poseidon/atlantis
|
repository: registry.gitlab.com/oceanbox/poseidon/atlantis
|
||||||
tag: v1.46.5
|
tag: v1.42.2
|
||||||
pullPolicy: IfNotPresent
|
pullPolicy: IfNotPresent
|
||||||
init:
|
init:
|
||||||
enabled: false
|
enabled: false
|
||||||
|
|||||||
@@ -13,9 +13,9 @@ type: application
|
|||||||
# This is the chart version. This version number should be incremented each time you make changes
|
# 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.
|
# to the chart and its templates, including the app version.
|
||||||
# Versions are expected to follow Semantic Versioning (https://semver.org/)
|
# Versions are expected to follow Semantic Versioning (https://semver.org/)
|
||||||
version: v1.46.5
|
version: v1.42.2
|
||||||
# This is the version number of the application being deployed. This version number should be
|
# 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
|
# 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.
|
# follow Semantic Versioning. They should reflect the version the application is using.
|
||||||
# It is recommended to use it with quotes.
|
# It is recommended to use it with quotes.
|
||||||
appVersion: "v1.46.5"
|
appVersion: "v1.42.2"
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ image:
|
|||||||
# This sets the pull policy for images.
|
# This sets the pull policy for images.
|
||||||
pullPolicy: IfNotPresent
|
pullPolicy: IfNotPresent
|
||||||
# Overrides the image tag whose default is the chart appVersion.
|
# Overrides the image tag whose default is the chart appVersion.
|
||||||
tag: v1.46.5
|
tag: v1.42.2
|
||||||
# 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/
|
# 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:
|
imagePullSecrets:
|
||||||
- name: gitlab-pull-secret
|
- name: gitlab-pull-secret
|
||||||
|
|||||||
@@ -8,7 +8,6 @@ data:
|
|||||||
kind: Component
|
kind: Component
|
||||||
metadata:
|
metadata:
|
||||||
name: statestore
|
name: statestore
|
||||||
namespace: {{ .Values.statestore.namespace | default "default" }}
|
|
||||||
scopes:
|
scopes:
|
||||||
- {{ .Values.statestore.scope }}
|
- {{ .Values.statestore.scope }}
|
||||||
spec:
|
spec:
|
||||||
@@ -18,10 +17,10 @@ data:
|
|||||||
- name: redisUsername
|
- name: redisUsername
|
||||||
value: default
|
value: default
|
||||||
- name: redisPassword
|
- name: redisPassword
|
||||||
value: {{ .Values.statestore.password | default "secret" }}
|
value: secret
|
||||||
- name: actorStateStore
|
- name: actorStateStore
|
||||||
value: "true"
|
value: "true"
|
||||||
- name: redisDB
|
- name: redisDB
|
||||||
value: "{{ .Values.statestore.redisDB | default "0" }}"
|
value: "1"
|
||||||
type: state.redis
|
type: state.redis
|
||||||
version: v1
|
version: v1
|
||||||
|
|||||||
@@ -5,9 +5,6 @@
|
|||||||
statestore:
|
statestore:
|
||||||
scope: my-scope
|
scope: my-scope
|
||||||
redis: my-redis
|
redis: my-redis
|
||||||
namespace: default
|
|
||||||
password: secret
|
|
||||||
redisDB: "0"
|
|
||||||
|
|
||||||
# This will set the replicaset count more information can be found here: https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/
|
# This will set the replicaset count more information can be found here: https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/
|
||||||
replicaCount: 1
|
replicaCount: 1
|
||||||
|
|||||||
+2
-2
@@ -42,11 +42,11 @@ spec:
|
|||||||
value: "3"
|
value: "3"
|
||||||
livenessProbe:
|
livenessProbe:
|
||||||
httpGet:
|
httpGet:
|
||||||
path: /healthz
|
path: /
|
||||||
port: http
|
port: http
|
||||||
readinessProbe:
|
readinessProbe:
|
||||||
httpGet:
|
httpGet:
|
||||||
path: /healthz
|
path: /
|
||||||
port: http
|
port: http
|
||||||
resources:
|
resources:
|
||||||
{{- toYaml .Values.resources | nindent 12 }}
|
{{- toYaml .Values.resources | nindent 12 }}
|
||||||
|
|||||||
Vendored
-46
@@ -1,46 +0,0 @@
|
|||||||
{{- if .Values.httpRoute.enabled -}}
|
|
||||||
{{- $fullName := include "docs.fullname" . -}}
|
|
||||||
{{- $svcPort := .Values.service.port -}}
|
|
||||||
apiVersion: gateway.networking.k8s.io/v1
|
|
||||||
kind: HTTPRoute
|
|
||||||
metadata:
|
|
||||||
name: {{ $fullName }}
|
|
||||||
labels:
|
|
||||||
{{- include "docs.labels" . | nindent 4 }}
|
|
||||||
spec:
|
|
||||||
parentRefs:
|
|
||||||
{{- toYaml .Values.httpRoute.parentRefs | nindent 4 }}
|
|
||||||
{{- with .Values.httpRoute.hostnames }}
|
|
||||||
hostnames:
|
|
||||||
{{- toYaml . | nindent 4 }}
|
|
||||||
{{- end }}
|
|
||||||
rules:
|
|
||||||
{{- range .Values.httpRoute.rules }}
|
|
||||||
- {{- with .matches }}
|
|
||||||
matches:
|
|
||||||
{{- toYaml . | nindent 8 }}
|
|
||||||
{{- end }}
|
|
||||||
backendRefs:
|
|
||||||
- name: {{ $fullName }}
|
|
||||||
port: {{ $svcPort }}
|
|
||||||
{{- end }}
|
|
||||||
---
|
|
||||||
apiVersion: cilium.io/v2
|
|
||||||
kind: CiliumNetworkPolicy
|
|
||||||
metadata:
|
|
||||||
name: allow-gateway-to-{{ $fullName }}
|
|
||||||
labels:
|
|
||||||
{{- include "docs.labels" . | nindent 4 }}
|
|
||||||
spec:
|
|
||||||
endpointSelector:
|
|
||||||
matchLabels:
|
|
||||||
{{- include "docs.selectorLabels" . | nindent 6 }}
|
|
||||||
ingress:
|
|
||||||
- fromCIDRSet:
|
|
||||||
{{- range .Values.clusterConfig.ingress_whitelist }}
|
|
||||||
- cidr: {{ . }}
|
|
||||||
{{- end }}
|
|
||||||
- fromEndpoints:
|
|
||||||
- matchLabels:
|
|
||||||
"k8s:io.kubernetes.pod.namespace": {{ .Release.Namespace }}
|
|
||||||
{{- end }}
|
|
||||||
@@ -21,8 +21,8 @@ env:
|
|||||||
valueFrom:
|
valueFrom:
|
||||||
fieldRef:
|
fieldRef:
|
||||||
fieldPath: metadata.namespace
|
fieldPath: metadata.namespace
|
||||||
# imagePullSecrets:
|
imagePullSecrets:
|
||||||
# - name: gitea-pull-secret
|
- name: gitea-pull-secret
|
||||||
nameOverride: ""
|
nameOverride: ""
|
||||||
fullnameOverride: ""
|
fullnameOverride: ""
|
||||||
serviceAccount:
|
serviceAccount:
|
||||||
@@ -46,13 +46,8 @@ service:
|
|||||||
type: ClusterIP
|
type: ClusterIP
|
||||||
port: 8080
|
port: 8080
|
||||||
ingress:
|
ingress:
|
||||||
enabled: false
|
enabled: true
|
||||||
className: nginx
|
className: nginx
|
||||||
httpRoute:
|
|
||||||
enabled: false
|
|
||||||
parentRefs: []
|
|
||||||
hostnames: []
|
|
||||||
rules: []
|
|
||||||
persistence:
|
persistence:
|
||||||
enabled: false
|
enabled: false
|
||||||
size: 1G
|
size: 1G
|
||||||
|
|||||||
@@ -1,46 +0,0 @@
|
|||||||
{{- if .Values.httpRoute.enabled -}}
|
|
||||||
{{- $fullName := include "makai.fullname" . -}}
|
|
||||||
{{- $svcPort := .Values.service.port -}}
|
|
||||||
apiVersion: gateway.networking.k8s.io/v1
|
|
||||||
kind: HTTPRoute
|
|
||||||
metadata:
|
|
||||||
name: {{ $fullName }}
|
|
||||||
labels:
|
|
||||||
{{- include "makai.labels" . | nindent 4 }}
|
|
||||||
spec:
|
|
||||||
parentRefs:
|
|
||||||
{{- toYaml .Values.httpRoute.parentRefs | nindent 4 }}
|
|
||||||
{{- with .Values.httpRoute.hostnames }}
|
|
||||||
hostnames:
|
|
||||||
{{- toYaml . | nindent 4 }}
|
|
||||||
{{- end }}
|
|
||||||
rules:
|
|
||||||
{{- range .Values.httpRoute.rules }}
|
|
||||||
- {{- with .matches }}
|
|
||||||
matches:
|
|
||||||
{{- toYaml . | nindent 8 }}
|
|
||||||
{{- end }}
|
|
||||||
backendRefs:
|
|
||||||
- name: {{ $fullName }}
|
|
||||||
port: {{ $svcPort }}
|
|
||||||
{{- end }}
|
|
||||||
---
|
|
||||||
apiVersion: cilium.io/v2
|
|
||||||
kind: CiliumNetworkPolicy
|
|
||||||
metadata:
|
|
||||||
name: allow-gateway-to-{{ $fullName }}
|
|
||||||
labels:
|
|
||||||
{{- include "makai.labels" . | nindent 4 }}
|
|
||||||
spec:
|
|
||||||
endpointSelector:
|
|
||||||
matchLabels:
|
|
||||||
{{- include "makai.selectorLabels" . | nindent 6 }}
|
|
||||||
ingress:
|
|
||||||
- fromCIDRSet:
|
|
||||||
{{- range .Values.clusterConfig.ingress_whitelist }}
|
|
||||||
- cidr: {{ . }}
|
|
||||||
{{- end }}
|
|
||||||
- fromEndpoints:
|
|
||||||
- matchLabels:
|
|
||||||
"k8s:io.kubernetes.pod.namespace": {{ .Release.Namespace }}
|
|
||||||
{{- end }}
|
|
||||||
@@ -46,13 +46,8 @@ service:
|
|||||||
type: ClusterIP
|
type: ClusterIP
|
||||||
port: 8080
|
port: 8080
|
||||||
ingress:
|
ingress:
|
||||||
enabled: false
|
enabled: true
|
||||||
className: nginx
|
className: nginx
|
||||||
httpRoute:
|
|
||||||
enabled: false
|
|
||||||
parentRefs: []
|
|
||||||
hostnames: []
|
|
||||||
rules: []
|
|
||||||
persistence:
|
persistence:
|
||||||
enabled: false
|
enabled: false
|
||||||
size: 1G
|
size: 1G
|
||||||
|
|||||||
@@ -8,8 +8,3 @@ version: v1.6.13
|
|||||||
# This is the version number of the application being deployed. This version number should be
|
# This is the version number of the application being deployed. This version number should be
|
||||||
# incremented each time you make changes to the application.
|
# incremented each time you make changes to the application.
|
||||||
appVersion: v1.6.13
|
appVersion: v1.6.13
|
||||||
dependencies:
|
|
||||||
- name: diagrid-dashboard
|
|
||||||
version: "0.1.0"
|
|
||||||
repository: "file://../diagrid-dashboard"
|
|
||||||
condition: diagrid-dashboard.enabled
|
|
||||||
|
|||||||
@@ -90,6 +90,3 @@ serviceMonitor:
|
|||||||
nodeSelector: {}
|
nodeSelector: {}
|
||||||
tolerations: []
|
tolerations: []
|
||||||
affinity: {}
|
affinity: {}
|
||||||
|
|
||||||
diagrid-dashboard:
|
|
||||||
enabled: false
|
|
||||||
|
|||||||
@@ -4,10 +4,10 @@ description: A Helm chart for Kubernetes
|
|||||||
type: application
|
type: application
|
||||||
# This is the chart version. This version number should be incremented each time you make changes
|
# 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.
|
# to the chart and its templates, including the app version.
|
||||||
version: v1.46.5
|
version: v1.42.2
|
||||||
# This is the version number of the application being deployed. This version number should be
|
# This is the version number of the application being deployed. This version number should be
|
||||||
# incremented each time you make changes to the application.
|
# incremented each time you make changes to the application.
|
||||||
appVersion: v1.46.5
|
appVersion: v1.42.2
|
||||||
dependencies:
|
dependencies:
|
||||||
- name: diagrid-dashboard
|
- name: diagrid-dashboard
|
||||||
version: "0.1.0"
|
version: "0.1.0"
|
||||||
|
|||||||
@@ -4,8 +4,8 @@
|
|||||||
|
|
||||||
replicaCount: 1
|
replicaCount: 1
|
||||||
image:
|
image:
|
||||||
repository: git.oceanbox.io/oceanbox/poseidon/sorcerer
|
repository: registry.gitlab.com/oceanbox/poseidon/sorcerer
|
||||||
tag: v1.46.5
|
tag: v1.42.2
|
||||||
pullPolicy: IfNotPresent
|
pullPolicy: IfNotPresent
|
||||||
init:
|
init:
|
||||||
enabled: false
|
enabled: false
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ releases:
|
|||||||
- name: argocd
|
- name: argocd
|
||||||
namespace: argocd
|
namespace: argocd
|
||||||
chart: argo/argo-cd
|
chart: argo/argo-cd
|
||||||
version: 9.4.10
|
version: 7.9.1
|
||||||
condition: argo.enabled
|
condition: argo.enabled
|
||||||
values:
|
values:
|
||||||
- ../values/argo/values/argocd.yaml.gotmpl
|
- ../values/argo/values/argocd.yaml.gotmpl
|
||||||
@@ -35,7 +35,7 @@ releases:
|
|||||||
- name: argo-rollouts
|
- name: argo-rollouts
|
||||||
namespace: argocd
|
namespace: argocd
|
||||||
chart: argo/argo-rollouts
|
chart: argo/argo-rollouts
|
||||||
version: 2.40.6
|
version: 2.40.5
|
||||||
condition: argo.rollouts.enabled
|
condition: argo.rollouts.enabled
|
||||||
values:
|
values:
|
||||||
- ../values/argo/values/rollouts.yaml.gotmpl
|
- ../values/argo/values/rollouts.yaml.gotmpl
|
||||||
@@ -43,7 +43,7 @@ releases:
|
|||||||
- name: argo-workflows
|
- name: argo-workflows
|
||||||
namespace: argocd
|
namespace: argocd
|
||||||
chart: argo/argo-workflows
|
chart: argo/argo-workflows
|
||||||
version: 0.47.5
|
version: 0.45.27
|
||||||
condition: argo.workflows.enabled
|
condition: argo.workflows.enabled
|
||||||
missingFileHandler: Info
|
missingFileHandler: Info
|
||||||
- name: manifests
|
- name: manifests
|
||||||
@@ -66,3 +66,4 @@ releases:
|
|||||||
- '{{`{{ .Environment.Name }}`}}'
|
- '{{`{{ .Environment.Name }}`}}'
|
||||||
- ../values/argo/manifests
|
- ../values/argo/manifests
|
||||||
- _argo
|
- _argo
|
||||||
|
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ releases:
|
|||||||
- name: cert-manager
|
- name: cert-manager
|
||||||
namespace: cert-manager
|
namespace: cert-manager
|
||||||
chart: cert-manager/cert-manager
|
chart: cert-manager/cert-manager
|
||||||
version: v1.19.4
|
version: v1.19.3
|
||||||
condition: cert_manager.enabled
|
condition: cert_manager.enabled
|
||||||
values:
|
values:
|
||||||
- ../values/cert-manager/values/cert-manager.yaml.gotmpl
|
- ../values/cert-manager/values/cert-manager.yaml.gotmpl
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ releases:
|
|||||||
- name: cilium
|
- name: cilium
|
||||||
namespace: kube-system
|
namespace: kube-system
|
||||||
chart: cilium/cilium
|
chart: cilium/cilium
|
||||||
version: {{ if eq (requiredEnv "ARGOCD_ENV_CLUSTER_NAME") "hel1" }}1.19.1{{ else if eq (requiredEnv "ARGOCD_ENV_CLUSTER_NAME") "ekman" }}1.19.1{{ else }}1.16.19{{ end }}
|
version: {{ if eq (requiredEnv "ARGOCD_ENV_CLUSTER_NAME") "hel1" }}1.18.6{{ else }}1.16.19{{ end }}
|
||||||
condition: cilium.enabled
|
condition: cilium.enabled
|
||||||
values:
|
values:
|
||||||
- ../values/cilium/values/cilium.yaml.gotmpl
|
- ../values/cilium/values/cilium.yaml.gotmpl
|
||||||
|
|||||||
@@ -11,7 +11,6 @@ releases:
|
|||||||
condition: docs.enabled
|
condition: docs.enabled
|
||||||
values:
|
values:
|
||||||
- ../values/docs/values/values.yaml
|
- ../values/docs/values/values.yaml
|
||||||
- ../values/docs/values/values.yaml.gotmpl
|
|
||||||
- ../values/docs/values/values-{{ .Environment.Name }}.yaml
|
- ../values/docs/values/values-{{ .Environment.Name }}.yaml
|
||||||
postRenderer: ../bin/kustomizer
|
postRenderer: ../bin/kustomizer
|
||||||
postRendererArgs:
|
postRendererArgs:
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ releases:
|
|||||||
- name: gatus
|
- name: gatus
|
||||||
namespace: uptime
|
namespace: uptime
|
||||||
chart: gatus/gatus
|
chart: gatus/gatus
|
||||||
version: 1.5.0
|
version: 1.4.5
|
||||||
condition: gatus.enabled
|
condition: gatus.enabled
|
||||||
values:
|
values:
|
||||||
- ../values/gatus/values/values.yaml
|
- ../values/gatus/values/values.yaml
|
||||||
|
|||||||
@@ -17,7 +17,6 @@ releases:
|
|||||||
condition: gitea.enabled
|
condition: gitea.enabled
|
||||||
values:
|
values:
|
||||||
- ../values/gitea/values/values.yaml
|
- ../values/gitea/values/values.yaml
|
||||||
- ../values/gitea/values/values.yaml.gotmpl
|
|
||||||
- ../values/gitea/values/values-{{ .Environment.Name }}.yaml
|
- ../values/gitea/values/values-{{ .Environment.Name }}.yaml
|
||||||
postRenderer: ../bin/kustomizer
|
postRenderer: ../bin/kustomizer
|
||||||
postRendererArgs:
|
postRendererArgs:
|
||||||
|
|||||||
@@ -1,41 +0,0 @@
|
|||||||
bases:
|
|
||||||
- ../envs/environments.yaml.gotmpl
|
|
||||||
|
|
||||||
repositories:
|
|
||||||
- name: jobset
|
|
||||||
oci: true
|
|
||||||
url: registry.k8s.io/jobset/charts
|
|
||||||
|
|
||||||
releases:
|
|
||||||
- name: jobset
|
|
||||||
namespace: jobset-system
|
|
||||||
chart: jobset/jobset
|
|
||||||
version: 0.11.1
|
|
||||||
condition: jobset.enabled
|
|
||||||
values:
|
|
||||||
- ../values/jobset/values/jobset.yaml.gotmpl
|
|
||||||
- ../values/jobset/values/jobset-{{ .Environment.Name }}.yaml.gotmpl
|
|
||||||
postRenderer: ../bin/kustomizer
|
|
||||||
postRendererArgs:
|
|
||||||
- ../values/jobset/kustomize/{{ .Environment.Name }}
|
|
||||||
missingFileHandler: Info
|
|
||||||
- name: manifests
|
|
||||||
namespace: jobset-system
|
|
||||||
chart: manifests
|
|
||||||
condition: jobset.enabled
|
|
||||||
missingFileHandler: Info
|
|
||||||
values:
|
|
||||||
- ../values/env.yaml
|
|
||||||
- ../values/env-{{ requiredEnv "ARGOCD_ENV_CLUSTER_NAME" }}.yaml
|
|
||||||
- ../values/jobset/env.yaml.gotmpl
|
|
||||||
- ../values/jobset/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/jobset/manifests
|
|
||||||
- manifests
|
|
||||||
@@ -12,7 +12,7 @@ releases:
|
|||||||
- name: {{ .Environment.Name }}-keycloak
|
- name: {{ .Environment.Name }}-keycloak
|
||||||
namespace: keycloak
|
namespace: keycloak
|
||||||
chart: bitnami/keycloak
|
chart: bitnami/keycloak
|
||||||
version: 24.9.0
|
version: 24.0.2
|
||||||
condition: keycloak.enabled
|
condition: keycloak.enabled
|
||||||
values:
|
values:
|
||||||
- ../values/keycloak/values/values.yaml
|
- ../values/keycloak/values/values.yaml
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ releases:
|
|||||||
- name: kyverno
|
- name: kyverno
|
||||||
namespace: kyverno
|
namespace: kyverno
|
||||||
chart: kyverno/kyverno
|
chart: kyverno/kyverno
|
||||||
version: 3.7.1
|
version: 3.6.1
|
||||||
condition: kyverno.enabled
|
condition: kyverno.enabled
|
||||||
values:
|
values:
|
||||||
- ../values/kyverno/values/kyverno.yaml.gotmpl
|
- ../values/kyverno/values/kyverno.yaml.gotmpl
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ releases:
|
|||||||
- name: loki
|
- name: loki
|
||||||
namespace: loki
|
namespace: loki
|
||||||
chart: loki/loki
|
chart: loki/loki
|
||||||
version: 6.53.0
|
version: 6.42.0
|
||||||
condition: loki.enabled
|
condition: loki.enabled
|
||||||
values:
|
values:
|
||||||
- ../values/loki/values/loki.yaml.gotmpl
|
- ../values/loki/values/loki.yaml.gotmpl
|
||||||
|
|||||||
@@ -11,7 +11,6 @@ releases:
|
|||||||
condition: makai.enabled
|
condition: makai.enabled
|
||||||
values:
|
values:
|
||||||
- ../values/makai/values/values.yaml
|
- ../values/makai/values/values.yaml
|
||||||
- ../values/makai/values/values.yaml.gotmpl
|
|
||||||
- ../values/makai/values/values-{{ .Environment.Name }}.yaml
|
- ../values/makai/values/values-{{ .Environment.Name }}.yaml
|
||||||
postRenderer: ../bin/kustomizer
|
postRenderer: ../bin/kustomizer
|
||||||
postRendererArgs:
|
postRendererArgs:
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ releases:
|
|||||||
namespace: {{ .Environment.Name }}-openfga
|
namespace: {{ .Environment.Name }}-openfga
|
||||||
{{- end }}
|
{{- end }}
|
||||||
chart: openfga/openfga
|
chart: openfga/openfga
|
||||||
version: 0.2.55
|
version: 0.2.54
|
||||||
condition: openfga.enabled
|
condition: openfga.enabled
|
||||||
values:
|
values:
|
||||||
- ../values/openfga/values/values.yaml
|
- ../values/openfga/values/values.yaml
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ releases:
|
|||||||
- name: opentelemetry-collector
|
- name: opentelemetry-collector
|
||||||
namespace: otel
|
namespace: otel
|
||||||
chart: open-telemetry/opentelemetry-collector
|
chart: open-telemetry/opentelemetry-collector
|
||||||
version: 0.146.1
|
version: 0.145.0
|
||||||
condition: otel.enabled
|
condition: otel.enabled
|
||||||
values:
|
values:
|
||||||
- ../values/opentelemetry-collector/values/values.yaml
|
- ../values/opentelemetry-collector/values/values.yaml
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ releases:
|
|||||||
- name: prometheus
|
- name: prometheus
|
||||||
namespace: prometheus
|
namespace: prometheus
|
||||||
chart: prometheus/kube-prometheus-stack
|
chart: prometheus/kube-prometheus-stack
|
||||||
version: 82.10.1
|
version: 72.7.0
|
||||||
condition: prometheus.enabled
|
condition: prometheus.enabled
|
||||||
values:
|
values:
|
||||||
- ../values/prometheus/values/prometheus.yaml.gotmpl
|
- ../values/prometheus/values/prometheus.yaml.gotmpl
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ releases:
|
|||||||
- name: slurm-operator
|
- name: slurm-operator
|
||||||
namespace: slinky
|
namespace: slinky
|
||||||
chart: slurm-operator/slurm-operator
|
chart: slurm-operator/slurm-operator
|
||||||
version: 1.0.2
|
version: 0.4.1
|
||||||
condition: slurm_operator.enabled
|
condition: slurm_operator.enabled
|
||||||
values:
|
values:
|
||||||
- ../values/slurm-operator/values/slurm-operator.yaml.gotmpl
|
- ../values/slurm-operator/values/slurm-operator.yaml.gotmpl
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ releases:
|
|||||||
- name: slurm
|
- name: slurm
|
||||||
namespace: slurm
|
namespace: slurm
|
||||||
chart: slurm/slurm
|
chart: slurm/slurm
|
||||||
version: 1.0.2
|
version: 0.4.1
|
||||||
condition: slurm.enabled
|
condition: slurm.enabled
|
||||||
values:
|
values:
|
||||||
- ../values/slurm/values/slurm.yaml.gotmpl
|
- ../values/slurm/values/slurm.yaml.gotmpl
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ releases:
|
|||||||
- name: umami
|
- name: umami
|
||||||
namespace: analytics
|
namespace: analytics
|
||||||
chart: umami/umami
|
chart: umami/umami
|
||||||
version: 7.7.2
|
version: 6.0.1
|
||||||
condition: umami.enabled
|
condition: umami.enabled
|
||||||
values:
|
values:
|
||||||
- ../values/umami/values/values.yaml
|
- ../values/umami/values/values.yaml
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ releases:
|
|||||||
- name: velero
|
- name: velero
|
||||||
namespace: velero
|
namespace: velero
|
||||||
chart: velero/velero
|
chart: velero/velero
|
||||||
version: 11.4.0
|
version: 11.3.2
|
||||||
condition: velero.enabled
|
condition: velero.enabled
|
||||||
values:
|
values:
|
||||||
- ../values/velero/values/velero.yaml.gotmpl
|
- ../values/velero/values/velero.yaml.gotmpl
|
||||||
|
|||||||
@@ -18,19 +18,6 @@
|
|||||||
"name": "nixpkgs-unstable",
|
"name": "nixpkgs-unstable",
|
||||||
"url": "https://releases.nixos.org/nixpkgs/nixpkgs-26.05pre930822.ed142ab1b3a0/nixexprs.tar.xz",
|
"url": "https://releases.nixos.org/nixpkgs/nixpkgs-26.05pre930822.ed142ab1b3a0/nixexprs.tar.xz",
|
||||||
"hash": "sha256-XH6awru9NnBc/m+2YhRNT8r1PAKEiPGF3gs//F3ods0="
|
"hash": "sha256-XH6awru9NnBc/m+2YhRNT8r1PAKEiPGF3gs//F3ods0="
|
||||||
},
|
|
||||||
"treefmt-nix": {
|
|
||||||
"type": "Git",
|
|
||||||
"repository": {
|
|
||||||
"type": "GitHub",
|
|
||||||
"owner": "numtide",
|
|
||||||
"repo": "treefmt-nix"
|
|
||||||
},
|
|
||||||
"branch": "main",
|
|
||||||
"submodules": false,
|
|
||||||
"revision": "337a4fe074be1042a35086f15481d763b8ddc0e7",
|
|
||||||
"url": "https://github.com/numtide/treefmt-nix/archive/337a4fe074be1042a35086f15481d763b8ddc0e7.tar.gz",
|
|
||||||
"hash": "sha256-wQ6NJSuFqAEmIg2VMnLdCnUc0b7vslUohqqGGD+Fyxk="
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"version": 7
|
"version": 7
|
||||||
@@ -1,71 +0,0 @@
|
|||||||
{
|
|
||||||
sources ? import ../npins,
|
|
||||||
pkgs ? import sources.nixpkgs { },
|
|
||||||
treefmt ? import sources.treefmt-nix,
|
|
||||||
}:
|
|
||||||
let
|
|
||||||
globalExcludes = [
|
|
||||||
"npins/default.nix"
|
|
||||||
"attic"
|
|
||||||
"vcluster"
|
|
||||||
".*vendor"
|
|
||||||
".*chart/.*"
|
|
||||||
".*schema.json"
|
|
||||||
];
|
|
||||||
in
|
|
||||||
treefmt.evalModule pkgs {
|
|
||||||
projectRootFile = ".git/config";
|
|
||||||
|
|
||||||
settings = {
|
|
||||||
excludes = globalExcludes;
|
|
||||||
};
|
|
||||||
|
|
||||||
programs = {
|
|
||||||
|
|
||||||
# --- Nix formatting ---
|
|
||||||
nixfmt = {
|
|
||||||
enable = true;
|
|
||||||
package = pkgs.nixfmt-rfc-style;
|
|
||||||
};
|
|
||||||
statix.enable = true;
|
|
||||||
deadnix.enable = true;
|
|
||||||
|
|
||||||
# --- Shell ---
|
|
||||||
shellcheck = {
|
|
||||||
enable = true;
|
|
||||||
excludes = [
|
|
||||||
"vcluster/"
|
|
||||||
"attic/"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
shfmt.enable = true;
|
|
||||||
|
|
||||||
# --- YAML ---
|
|
||||||
yamllint = {
|
|
||||||
enable = true;
|
|
||||||
excludes = [
|
|
||||||
"attic/"
|
|
||||||
"charts/templates/"
|
|
||||||
"charts/"
|
|
||||||
"values/"
|
|
||||||
"vcluster/"
|
|
||||||
];
|
|
||||||
settings = {
|
|
||||||
extends = "default";
|
|
||||||
rules = {
|
|
||||||
document-start = "disable";
|
|
||||||
line-length = {
|
|
||||||
max = 300;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
# --- JSON ---
|
|
||||||
jsonfmt.enable = true;
|
|
||||||
|
|
||||||
# Optional: keep JSON sorted
|
|
||||||
# prettier.enable = true;
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,53 +1,68 @@
|
|||||||
let
|
let
|
||||||
sources = import ./npins;
|
sources = import ./nix;
|
||||||
system = builtins.currentSystem;
|
system = builtins.currentSystem;
|
||||||
pkgs = import sources.nixpkgs {
|
pkgs = import sources.nixpkgs {
|
||||||
inherit system;
|
inherit system;
|
||||||
config = { };
|
config = { };
|
||||||
overlays = [ ];
|
overlays = [ ];
|
||||||
};
|
};
|
||||||
treefmt = import ./nix/treefmt.nix { };
|
checks = import ./nix/checks.nix;
|
||||||
in
|
in
|
||||||
pkgs.mkShellNoCC {
|
pkgs.mkShellNoCC {
|
||||||
packages = [
|
name = "clstr";
|
||||||
# dev tools
|
|
||||||
pkgs.just
|
|
||||||
pkgs.npins
|
|
||||||
treefmt.config.build.wrapper
|
|
||||||
|
|
||||||
# helm
|
packages =
|
||||||
pkgs.helmfile
|
with pkgs;
|
||||||
pkgs.kubernetes-helm
|
[
|
||||||
|
# dev tools
|
||||||
|
just
|
||||||
|
npins
|
||||||
|
|
||||||
# kubectl tools
|
# helm
|
||||||
pkgs.kubectl-cnpg
|
helmfile
|
||||||
pkgs.kubectl-neat
|
kubernetes-helm
|
||||||
pkgs.kubectl-graph
|
|
||||||
pkgs.kubectl-klock
|
|
||||||
pkgs.kubectl-rook-ceph
|
|
||||||
|
|
||||||
# other tools activate when needed
|
# kubectl tools
|
||||||
# pkgs.step-cli
|
kubectl-cnpg
|
||||||
# pkgs.linkerd
|
kubectl-neat
|
||||||
# pkgs.cmctl
|
kubelogin
|
||||||
# pkgs.rclone
|
kubelogin-oidc
|
||||||
# pkgs.velero
|
kubectl-rook-ceph
|
||||||
# pkgs.renovate
|
kubectl-graph
|
||||||
# pkgs.graphviz
|
kubectl-klock
|
||||||
# pkgs.hubble
|
graphviz
|
||||||
# pkgs.dapr-cli
|
hubble
|
||||||
];
|
|
||||||
|
# other tools activate when needed
|
||||||
|
# step-cli
|
||||||
|
# linkerd
|
||||||
|
# cmctl
|
||||||
|
# rclone
|
||||||
|
# velero
|
||||||
|
renovate
|
||||||
|
|
||||||
|
# dapr
|
||||||
|
dapr-cli
|
||||||
|
]
|
||||||
|
++ checks.enabledPackages;
|
||||||
|
|
||||||
# Environment variables
|
# Environment variables
|
||||||
ARGOCD_ENV_CLUSTER_NAME = "ekman";
|
ARGOCD_ENV_CLUSTER_NAME = "oceanbox";
|
||||||
HELM_GIT_ACCESS_TOKEN = "glpat-xxx";
|
HELM_GIT_ACCESS_TOKEN = "glpat-xxx";
|
||||||
|
|
||||||
|
shellHook = builtins.concatStringsSep "\n" [
|
||||||
|
checks.shellHook
|
||||||
|
];
|
||||||
|
|
||||||
# Alternative shells
|
# Alternative shells
|
||||||
passthru = pkgs.lib.mapAttrs (name: value: pkgs.mkShellNoCC (value // { inherit name; })) {
|
passthru = pkgs.lib.mapAttrs (name: value: pkgs.mkShellNoCC (value // { inherit name; })) {
|
||||||
ci-shell = {
|
ci-shell = {
|
||||||
packages = [
|
packages = [
|
||||||
pkgs.npins
|
pkgs.npins
|
||||||
];
|
];
|
||||||
|
shellHook = ''
|
||||||
|
export NPINS_DIRECTORY="nix"
|
||||||
|
'';
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -24,7 +24,11 @@ argocd:
|
|||||||
cpu: 250m
|
cpu: 250m
|
||||||
repoServers:
|
repoServers:
|
||||||
- name: "helmfile-cmp"
|
- name: "helmfile-cmp"
|
||||||
image: "git.oceanbox.io/platform/manifests/helmfile-cmp:latest"
|
image: "registry.gitlab.com/oceanbox/manifests/helmfile-cmp:latest"
|
||||||
|
imagePullSecrets:
|
||||||
|
- gitlab-pull-secret
|
||||||
|
- name: "kustomize-helm-with-rewrite"
|
||||||
|
image: "registry.gitlab.com/oceanbox/manifests/kustomize-helm-with-rewrite:latest"
|
||||||
imagePullSecrets:
|
imagePullSecrets:
|
||||||
- gitlab-pull-secret
|
- gitlab-pull-secret
|
||||||
additional_rbac_settings:
|
additional_rbac_settings:
|
||||||
|
|||||||
@@ -28,7 +28,6 @@ spec:
|
|||||||
managedNamespaceMetadata:
|
managedNamespaceMetadata:
|
||||||
labels:
|
labels:
|
||||||
component: sys
|
component: sys
|
||||||
shared-gateway-access: "true"
|
|
||||||
syncOptions:
|
syncOptions:
|
||||||
- CreateNamespace=true
|
- CreateNamespace=true
|
||||||
- ApplyOutOfSyncOnly=true
|
- ApplyOutOfSyncOnly=true
|
||||||
|
|||||||
@@ -1,40 +0,0 @@
|
|||||||
{{- if .Values.clusterConfig.gatewayAPI.enabled }}
|
|
||||||
apiVersion: gateway.networking.k8s.io/v1
|
|
||||||
kind: HTTPRoute
|
|
||||||
metadata:
|
|
||||||
name: argocd-server
|
|
||||||
namespace: argocd
|
|
||||||
spec:
|
|
||||||
parentRefs:
|
|
||||||
- name: shared-gateway
|
|
||||||
namespace: kube-system
|
|
||||||
sectionName: https-internal
|
|
||||||
hostnames:
|
|
||||||
- argocd.{{ .Values.clusterConfig.domain }}
|
|
||||||
rules:
|
|
||||||
- matches:
|
|
||||||
- path:
|
|
||||||
type: PathPrefix
|
|
||||||
value: "/"
|
|
||||||
backendRefs:
|
|
||||||
- name: argocd-server
|
|
||||||
port: 80
|
|
||||||
---
|
|
||||||
apiVersion: cilium.io/v2
|
|
||||||
kind: CiliumNetworkPolicy
|
|
||||||
metadata:
|
|
||||||
name: allow-gateway-to-argocd
|
|
||||||
namespace: argocd
|
|
||||||
spec:
|
|
||||||
endpointSelector:
|
|
||||||
matchLabels:
|
|
||||||
app.kubernetes.io/name: argocd-server
|
|
||||||
ingress:
|
|
||||||
- fromCIDRSet:
|
|
||||||
{{- range .Values.clusterConfig.ingress_whitelist }}
|
|
||||||
- cidr: {{ . }}
|
|
||||||
{{- end }}
|
|
||||||
- fromEndpoints:
|
|
||||||
- matchLabels:
|
|
||||||
"k8s:io.kubernetes.pod.namespace": argocd
|
|
||||||
{{- end }}
|
|
||||||
@@ -92,8 +92,6 @@ spec:
|
|||||||
server: https://kubernetes.default.svc
|
server: https://kubernetes.default.svc
|
||||||
- namespace: postfix
|
- namespace: postfix
|
||||||
server: https://kubernetes.default.svc
|
server: https://kubernetes.default.svc
|
||||||
- namespace: jobset-system
|
|
||||||
server: https://kubernetes.default.svc
|
|
||||||
sourceRepos:
|
sourceRepos:
|
||||||
- https://argoproj.github.io/argo-helm
|
- https://argoproj.github.io/argo-helm
|
||||||
- https://kubernetes-sigs.github.io/metrics-server/
|
- https://kubernetes-sigs.github.io/metrics-server/
|
||||||
@@ -133,7 +131,6 @@ spec:
|
|||||||
- ghcr.io/spegel-org/helm-charts
|
- ghcr.io/spegel-org/helm-charts
|
||||||
- quay.io/cilium/charts
|
- quay.io/cilium/charts
|
||||||
- quay.io/jetstack/charts
|
- quay.io/jetstack/charts
|
||||||
- registry.k8s.io/jobset/charts/jobset
|
|
||||||
- ghcr.io/dragonflydb/dragonfly-operator/helm/dragonfly-operator
|
- ghcr.io/dragonflydb/dragonfly-operator/helm/dragonfly-operator
|
||||||
- docker.gitea.com
|
- docker.gitea.com
|
||||||
- https://operator.mariadb.com/mariadb-enterprise-operator
|
- https://operator.mariadb.com/mariadb-enterprise-operator
|
||||||
|
|||||||
@@ -4,21 +4,18 @@ global:
|
|||||||
## Ref: https://github.com/argoproj/argo-cd
|
## Ref: https://github.com/argoproj/argo-cd
|
||||||
##
|
##
|
||||||
configs:
|
configs:
|
||||||
|
{{- if .Values.argocd.anyNamespaces.enabled }}
|
||||||
params:
|
params:
|
||||||
{{- if .Values.clusterConfig.gatewayAPI.enabled }}
|
|
||||||
server.insecure: "true"
|
|
||||||
{{- end }}
|
|
||||||
{{- if .Values.argocd.anyNamespaces.enabled }}
|
|
||||||
applicationsetcontroller.namespaces: "{{ .Values.argocd.anyNamespaces.glob }}"
|
applicationsetcontroller.namespaces: "{{ .Values.argocd.anyNamespaces.glob }}"
|
||||||
# TODO(kai): anyapp will disable PR review apps. Look into anyapp settings to fix it
|
# TODO(kai): anyapp will disable PR review apps. Look into anyapp settings to fix it
|
||||||
applicationsetcontroller.enable.scm.providers: "false"
|
applicationsetcontroller.enable.scm.providers: "false"
|
||||||
application.namespaces: "{{ .Values.argocd.anyNamespaces.glob }}"
|
application.namespaces: "{{ .Values.argocd.anyNamespaces.glob }}"
|
||||||
{{- end }}
|
{{- end }}
|
||||||
cm:
|
cm:
|
||||||
application.resourceTrackingMethod: annotation+label
|
application.resourceTrackingMethod: annotation+label
|
||||||
application.instanceLabelKey: app.kubernetes.io/instance
|
application.instanceLabelKey: app.kubernetes.io/instance
|
||||||
create: true
|
create: true
|
||||||
# NOTE: callback URL for dex
|
# NOTE(kai): callback URL for dex
|
||||||
url: "https://argocd.{{ .Values.clusterConfig.domain }}"
|
url: "https://argocd.{{ .Values.clusterConfig.domain }}"
|
||||||
resource.compareoptions: |
|
resource.compareoptions: |
|
||||||
ignoreAggregatedRoles: true
|
ignoreAggregatedRoles: true
|
||||||
@@ -84,7 +81,6 @@ configs:
|
|||||||
p, role:org-admin, applications, *, */*, allow
|
p, role:org-admin, applications, *, */*, allow
|
||||||
p, role:org-admin, projects, *, *, allow
|
p, role:org-admin, projects, *, *, allow
|
||||||
p, role:org-admin, logs, get, *, allow
|
p, role:org-admin, logs, get, *, allow
|
||||||
p, role:org-admin, logs, get, */*, allow
|
|
||||||
p, role:org-admin, clusters, get, *, allow
|
p, role:org-admin, clusters, get, *, allow
|
||||||
p, role:org-admin, clusters, update, *, allow
|
p, role:org-admin, clusters, update, *, allow
|
||||||
p, role:org-admin, repositories, get, *, allow
|
p, role:org-admin, repositories, get, *, allow
|
||||||
@@ -171,7 +167,7 @@ repoServer:
|
|||||||
extraContainers:
|
extraContainers:
|
||||||
- command:
|
- command:
|
||||||
- /var/run/argocd/argocd-cmp-server
|
- /var/run/argocd/argocd-cmp-server
|
||||||
image: {{ .image }}
|
image: registry.gitlab.com/oceanbox/manifests/helmfile-cmp:latest
|
||||||
env:
|
env:
|
||||||
- name: HELM_GIT_ACCESS_TOKEN
|
- name: HELM_GIT_ACCESS_TOKEN
|
||||||
valueFrom:
|
valueFrom:
|
||||||
@@ -180,7 +176,7 @@ repoServer:
|
|||||||
name: oceanbox-gitops-repo
|
name: oceanbox-gitops-repo
|
||||||
optional: false
|
optional: false
|
||||||
imagePullPolicy: Always
|
imagePullPolicy: Always
|
||||||
name: {{ .name }}
|
name: helmfile-cmp
|
||||||
securityContext:
|
securityContext:
|
||||||
runAsNonRoot: true
|
runAsNonRoot: true
|
||||||
runAsUser: 999
|
runAsUser: 999
|
||||||
@@ -195,6 +191,23 @@ repoServer:
|
|||||||
name: cmp-tmp
|
name: cmp-tmp
|
||||||
- mountPath: /helm-working-dir
|
- mountPath: /helm-working-dir
|
||||||
name: helm-working-dir
|
name: helm-working-dir
|
||||||
|
- command:
|
||||||
|
- /var/run/argocd/argocd-cmp-server
|
||||||
|
image: {{ .image }}
|
||||||
|
imagePullPolicy: Always
|
||||||
|
name: {{ .name }}
|
||||||
|
securityContext:
|
||||||
|
runAsNonRoot: true
|
||||||
|
runAsUser: 999
|
||||||
|
terminationMessagePath: /dev/termination-log
|
||||||
|
terminationMessagePolicy: File
|
||||||
|
volumeMounts:
|
||||||
|
- mountPath: /var/run/argocd
|
||||||
|
name: var-files
|
||||||
|
- mountPath: /home/argocd/cmp-server/plugins
|
||||||
|
name: plugins
|
||||||
|
- mountPath: /tmp
|
||||||
|
name: cmp-tmp
|
||||||
volumes:
|
volumes:
|
||||||
- name: cmp-tmp
|
- name: cmp-tmp
|
||||||
emptyDir: {}
|
emptyDir: {}
|
||||||
@@ -241,9 +254,6 @@ server:
|
|||||||
serviceMonitor:
|
serviceMonitor:
|
||||||
enabled: true
|
enabled: true
|
||||||
ingress:
|
ingress:
|
||||||
{{- if .Values.clusterConfig.gatewayAPI.enabled }}
|
|
||||||
enabled: false
|
|
||||||
{{- else }}
|
|
||||||
enabled: true
|
enabled: true
|
||||||
ingressClassName: nginx
|
ingressClassName: nginx
|
||||||
annotations:
|
annotations:
|
||||||
@@ -260,7 +270,6 @@ server:
|
|||||||
- secretName: argocd-tls
|
- secretName: argocd-tls
|
||||||
hosts:
|
hosts:
|
||||||
- "argocd.{{ .Values.clusterConfig.domain }}"
|
- "argocd.{{ .Values.clusterConfig.domain }}"
|
||||||
{{- end }}
|
|
||||||
applicationSet:
|
applicationSet:
|
||||||
metrics:
|
metrics:
|
||||||
enabled: true
|
enabled: true
|
||||||
@@ -274,6 +283,10 @@ applicationSet:
|
|||||||
ingressClassName: nginx
|
ingressClassName: nginx
|
||||||
annotations:
|
annotations:
|
||||||
cert-manager.io/cluster-issuer: {{ .Values.clusterConfig.ingress_clusterissuer }}
|
cert-manager.io/cluster-issuer: {{ .Values.clusterConfig.ingress_clusterissuer }}
|
||||||
|
# {{- with .Values.clusterConfig.ingress_whitelist}}
|
||||||
|
# NOTE(kai): include gitlab and github webhook ranges
|
||||||
|
# nginx.ingress.kubernetes.io/whitelist-source-range: {{ join "," . }},192.30.252.0/22,140.82.112.0/20,34.74.226.27/28,34.74.226.0/24
|
||||||
|
# {{- end }}
|
||||||
hostname: "argocd-applicationset.{{ .Values.clusterConfig.domain }}"
|
hostname: "argocd-applicationset.{{ .Values.clusterConfig.domain }}"
|
||||||
tls:
|
tls:
|
||||||
- secretName: argocd-applicationset-tls
|
- secretName: argocd-applicationset-tls
|
||||||
|
|||||||
@@ -73,8 +73,7 @@
|
|||||||
"connString": "Username=postgres;Password=secret;Host=localhost;Port=5432;Database=app;Pooling=true;",
|
"connString": "Username=postgres;Password=secret;Host=localhost;Port=5432;Database=app;Pooling=true;",
|
||||||
"sorcerer" : "https://sorcerer.data.oceanbox.io",
|
"sorcerer" : "https://sorcerer.data.oceanbox.io",
|
||||||
"allowedOrigins": [
|
"allowedOrigins": [
|
||||||
"https://maps.oceanbox.io",
|
"https://maps.oceanbox.io"
|
||||||
"https://codex.adm.oceanbox.io"
|
|
||||||
],
|
],
|
||||||
"appName": "atlantis",
|
"appName": "atlantis",
|
||||||
"appEnv": "prod",
|
"appEnv": "prod",
|
||||||
|
|||||||
@@ -26,7 +26,7 @@
|
|||||||
"cookieDomain": ".oceanbox.io",
|
"cookieDomain": ".oceanbox.io",
|
||||||
"cookieName": ".obx.staging",
|
"cookieName": ".obx.staging",
|
||||||
"ttl": 12.0,
|
"ttl": 12.0,
|
||||||
"signedOutRedirectUri": "https://maps.dev.oceanbox.io",
|
"signedOutRedirectUri": "https://atlantis.beta.oceanbox.io",
|
||||||
"realm": "atlantis",
|
"realm": "atlantis",
|
||||||
"environment": "staging",
|
"environment": "staging",
|
||||||
"keyStore": {
|
"keyStore": {
|
||||||
@@ -76,8 +76,7 @@
|
|||||||
"https://atlantis.beta.oceanbox.io",
|
"https://atlantis.beta.oceanbox.io",
|
||||||
"https://atlantis.dev.oceanbox.io",
|
"https://atlantis.dev.oceanbox.io",
|
||||||
"https://atlantis.local.oceanbox.io:8080",
|
"https://atlantis.local.oceanbox.io:8080",
|
||||||
"https://maps.dev.oceanbox.io",
|
"https://maps.dev.oceanbox.io"
|
||||||
"https://codex.dev.oceanbox.io"
|
|
||||||
],
|
],
|
||||||
"appName": "atlantis",
|
"appName": "atlantis",
|
||||||
"appEnv": "staging",
|
"appEnv": "staging",
|
||||||
|
|||||||
@@ -35,7 +35,7 @@ spec:
|
|||||||
valueFiles:
|
valueFiles:
|
||||||
- $values/values/atlantis/values/redis-{{ .Values.atlantis.env }}.yaml
|
- $values/values/atlantis/values/redis-{{ .Values.atlantis.env }}.yaml
|
||||||
{{- end }}
|
{{- end }}
|
||||||
- repoURL: https://git.oceanbox.io/platform/manifests.git
|
- repoURL: https://gitlab.com/oceanbox/manifests.git
|
||||||
targetRevision: main
|
targetRevision: main
|
||||||
ref: values
|
ref: values
|
||||||
ignoreDifferences:
|
ignoreDifferences:
|
||||||
|
|||||||
@@ -2,14 +2,6 @@ architecture: replication
|
|||||||
|
|
||||||
replica:
|
replica:
|
||||||
replicaCount: 2
|
replicaCount: 2
|
||||||
resources:
|
|
||||||
limits:
|
|
||||||
ephemeral-storage: 1024Mi
|
|
||||||
memory: 192Mi
|
|
||||||
requests:
|
|
||||||
cpu: 150m
|
|
||||||
ephemeral-storage: 50Mi
|
|
||||||
memory: 128Mi
|
|
||||||
|
|
||||||
auth:
|
auth:
|
||||||
enabled: true
|
enabled: true
|
||||||
@@ -28,3 +20,4 @@ master:
|
|||||||
cpu: 150m
|
cpu: 150m
|
||||||
ephemeral-storage: 50Mi
|
ephemeral-storage: 50Mi
|
||||||
memory: 128Mi
|
memory: 128Mi
|
||||||
|
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ replicaCount: 1
|
|||||||
|
|
||||||
image:
|
image:
|
||||||
repository: git.oceanbox.io/oceanbox/poseidon/atlantis
|
repository: git.oceanbox.io/oceanbox/poseidon/atlantis
|
||||||
tag: v1.46.2
|
tag: v1.42.2
|
||||||
|
|
||||||
podAnnotations:
|
podAnnotations:
|
||||||
dapr.io/app-id: "beta-atlantis"
|
dapr.io/app-id: "beta-atlantis"
|
||||||
|
|||||||
@@ -73,6 +73,9 @@ cluster:
|
|||||||
enabled: false
|
enabled: false
|
||||||
|
|
||||||
resources:
|
resources:
|
||||||
|
limits:
|
||||||
|
cpu: 1
|
||||||
|
memory: 1Gi
|
||||||
requests:
|
requests:
|
||||||
cpu: 500m
|
cpu: 500m
|
||||||
memory: 1Gi
|
memory: 1Gi
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
replicaCount: 1
|
replicaCount: 1
|
||||||
image:
|
image:
|
||||||
repository: git.oceanbox.io/oceanbox/poseidon/atlantis
|
repository: git.oceanbox.io/oceanbox/poseidon/atlantis
|
||||||
tag: 23006866-debug
|
tag: bc9dccaa-debug
|
||||||
podAnnotations:
|
podAnnotations:
|
||||||
dapr.io/app-id: "staging-atlantis"
|
dapr.io/app-id: "staging-atlantis"
|
||||||
env:
|
env:
|
||||||
@@ -50,6 +50,23 @@ ingress:
|
|||||||
# nginx.ingress.kubernetes.io/session-cookie-max-age: "86400"
|
# nginx.ingress.kubernetes.io/session-cookie-max-age: "86400"
|
||||||
# oceanbox.io/expose: internal
|
# oceanbox.io/expose: internal
|
||||||
hosts:
|
hosts:
|
||||||
|
- host: atlantis.beta.oceanbox.io
|
||||||
|
paths:
|
||||||
|
- path: /
|
||||||
|
pathType: ImplementationSpecific
|
||||||
|
internal:
|
||||||
|
- path: /internal
|
||||||
|
pathType: ImplementationSpecific
|
||||||
|
- path: /dapr
|
||||||
|
pathType: ImplementationSpecific
|
||||||
|
- path: /actors
|
||||||
|
pathType: ImplementationSpecific
|
||||||
|
- path: /job
|
||||||
|
pathType: ImplementationSpecific
|
||||||
|
- path: /events
|
||||||
|
pathType: ImplementationSpecific
|
||||||
|
- path: /metrics
|
||||||
|
pathType: ImplementationSpecific
|
||||||
- host: maps.dev.oceanbox.io
|
- host: maps.dev.oceanbox.io
|
||||||
paths:
|
paths:
|
||||||
- path: /
|
- path: /
|
||||||
@@ -67,8 +84,27 @@ ingress:
|
|||||||
pathType: ImplementationSpecific
|
pathType: ImplementationSpecific
|
||||||
- path: /metrics
|
- path: /metrics
|
||||||
pathType: ImplementationSpecific
|
pathType: ImplementationSpecific
|
||||||
|
- host: atlas.oceanbox.io
|
||||||
|
paths:
|
||||||
|
- path: /
|
||||||
|
pathType: ImplementationSpecific
|
||||||
|
internal:
|
||||||
|
- path: /internal
|
||||||
|
pathType: ImplementationSpecific
|
||||||
|
- path: /dapr
|
||||||
|
pathType: ImplementationSpecific
|
||||||
|
- path: /actors
|
||||||
|
pathType: ImplementationSpecific
|
||||||
|
- path: /job
|
||||||
|
pathType: ImplementationSpecific
|
||||||
|
- path: /events
|
||||||
|
pathType: ImplementationSpecific
|
||||||
|
- path: /metrics
|
||||||
|
pathType: ImplementationSpecific
|
||||||
tls:
|
tls:
|
||||||
- hosts:
|
- hosts:
|
||||||
|
- atlantis.beta.oceanbox.io
|
||||||
|
- atlas.oceanbox.io
|
||||||
- maps.dev.oceanbox.io
|
- maps.dev.oceanbox.io
|
||||||
secretName: staging-atlantis-tls
|
secretName: staging-atlantis-tls
|
||||||
cluster:
|
cluster:
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ spec:
|
|||||||
annotations:
|
annotations:
|
||||||
load-balancer.hetzner.cloud/location: hel1
|
load-balancer.hetzner.cloud/location: hel1
|
||||||
load-balancer.hetzner.cloud/type: lb11
|
load-balancer.hetzner.cloud/type: lb11
|
||||||
load-balancer.hetzner.cloud/name: load-balancer-1
|
load-balancer.hetzner.cloud/name: load-balancer-2
|
||||||
load-balancer.hetzner.cloud/use-private-ip: "true"
|
load-balancer.hetzner.cloud/use-private-ip: "true"
|
||||||
load-balancer.hetzner.cloud/uses-proxyprotocol: "true"
|
load-balancer.hetzner.cloud/uses-proxyprotocol: "true"
|
||||||
load-balancer.hetzner.cloud/http-redirect-https: "false"
|
load-balancer.hetzner.cloud/http-redirect-https: "false"
|
||||||
@@ -42,36 +42,6 @@ spec:
|
|||||||
selector:
|
selector:
|
||||||
matchLabels:
|
matchLabels:
|
||||||
shared-gateway-access: "true"
|
shared-gateway-access: "true"
|
||||||
- name: https-hel1
|
|
||||||
protocol: HTTPS
|
|
||||||
port: 443
|
|
||||||
hostname: "*.hel1.oceanbox.io"
|
|
||||||
tls:
|
|
||||||
certificateRefs:
|
|
||||||
- group: ''
|
|
||||||
kind: Secret
|
|
||||||
name: wildcard-hel1-oceanbox-io
|
|
||||||
allowedRoutes:
|
|
||||||
namespaces:
|
|
||||||
from: Selector
|
|
||||||
selector:
|
|
||||||
matchLabels:
|
|
||||||
shared-gateway-access: "true"
|
|
||||||
- name: https-internal
|
|
||||||
protocol: HTTPS
|
|
||||||
port: 443
|
|
||||||
hostname: "*.adm.hel1.obx"
|
|
||||||
tls:
|
|
||||||
certificateRefs:
|
|
||||||
- group: ''
|
|
||||||
kind: Secret
|
|
||||||
name: wildcard-adm-hel1-obx
|
|
||||||
allowedRoutes:
|
|
||||||
namespaces:
|
|
||||||
from: Selector
|
|
||||||
selector:
|
|
||||||
matchLabels:
|
|
||||||
shared-gateway-access: "true"
|
|
||||||
- name: ssh
|
- name: ssh
|
||||||
protocol: TCP
|
protocol: TCP
|
||||||
port: 22
|
port: 22
|
||||||
@@ -95,28 +65,4 @@ spec:
|
|||||||
issuerRef:
|
issuerRef:
|
||||||
name: letsencrypt-prod-dns01
|
name: letsencrypt-prod-dns01
|
||||||
kind: ClusterIssuer
|
kind: ClusterIssuer
|
||||||
---
|
|
||||||
apiVersion: cert-manager.io/v1
|
|
||||||
kind: Certificate
|
|
||||||
metadata:
|
|
||||||
name: wildcard-hel1-oceanbox-io
|
|
||||||
spec:
|
|
||||||
secretName: wildcard-hel1-oceanbox-io
|
|
||||||
dnsNames:
|
|
||||||
- "*.hel1.oceanbox.io"
|
|
||||||
issuerRef:
|
|
||||||
name: letsencrypt-prod-dns01
|
|
||||||
kind: ClusterIssuer
|
|
||||||
---
|
|
||||||
apiVersion: cert-manager.io/v1
|
|
||||||
kind: Certificate
|
|
||||||
metadata:
|
|
||||||
name: wildcard-adm-hel1-obx
|
|
||||||
spec:
|
|
||||||
secretName: wildcard-adm-hel1-obx
|
|
||||||
dnsNames:
|
|
||||||
- "*.adm.hel1.obx"
|
|
||||||
issuerRef:
|
|
||||||
name: ca-issuer
|
|
||||||
kind: ClusterIssuer
|
|
||||||
{{- end}}
|
{{- end}}
|
||||||
|
|||||||
@@ -1,19 +0,0 @@
|
|||||||
cilium:
|
|
||||||
enabled: true
|
|
||||||
# WireGuard cannot be used during migration -- Flannel nodes have no WireGuard
|
|
||||||
# keys so encrypted traffic is unreadable by them.
|
|
||||||
# TODO: re-enable after migration
|
|
||||||
encryption:
|
|
||||||
enabled: false
|
|
||||||
envoy:
|
|
||||||
enabled: true
|
|
||||||
# kube-proxy stays running during migration; disable replacement until done.
|
|
||||||
# TODO: set to true after migration
|
|
||||||
kubeProxyReplacement: false
|
|
||||||
# Direct apiserver connection -- do not rely on the kubernetes service IP
|
|
||||||
# during migration since we are touching the CNI layer.
|
|
||||||
# TODO: remove k8sServiceHost / k8sServicePort (or keep pointing at apiserver localhost)
|
|
||||||
k8sServiceHost: 10.255.241.99
|
|
||||||
k8sServicePort: 6443
|
|
||||||
policyAuditMode: true
|
|
||||||
upgradeCompatability: 1.18
|
|
||||||
@@ -1,7 +1,5 @@
|
|||||||
cilium:
|
cilium:
|
||||||
enabled: true
|
enabled: true
|
||||||
envoy:
|
|
||||||
enabled: true
|
|
||||||
nodePort:
|
nodePort:
|
||||||
enabled: true
|
enabled: true
|
||||||
l2announcement:
|
l2announcement:
|
||||||
|
|||||||
@@ -1,10 +0,0 @@
|
|||||||
cilium:
|
|
||||||
enabled: true
|
|
||||||
nodePort:
|
|
||||||
enabled: true
|
|
||||||
l2announcement:
|
|
||||||
enabled: true
|
|
||||||
loadbalancerPool:
|
|
||||||
enabled: false
|
|
||||||
cidr:
|
|
||||||
- 10.255.241.11/32
|
|
||||||
@@ -1,33 +0,0 @@
|
|||||||
# Installs Cilium without writing the CNI config file.
|
|
||||||
# Flannel keeps serving pods on unmigrated nodes.
|
|
||||||
# TODO: Remove after migration
|
|
||||||
#cni:
|
|
||||||
#customConf: false
|
|
||||||
|
|
||||||
# Routes cross-CNI traffic via the host network stack so Flannel pods
|
|
||||||
# and Cilium pods can reach each other during the transition.
|
|
||||||
# TODO: Remove after migration
|
|
||||||
#bpf:
|
|
||||||
#hostLegacyRouting: false
|
|
||||||
|
|
||||||
# NOTE: Use Geneve so Cilium's overlay is distinct from Flannel's VXLAN.
|
|
||||||
# This is required for cross-CNI pod connectivity during migration.
|
|
||||||
routingMode: tunnel
|
|
||||||
tunnelProtocol: geneve
|
|
||||||
|
|
||||||
# New pod CIDR exclusively for Cilium (must not overlap):
|
|
||||||
# Flannel pod CIDR: 10.100.0.0/16 (clusterCidr in k8s config)
|
|
||||||
# Service CIDR: 10.0.0.0/22
|
|
||||||
# Node networks: 10.255.241.0/24, 10.255.242.0/24, 10.255.243.0/24, 10.255.244.0/24
|
|
||||||
# TODO: after migration switch ipam.mode to kubernetes
|
|
||||||
ipam:
|
|
||||||
mode: cluster-pool
|
|
||||||
operator:
|
|
||||||
clusterPoolIPv4PodCIDRList:
|
|
||||||
- "10.100.0.0/16"
|
|
||||||
clusterPoolIPv4MaskSize: 24
|
|
||||||
|
|
||||||
# NOTE: Rate limit Cilium's k8s API client ekman has ~30 nodes.
|
|
||||||
k8sClientRateLimit:
|
|
||||||
qps: 5
|
|
||||||
burst: 10
|
|
||||||
@@ -15,14 +15,6 @@ encryption:
|
|||||||
type: {{ .Values.cilium.encryption.type}}
|
type: {{ .Values.cilium.encryption.type}}
|
||||||
envoy:
|
envoy:
|
||||||
enabled: {{ .Values.cilium.envoy.enabled }}
|
enabled: {{ .Values.cilium.envoy.enabled }}
|
||||||
securityContext:
|
|
||||||
capabilities:
|
|
||||||
keepCapNetBindService: true
|
|
||||||
envoy:
|
|
||||||
- SYS_ADMIN
|
|
||||||
- NET_ADMIN
|
|
||||||
- BPF
|
|
||||||
- NET_BIND_SERVICE
|
|
||||||
prometheus:
|
prometheus:
|
||||||
serviceMonitor:
|
serviceMonitor:
|
||||||
enabled: {{ .Values.cilium.envoy.enabled }}
|
enabled: {{ .Values.cilium.envoy.enabled }}
|
||||||
@@ -78,6 +70,15 @@ gatewayAPI:
|
|||||||
nodes:
|
nodes:
|
||||||
matchLabels:
|
matchLabels:
|
||||||
ingresshost: "cilium"
|
ingresshost: "cilium"
|
||||||
|
envoy:
|
||||||
|
enabled: true
|
||||||
|
securityContext:
|
||||||
|
capabilities:
|
||||||
|
keepCapNetBindService: true
|
||||||
|
envoy:
|
||||||
|
- NET_ADMIN
|
||||||
|
- BPF
|
||||||
|
- NET_BIND_SERVICE
|
||||||
{{- end}}
|
{{- end}}
|
||||||
ingressController:
|
ingressController:
|
||||||
enabled: {{ .Values.cilium.ingressController.enabled }}
|
enabled: {{ .Values.cilium.ingressController.enabled }}
|
||||||
|
|||||||
@@ -41,7 +41,7 @@
|
|||||||
"cookieDomain": ".oceanbox.io",
|
"cookieDomain": ".oceanbox.io",
|
||||||
"cookieName": ".obx.prod",
|
"cookieName": ".obx.prod",
|
||||||
"ttl": 12.0,
|
"ttl": 12.0,
|
||||||
"signedOutRedirectUri": "https://codex.adm.oceanbox.io/",
|
"signedOutRedirectUri": "https://maps.oceanbox.io/",
|
||||||
"realm": "atlantis",
|
"realm": "atlantis",
|
||||||
"environment": "prod",
|
"environment": "prod",
|
||||||
"keyStore": {
|
"keyStore": {
|
||||||
@@ -55,14 +55,13 @@
|
|||||||
"key": "dataencryption-keys"
|
"key": "dataencryption-keys"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"PlainAuthUsers": [
|
"plainAuthUsers": [
|
||||||
{
|
{
|
||||||
"username": "admin",
|
"username": "admin",
|
||||||
"password": "en-to-tre-fire",
|
"password": "en-to-tre-fire",
|
||||||
"groups": [ "/oceanbox" ],
|
"groups": [ "/oceanbox" ],
|
||||||
"roles": [ "admin" ]
|
"roles": [ "admin" ]
|
||||||
}
|
}
|
||||||
],
|
]
|
||||||
"ArchiveSvc": "https://maps.oceanbox.io"
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -64,8 +64,3 @@
|
|||||||
secretKeyRef:
|
secretKeyRef:
|
||||||
name: prod-openfga-db-app
|
name: prod-openfga-db-app
|
||||||
key: password
|
key: password
|
||||||
- name: DAPR_API_TOKEN
|
|
||||||
valueFrom:
|
|
||||||
secretKeyRef:
|
|
||||||
name: dapr-api-token
|
|
||||||
key: token
|
|
||||||
|
|||||||
@@ -41,7 +41,7 @@
|
|||||||
"cookieDomain": ".oceanbox.io",
|
"cookieDomain": ".oceanbox.io",
|
||||||
"cookieName": ".obx.staging",
|
"cookieName": ".obx.staging",
|
||||||
"ttl": 12.0,
|
"ttl": 12.0,
|
||||||
"signedOutRedirectUri": "https://codex.dev.oceanbox.io/",
|
"signedOutRedirectUri": "https://atlantis.dev.oceanbox.io/",
|
||||||
"realm": "atlantis",
|
"realm": "atlantis",
|
||||||
"environment": "staging",
|
"environment": "staging",
|
||||||
"keyStore": {
|
"keyStore": {
|
||||||
@@ -55,13 +55,12 @@
|
|||||||
"key": "dataencryption-keys"
|
"key": "dataencryption-keys"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"PlainAuthUsers": [
|
"plainAuthUsers": [
|
||||||
{
|
{
|
||||||
"username": "admin",
|
"username": "admin",
|
||||||
"password": "en-to-tre-fire",
|
"password": "en-to-tre-fire",
|
||||||
"groups": [ "/oceanbox" ],
|
"groups": [ "/oceanbox" ],
|
||||||
"roles": [ "admin" ]
|
"roles": [ "admin" ]
|
||||||
}
|
}
|
||||||
],
|
]
|
||||||
"ArchiveSvc": "https://maps.dev.oceanbox.io"
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -62,8 +62,3 @@
|
|||||||
secretKeyRef:
|
secretKeyRef:
|
||||||
name: staging-openfga-db-app
|
name: staging-openfga-db-app
|
||||||
key: password
|
key: password
|
||||||
- name: DAPR_API_TOKEN
|
|
||||||
valueFrom:
|
|
||||||
secretKeyRef:
|
|
||||||
name: dapr-api-token
|
|
||||||
key: token
|
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ spec:
|
|||||||
value: {{ .Values.codex.env }}
|
value: {{ .Values.codex.env }}
|
||||||
- name: HELMFILE_FILE_PATH
|
- name: HELMFILE_FILE_PATH
|
||||||
value: codex.yaml.gotmpl
|
value: codex.yaml.gotmpl
|
||||||
- repoURL: https://git.oceanbox.io/platform/manifests.git
|
- repoURL: https://gitlab.com/oceanbox/manifests.git
|
||||||
targetRevision: main
|
targetRevision: main
|
||||||
ref: values
|
ref: values
|
||||||
syncPolicy:
|
syncPolicy:
|
||||||
@@ -40,3 +40,4 @@ spec:
|
|||||||
selfHeal: false
|
selfHeal: false
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|
||||||
|
|||||||
@@ -1,11 +1,4 @@
|
|||||||
replicaCount: 1
|
replicaCount: 1
|
||||||
podAnnotations:
|
|
||||||
dapr.io/enabled: "true"
|
|
||||||
dapr.io/app-id: "prod-codex"
|
|
||||||
dapr.io/app-port: "8085"
|
|
||||||
dapr.io/api-token-secret: "dapr-api-token"
|
|
||||||
dapr.io/config: "tracing"
|
|
||||||
dapr.io/app-protocol: "http"
|
|
||||||
ingress:
|
ingress:
|
||||||
enabled: true
|
enabled: true
|
||||||
className: "nginx"
|
className: "nginx"
|
||||||
|
|||||||
@@ -1,11 +1,4 @@
|
|||||||
replicaCount: 1
|
replicaCount: 1
|
||||||
podAnnotations:
|
|
||||||
dapr.io/enabled: "true"
|
|
||||||
dapr.io/app-id: "staging-codex"
|
|
||||||
dapr.io/app-port: "8085"
|
|
||||||
dapr.io/api-token-secret: "dapr-api-token"
|
|
||||||
dapr.io/config: "tracing"
|
|
||||||
dapr.io/app-protocol: "http"
|
|
||||||
ingress:
|
ingress:
|
||||||
enabled: true
|
enabled: true
|
||||||
className: "nginx"
|
className: "nginx"
|
||||||
@@ -38,4 +31,4 @@ volumeMounts:
|
|||||||
readOnly: true
|
readOnly: true
|
||||||
subPath: appsettings.json
|
subPath: appsettings.json
|
||||||
image:
|
image:
|
||||||
tag: 38eeb4cc-debug
|
tag: d34652dd-debug
|
||||||
|
|||||||
@@ -27,7 +27,8 @@ spec:
|
|||||||
- name: HELMFILE_FILE_PATH
|
- name: HELMFILE_FILE_PATH
|
||||||
value: dapr.yaml.gotmpl
|
value: dapr.yaml.gotmpl
|
||||||
- repoURL: https://dapr.github.io/helm-charts
|
- repoURL: https://dapr.github.io/helm-charts
|
||||||
targetRevision: 1.16.9
|
# NOTE: DONT BUMP EKMAN TO 1.15 it is broken
|
||||||
|
targetRevision: {{- if eq .Values.dapr.cluster "ekman" }} 1.16.1 {{- else }} 1.16.0 {{- end }}
|
||||||
chart: dapr
|
chart: dapr
|
||||||
helm:
|
helm:
|
||||||
valueFiles:
|
valueFiles:
|
||||||
|
|||||||
@@ -28,9 +28,6 @@ spec:
|
|||||||
- name: HELMFILE_FILE_PATH
|
- name: HELMFILE_FILE_PATH
|
||||||
value: docs.yaml.gotmpl
|
value: docs.yaml.gotmpl
|
||||||
syncPolicy:
|
syncPolicy:
|
||||||
managedNamespaceMetadata:
|
|
||||||
labels:
|
|
||||||
shared-gateway-access: "true"
|
|
||||||
syncOptions:
|
syncOptions:
|
||||||
- CreateNamespace=true
|
- CreateNamespace=true
|
||||||
- ApplyOutOfSyncOnly=true
|
- ApplyOutOfSyncOnly=true
|
||||||
|
|||||||
@@ -1 +0,0 @@
|
|||||||
{{- /* HTTPRoute and CiliumNetworkPolicy are managed by the docs chart template */ -}}
|
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
replicaCount: 1
|
replicaCount: 1
|
||||||
image:
|
image:
|
||||||
tag: "e9fd3fc6-debug"
|
tag: "5c4cda2e-debug"
|
||||||
env:
|
env:
|
||||||
- name: APP_VERSION
|
- name: APP_VERSION
|
||||||
value: "0.0.0"
|
value: "0.0.0"
|
||||||
|
|||||||
@@ -1,46 +0,0 @@
|
|||||||
replicaCount: 1
|
|
||||||
image:
|
|
||||||
tag: "e9fd3fc6-debug"
|
|
||||||
env:
|
|
||||||
- name: APP_VERSION
|
|
||||||
value: "0.0.0"
|
|
||||||
- name: LOG_LEVEL
|
|
||||||
value: "1"
|
|
||||||
{{- if .Values.clusterConfig.gatewayAPI.enabled }}
|
|
||||||
ingress:
|
|
||||||
enabled: false
|
|
||||||
className: "nginx"
|
|
||||||
httpRoute:
|
|
||||||
enabled: true
|
|
||||||
parentRefs:
|
|
||||||
- name: shared-gateway
|
|
||||||
namespace: kube-system
|
|
||||||
sectionName: https
|
|
||||||
hostnames:
|
|
||||||
- docs.oceanbox.io
|
|
||||||
rules:
|
|
||||||
- matches:
|
|
||||||
- path:
|
|
||||||
type: PathPrefix
|
|
||||||
value: "/"
|
|
||||||
{{- else }}
|
|
||||||
ingress:
|
|
||||||
enabled: true
|
|
||||||
className: "nginx"
|
|
||||||
annotations:
|
|
||||||
cert-manager.io/cluster-issuer: letsencrypt-production
|
|
||||||
nginx.ingress.kubernetes.io/backend-protocol: HTTP
|
|
||||||
nginx.ingress.kubernetes.io/enable-cors: "true"
|
|
||||||
nginx.ingress.kubernetes.io/proxy-buffer-size: 128k
|
|
||||||
nginx.ingress.kubernetes.io/ssl-redirect: "true"
|
|
||||||
oceanbox.io/expose: internal
|
|
||||||
hosts:
|
|
||||||
- host: docs.oceanbox.io
|
|
||||||
paths:
|
|
||||||
- path: /
|
|
||||||
pathType: ImplementationSpecific
|
|
||||||
tls:
|
|
||||||
- hosts:
|
|
||||||
- docs.oceanbox.io
|
|
||||||
secretName: docs-tls
|
|
||||||
{{- end }}
|
|
||||||
@@ -1,38 +1,32 @@
|
|||||||
apiVersion: gateway.networking.k8s.io/v1
|
apiVersion: networking.k8s.io/v1
|
||||||
kind: HTTPRoute
|
kind: Ingress
|
||||||
metadata:
|
metadata:
|
||||||
|
annotations:
|
||||||
|
cert-manager.io/cluster-issuer: letsencrypt-production
|
||||||
|
nginx.ingress.kubernetes.io/backend-protocol: HTTP
|
||||||
|
nginx.ingress.kubernetes.io/proxy-body-size: "0"
|
||||||
|
nginx.ingress.kubernetes.io/proxy-read-timeout: "600"
|
||||||
|
nginx.ingress.kubernetes.io/proxy-send-timeout: "600"
|
||||||
|
nginx.ingress.kubernetes.io/ssl-redirect: "true"
|
||||||
|
nginx.ingress.kubernetes.io/whitelist-source-range: 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
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/component: drupal
|
||||||
name: drupal
|
name: drupal
|
||||||
namespace: fornix
|
namespace: fornix
|
||||||
spec:
|
spec:
|
||||||
parentRefs:
|
ingressClassName: nginx
|
||||||
- name: shared-gateway
|
|
||||||
namespace: kube-system
|
|
||||||
sectionName: https-hel1
|
|
||||||
hostnames:
|
|
||||||
- drupal.hel1.oceanbox.io
|
|
||||||
rules:
|
rules:
|
||||||
- matches:
|
- host: drupal.hel1.oceanbox.io
|
||||||
- path:
|
http:
|
||||||
type: PathPrefix
|
paths:
|
||||||
value: "/"
|
- backend:
|
||||||
backendRefs:
|
service:
|
||||||
- name: drupal
|
name: drupal
|
||||||
port: 80
|
port:
|
||||||
---
|
number: 80
|
||||||
apiVersion: cilium.io/v2
|
path: /
|
||||||
kind: CiliumNetworkPolicy
|
pathType: Prefix
|
||||||
metadata:
|
tls:
|
||||||
name: allow-gateway-to-drupal
|
- hosts:
|
||||||
namespace: fornix
|
- drupal.hel1.oceanbox.io
|
||||||
spec:
|
secretName: drupal-tls
|
||||||
endpointSelector:
|
|
||||||
matchLabels:
|
|
||||||
app: drupal
|
|
||||||
ingress:
|
|
||||||
- fromCIDRSet:
|
|
||||||
{{- range .Values.clusterConfig.ingress_whitelist }}
|
|
||||||
- cidr: {{ . }}
|
|
||||||
{{- end }}
|
|
||||||
- fromEndpoints:
|
|
||||||
- matchLabels:
|
|
||||||
"k8s:io.kubernetes.pod.namespace": fornix
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
clusterConfig:
|
clusterConfig:
|
||||||
manifests: https://git.oceanbox.io/platform/manifests.git
|
manifests: https://git.oceanbox.io/platform/manifests.git
|
||||||
cilium:
|
cilium:
|
||||||
enabled: true
|
enabled: false
|
||||||
env: "prod"
|
env: "prod"
|
||||||
distro: "nixos"
|
distro: "nixos"
|
||||||
domain: "ekman.oceanbox.io"
|
domain: "ekman.oceanbox.io"
|
||||||
|
|||||||
@@ -20,8 +20,6 @@ clusterConfig:
|
|||||||
patterns: []
|
patterns: []
|
||||||
cidr: []
|
cidr: []
|
||||||
nodes: []
|
nodes: []
|
||||||
gatewayAPI:
|
|
||||||
enabled: true
|
|
||||||
ingress_whitelist:
|
ingress_whitelist:
|
||||||
- 10.0.0.0/8
|
- 10.0.0.0/8
|
||||||
- 172.16.0.0/12
|
- 172.16.0.0/12
|
||||||
|
|||||||
@@ -27,5 +27,3 @@ clusterConfig:
|
|||||||
- 192.168.0.0/16
|
- 192.168.0.0/16
|
||||||
- 172.19.255.0/24
|
- 172.19.255.0/24
|
||||||
- 100.64.0.0/12
|
- 100.64.0.0/12
|
||||||
# hel1
|
|
||||||
- 37.27.203.38/28
|
|
||||||
|
|||||||
@@ -20,8 +20,6 @@ clusterConfig:
|
|||||||
- 192.168.0.0/16
|
- 192.168.0.0/16
|
||||||
- 172.19.255.0/24
|
- 172.19.255.0/24
|
||||||
- 100.64.0.0/12 # tailnet
|
- 100.64.0.0/12 # tailnet
|
||||||
gatewayAPI:
|
|
||||||
enabled: false
|
|
||||||
ingress_hostnetwork: false
|
ingress_hostnetwork: false
|
||||||
ingress_hostport: false
|
ingress_hostport: false
|
||||||
ingress_nodeport: true
|
ingress_nodeport: true
|
||||||
|
|||||||
@@ -31,9 +31,6 @@ spec:
|
|||||||
targetRevision: main
|
targetRevision: main
|
||||||
ref: values
|
ref: values
|
||||||
syncPolicy:
|
syncPolicy:
|
||||||
managedNamespaceMetadata:
|
|
||||||
labels:
|
|
||||||
shared-gateway-access: "true"
|
|
||||||
syncOptions:
|
syncOptions:
|
||||||
- CreateNamespace=true
|
- CreateNamespace=true
|
||||||
- ApplyOutOfSyncOnly=true
|
- ApplyOutOfSyncOnly=true
|
||||||
|
|||||||
@@ -1,38 +0,0 @@
|
|||||||
apiVersion: gateway.networking.k8s.io/v1
|
|
||||||
kind: HTTPRoute
|
|
||||||
metadata:
|
|
||||||
name: fornix
|
|
||||||
namespace: fornix
|
|
||||||
spec:
|
|
||||||
parentRefs:
|
|
||||||
- name: shared-gateway
|
|
||||||
namespace: kube-system
|
|
||||||
sectionName: https-hel1
|
|
||||||
hostnames:
|
|
||||||
- fornix.hel1.oceanbox.io
|
|
||||||
rules:
|
|
||||||
- matches:
|
|
||||||
- path:
|
|
||||||
type: PathPrefix
|
|
||||||
value: "/"
|
|
||||||
backendRefs:
|
|
||||||
- name: fornix
|
|
||||||
port: 8085
|
|
||||||
---
|
|
||||||
apiVersion: cilium.io/v2
|
|
||||||
kind: CiliumNetworkPolicy
|
|
||||||
metadata:
|
|
||||||
name: allow-gateway-to-fornix
|
|
||||||
namespace: fornix
|
|
||||||
spec:
|
|
||||||
endpointSelector:
|
|
||||||
matchLabels:
|
|
||||||
app.kubernetes.io/name: fornix
|
|
||||||
ingress:
|
|
||||||
- fromCIDRSet:
|
|
||||||
{{- range .Values.clusterConfig.ingress_whitelist }}
|
|
||||||
- cidr: {{ . }}
|
|
||||||
{{- end }}
|
|
||||||
- fromEndpoints:
|
|
||||||
- matchLabels:
|
|
||||||
"k8s:io.kubernetes.pod.namespace": fornix
|
|
||||||
@@ -3,7 +3,7 @@ drupalUrl: http://drupal
|
|||||||
|
|
||||||
replicaCount: 1
|
replicaCount: 1
|
||||||
ingress:
|
ingress:
|
||||||
enabled: false
|
enabled: true
|
||||||
className: "nginx"
|
className: "nginx"
|
||||||
annotations:
|
annotations:
|
||||||
cert-manager.io/cluster-issuer: letsencrypt-production
|
cert-manager.io/cluster-issuer: letsencrypt-production
|
||||||
|
|||||||
@@ -26,7 +26,6 @@ spec:
|
|||||||
managedNamespaceMetadata:
|
managedNamespaceMetadata:
|
||||||
labels:
|
labels:
|
||||||
component: sys
|
component: sys
|
||||||
shared-gateway-access: "true"
|
|
||||||
syncOptions:
|
syncOptions:
|
||||||
- CreateNamespace=true
|
- CreateNamespace=true
|
||||||
- ApplyOutOfSyncOnly=true
|
- ApplyOutOfSyncOnly=true
|
||||||
|
|||||||
@@ -1,48 +1,8 @@
|
|||||||
{{- if .Values.clusterConfig.gatewayAPI.enabled }}
|
|
||||||
apiVersion: gateway.networking.k8s.io/v1
|
|
||||||
kind: HTTPRoute
|
|
||||||
metadata:
|
|
||||||
name: gatus
|
|
||||||
namespace: uptime
|
|
||||||
spec:
|
|
||||||
parentRefs:
|
|
||||||
- name: shared-gateway
|
|
||||||
namespace: kube-system
|
|
||||||
sectionName: https-internal
|
|
||||||
hostnames:
|
|
||||||
- uptime.{{ .Values.clusterConfig.domain }}
|
|
||||||
rules:
|
|
||||||
- matches:
|
|
||||||
- path:
|
|
||||||
type: PathPrefix
|
|
||||||
value: "/"
|
|
||||||
backendRefs:
|
|
||||||
- name: gatus
|
|
||||||
port: 80
|
|
||||||
---
|
|
||||||
apiVersion: cilium.io/v2
|
|
||||||
kind: CiliumNetworkPolicy
|
|
||||||
metadata:
|
|
||||||
name: allow-gateway-to-gatus
|
|
||||||
namespace: uptime
|
|
||||||
spec:
|
|
||||||
endpointSelector:
|
|
||||||
matchLabels:
|
|
||||||
app.kubernetes.io/name: gatus
|
|
||||||
ingress:
|
|
||||||
- fromCIDRSet:
|
|
||||||
{{- range .Values.clusterConfig.ingress_whitelist }}
|
|
||||||
- cidr: {{ . }}
|
|
||||||
{{- end }}
|
|
||||||
- fromEndpoints:
|
|
||||||
- matchLabels:
|
|
||||||
"k8s:io.kubernetes.pod.namespace": uptime
|
|
||||||
{{- else }}
|
|
||||||
apiVersion: networking.k8s.io/v1
|
apiVersion: networking.k8s.io/v1
|
||||||
kind: Ingress
|
kind: Ingress
|
||||||
metadata:
|
metadata:
|
||||||
annotations:
|
annotations:
|
||||||
cert-manager.io/cluster-issuer: {{ .Values.clusterConfig.ingress_clusterissuer }}
|
cert-manager.io/cluster-issuer: ca-issuer
|
||||||
nginx.ingress.kubernetes.io/backend-protocol: HTTP
|
nginx.ingress.kubernetes.io/backend-protocol: HTTP
|
||||||
nginx.ingress.kubernetes.io/cors-allow-headers: Content-Type, x-gatus-cache
|
nginx.ingress.kubernetes.io/cors-allow-headers: Content-Type, x-gatus-cache
|
||||||
nginx.ingress.kubernetes.io/enable-cors: "true"
|
nginx.ingress.kubernetes.io/enable-cors: "true"
|
||||||
@@ -55,7 +15,7 @@ metadata:
|
|||||||
spec:
|
spec:
|
||||||
ingressClassName: nginx
|
ingressClassName: nginx
|
||||||
rules:
|
rules:
|
||||||
- host: uptime.{{ .Values.clusterConfig.domain }}
|
- host: uptime.adm.hel1.obx
|
||||||
http:
|
http:
|
||||||
paths:
|
paths:
|
||||||
- backend:
|
- backend:
|
||||||
@@ -67,6 +27,5 @@ spec:
|
|||||||
pathType: ImplementationSpecific
|
pathType: ImplementationSpecific
|
||||||
tls:
|
tls:
|
||||||
- hosts:
|
- hosts:
|
||||||
- uptime.{{ .Values.clusterConfig.domain }}
|
- uptime.adm.hel1.obx
|
||||||
secretName: gatus-tls
|
secretName: gatus-tls
|
||||||
{{- end }}
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
image:
|
image:
|
||||||
repository: twinproduction/gatus
|
repository: twinproduction/gatus
|
||||||
tag: v5.35.0
|
tag: v5.34.0
|
||||||
|
|
||||||
# Does envFrom secret named gatus
|
# Does envFrom secret named gatus
|
||||||
secrets: true
|
secrets: true
|
||||||
@@ -93,13 +93,6 @@ config:
|
|||||||
alerts:
|
alerts:
|
||||||
- type: custom
|
- type: custom
|
||||||
|
|
||||||
- name: Atlantis Beta TOS
|
|
||||||
<<: *https-endpoint
|
|
||||||
group: "Primary Services"
|
|
||||||
url: https://maps.beta.oceanbox.io/healthz
|
|
||||||
alerts:
|
|
||||||
- type: custom
|
|
||||||
|
|
||||||
# NOTE: Ingress is down
|
# NOTE: Ingress is down
|
||||||
# - name: Sorcerer VTN
|
# - name: Sorcerer VTN
|
||||||
# <<: *https-endpoint
|
# <<: *https-endpoint
|
||||||
@@ -122,16 +115,16 @@ config:
|
|||||||
alerts:
|
alerts:
|
||||||
- type: custom
|
- type: custom
|
||||||
|
|
||||||
- name: Atlantis Dev TOS
|
- name: Atlantis Beta
|
||||||
<<: *https-endpoint
|
<<: *https-endpoint
|
||||||
group: "Experimental Services"
|
group: "Experimental Services"
|
||||||
url: https://maps.dev.oceanbox.io/healthz
|
url: https://atlantis.beta.oceanbox.io/healthz
|
||||||
extra-labels:
|
extra-labels:
|
||||||
environment: staging
|
environment: staging
|
||||||
alerts:
|
alerts:
|
||||||
- type: custom
|
- type: custom
|
||||||
|
|
||||||
- name: Sorcerer Dev TOS
|
- name: Sorcerer Beta
|
||||||
<<: *https-endpoint
|
<<: *https-endpoint
|
||||||
group: "Experimental Services"
|
group: "Experimental Services"
|
||||||
url: https://sorcerer.ekman.oceanbox.io/healthz
|
url: https://sorcerer.ekman.oceanbox.io/healthz
|
||||||
@@ -140,7 +133,7 @@ config:
|
|||||||
alerts:
|
alerts:
|
||||||
- type: custom
|
- type: custom
|
||||||
|
|
||||||
- name: Plume Dev TOS
|
- name: Plume Beta
|
||||||
<<: *https-endpoint
|
<<: *https-endpoint
|
||||||
group: "Experimental Services"
|
group: "Experimental Services"
|
||||||
url: https://plume.ekman.oceanbox.io/healthz
|
url: https://plume.ekman.oceanbox.io/healthz
|
||||||
|
|||||||
@@ -14,36 +14,11 @@ spec:
|
|||||||
- path:
|
- path:
|
||||||
type: PathPrefix
|
type: PathPrefix
|
||||||
value: "/"
|
value: "/"
|
||||||
timeouts:
|
|
||||||
request: 600s
|
|
||||||
backendRequest: 600s
|
|
||||||
backendRefs:
|
backendRefs:
|
||||||
- name: gitea-http
|
- name: gitea-http
|
||||||
port: 3000
|
port: 3000
|
||||||
|
|
||||||
---
|
---
|
||||||
apiVersion: cilium.io/v2
|
|
||||||
kind: CiliumNetworkPolicy
|
|
||||||
metadata:
|
|
||||||
name: allow-gateway-to-gitea
|
|
||||||
namespace: gitea
|
|
||||||
spec:
|
|
||||||
endpointSelector:
|
|
||||||
matchLabels:
|
|
||||||
app.kubernetes.io/name: gitea
|
|
||||||
ingress:
|
|
||||||
- fromCIDRSet:
|
|
||||||
- cidr: 10.0.0.0/8
|
|
||||||
- cidr: 172.16.0.0/12
|
|
||||||
- cidr: 192.168.0.0/16
|
|
||||||
- cidr: 172.19.255.0/24
|
|
||||||
- cidr: 100.64.0.0/12
|
|
||||||
- cidr: 185.125.160.4/32
|
|
||||||
- cidr: 37.27.203.38/32
|
|
||||||
- fromEndpoints:
|
|
||||||
- matchLabels:
|
|
||||||
"k8s:io.kubernetes.pod.namespace": gitea
|
|
||||||
---
|
|
||||||
apiVersion: gateway.networking.k8s.io/v1alpha2
|
apiVersion: gateway.networking.k8s.io/v1alpha2
|
||||||
kind: TCPRoute
|
kind: TCPRoute
|
||||||
metadata:
|
metadata:
|
||||||
|
|||||||
@@ -1,8 +0,0 @@
|
|||||||
{{- /* Gateway API: disable ingress when cilium gateway is enabled (HTTPRoute is in manifests/gateway-routes.yaml) */ -}}
|
|
||||||
{{- if .Values.clusterConfig.gatewayAPI.enabled }}
|
|
||||||
ingress:
|
|
||||||
enabled: false
|
|
||||||
{{- else }}
|
|
||||||
ingress:
|
|
||||||
enabled: true
|
|
||||||
{{- end }}
|
|
||||||
@@ -49,9 +49,11 @@ spec:
|
|||||||
image: grafana/pdc-agent:latest
|
image: grafana/pdc-agent:latest
|
||||||
imagePullPolicy: Always
|
imagePullPolicy: Always
|
||||||
resources:
|
resources:
|
||||||
|
limits:
|
||||||
|
memory: 1Gi
|
||||||
requests:
|
requests:
|
||||||
cpu: 200m
|
cpu: 1
|
||||||
memory: 250Mi
|
memory: 1Gi
|
||||||
securityContext:
|
securityContext:
|
||||||
allowPrivilegeEscalation: false
|
allowPrivilegeEscalation: false
|
||||||
privileged: false
|
privileged: false
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
image:
|
image:
|
||||||
repository: ghcr.io/juanfont/headscale
|
repository: ghcr.io/juanfont/headscale
|
||||||
pullPolicy: IfNotPresent
|
pullPolicy: IfNotPresent
|
||||||
tag: v0.27.1
|
tag: v0.28.0
|
||||||
|
|
||||||
args: [ "serve" ]
|
args: [ "serve" ]
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,164 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
data:
|
||||||
|
policy: |
|
||||||
|
{
|
||||||
|
// groups are collections of users having a common scope. A user can be in multiple groups
|
||||||
|
// groups cannot be composed of groups
|
||||||
|
"groups": {
|
||||||
|
"group:admin": [
|
||||||
|
"jonas.juselius@oceanbox.io",
|
||||||
|
"Moritz.Jorg@oceanbox.io",
|
||||||
|
"simen.kirkvik@oceanbox.io",
|
||||||
|
"stig.r.jensen@oceanbox.io",
|
||||||
|
"system-tos",
|
||||||
|
],
|
||||||
|
"group:devops": [
|
||||||
|
"jonas.juselius@oceanbox.io",
|
||||||
|
"Moritz.Jorg@oceanbox.io",
|
||||||
|
"stig.r.jensen@oceanbox.io",
|
||||||
|
"radovan.bast@oceanbox.io",
|
||||||
|
"simen.kirkvik@oceanbox.io",
|
||||||
|
"Ole.Tytlandsvik@tromso.serit.no",
|
||||||
|
],
|
||||||
|
"group:oceanographer": [
|
||||||
|
"frank.gaardsted@oceanbox.io",
|
||||||
|
"ole.anders.nost@oceanbox.io",
|
||||||
|
"helge.avlesen@oceanbox.io",
|
||||||
|
"isa.rosso@oceanbox.io",
|
||||||
|
"jonathan.lilly@oceanbox.io",
|
||||||
|
],
|
||||||
|
"group:manager": [
|
||||||
|
"svenn.hanssen@oceanbox.io",
|
||||||
|
"hilde.iversen@oceanbox.io",
|
||||||
|
],
|
||||||
|
"group:dev": [],
|
||||||
|
"group:intern": [],
|
||||||
|
},
|
||||||
|
// tagOwners in tailscale is an association between a TAG and the people allowed to set this TAG on a server.
|
||||||
|
// This is documented [here](https://tailscale.com/kb/1068/acl-tags#defining-a-tag)
|
||||||
|
// and explained [here](https://tailscale.com/blog/rbac-like-it-was-meant-to-be/)
|
||||||
|
"tagOwners": {
|
||||||
|
"tag:k8s": [ "group:admin" ],
|
||||||
|
"tag:hpc": [ "group:admin" ],
|
||||||
|
},
|
||||||
|
// hosts should be defined using its IP addresses and a subnet mask.
|
||||||
|
// to define a single host, use a /32 mask. You cannot use DNS entries here,
|
||||||
|
// as they're prone to be hijacked by replacing their IP addresses.
|
||||||
|
// see https://github.com/tailscale/tailscale/issues/3800 for more information.
|
||||||
|
"hosts": {
|
||||||
|
"ingress.ekman.tos": "10.255.241.99/32",
|
||||||
|
"ingress.ceph.tos": "10.255.241.10/32",
|
||||||
|
"ingress.ceph.vtn": "172.16.239.50/32",
|
||||||
|
"ingress.adm.ceph.vtn": "172.16.239.51/32",
|
||||||
|
"ingress.oceanbox.tos": "10.255.241.11/32",
|
||||||
|
"manage.ekman.tos": "10.255.241.99/32",
|
||||||
|
"k8s.oceanbox.tos": "10.255.241.200/32",
|
||||||
|
"k8s.ekman.tos": "10.255.241.99/32",
|
||||||
|
"k8s.ceph.tos": "10.255.241.29/32",
|
||||||
|
"printer.office.tos": "10.132.46.108/32",
|
||||||
|
"net.office.tos": "10.132.46.0/24",
|
||||||
|
"net.dc.tos": "10.255.241.0/24",
|
||||||
|
"net.100gbe.tos": "10.255.244.0/24",
|
||||||
|
"net.mgmt.tos": "10.255.240.0/24",
|
||||||
|
"net.dc.vtn": "172.16.239.0/24",
|
||||||
|
"net.mgmt.vtn": "172.16.238.0/24",
|
||||||
|
},
|
||||||
|
"acls": [
|
||||||
|
{
|
||||||
|
"action": "accept",
|
||||||
|
"src": [
|
||||||
|
"group:admin",
|
||||||
|
"group:devops",
|
||||||
|
"group:oceanographer",
|
||||||
|
"group:manager",
|
||||||
|
"group:dev",
|
||||||
|
],
|
||||||
|
"dst": [
|
||||||
|
"100.64.0.0/24:0",
|
||||||
|
"100.64.0.0/24:22",
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"action": "accept",
|
||||||
|
"src": [ "ekman", "net.dc.tos" ],
|
||||||
|
"dst": [
|
||||||
|
"net.dc.vtn:*",
|
||||||
|
"100.64.0.0/24:0",
|
||||||
|
"100.64.0.0/24:22",
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"action": "accept",
|
||||||
|
"src": [ "rossby", "net.dc.vtn" ],
|
||||||
|
"dst": [
|
||||||
|
"net.dc.tos:*",
|
||||||
|
"100.64.0.0/24:0",
|
||||||
|
"100.64.0.0/24:22",
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"action": "accept",
|
||||||
|
"src": [ "group:admin" ],
|
||||||
|
"dst": [
|
||||||
|
"net.dc.tos:*",
|
||||||
|
"net.mgmt.tos:*",
|
||||||
|
"net.100gbe.tos:*",
|
||||||
|
"net.office.tos:*",
|
||||||
|
"net.dc.vtn:*",
|
||||||
|
"net.mgmt.vtn:*",
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"action": "accept",
|
||||||
|
"src": [ "group:devops" ],
|
||||||
|
"dst": [
|
||||||
|
"k8s.oceanbox.tos:6443",
|
||||||
|
"k8s.ekman.tos:4443",
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"action": "accept",
|
||||||
|
"src": [
|
||||||
|
"group:admin",
|
||||||
|
"group:devops",
|
||||||
|
"group:oceanographer",
|
||||||
|
"group:manager",
|
||||||
|
"group:dev",
|
||||||
|
],
|
||||||
|
"dst": [
|
||||||
|
"ingress.oceanbox.tos:443",
|
||||||
|
"ingress.ekman.tos:443",
|
||||||
|
"printer.office.tos:631",
|
||||||
|
"10.255.241.99/32:22",
|
||||||
|
"10.255.241.100/32:22",
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"action": "accept",
|
||||||
|
"src": [
|
||||||
|
"group:admin",
|
||||||
|
"group:devops",
|
||||||
|
"group:oceanographer",
|
||||||
|
"group:manager",
|
||||||
|
"group:dev",
|
||||||
|
],
|
||||||
|
"dst": [
|
||||||
|
"100.64.0.0/24:*",
|
||||||
|
"autogroup:internet:*",
|
||||||
|
]
|
||||||
|
},
|
||||||
|
]
|
||||||
|
}
|
||||||
|
kind: ConfigMap
|
||||||
|
metadata:
|
||||||
|
annotations:
|
||||||
|
argocd.argoproj.io/tracking-id: headscale:/ConfigMap:headscale/headscale-acl
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/instance: headscale
|
||||||
|
app.kubernetes.io/managed-by: Helm
|
||||||
|
app.kubernetes.io/name: headscale
|
||||||
|
app.kubernetes.io/version: v0.25.0
|
||||||
|
helm.sh/chart: headscale-0.16.0
|
||||||
|
name: headscale-acl
|
||||||
|
namespace: headscale
|
||||||
|
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
image:
|
image:
|
||||||
repository: ghcr.io/juanfont/headscale
|
repository: ghcr.io/juanfont/headscale
|
||||||
pullPolicy: IfNotPresent
|
pullPolicy: IfNotPresent
|
||||||
tag: v0.27.1
|
tag: v0.28.0
|
||||||
|
|
||||||
args: ["serve"]
|
args: ["serve"]
|
||||||
|
|
||||||
@@ -253,8 +253,6 @@ configMaps:
|
|||||||
{ "action": "accept", "src": [ "hilde.iversen@oceanbox.io" ], "dst": [ "hilde.iversen@oceanbox.io:*" ] },
|
{ "action": "accept", "src": [ "hilde.iversen@oceanbox.io" ], "dst": [ "hilde.iversen@oceanbox.io:*" ] },
|
||||||
{ "action": "accept", "src": [ "pal.herstad@oceanbox.io" ], "dst": [ "pal.herstad@oceanbox.io:*" ] },
|
{ "action": "accept", "src": [ "pal.herstad@oceanbox.io" ], "dst": [ "pal.herstad@oceanbox.io:*" ] },
|
||||||
{ "action": "accept", "src": [ "faith.iha@oceanbox.io" ], "dst": [ "faith.iha@oceanbox.io:*" ] },
|
{ "action": "accept", "src": [ "faith.iha@oceanbox.io" ], "dst": [ "faith.iha@oceanbox.io:*" ] },
|
||||||
{ "action": "accept", "src": [ "elianne.ersdal@oceanbox.io" ], "dst": [ "elianne.ersdal@oceanbox.io:*" ] },
|
|
||||||
{ "action": "accept", "src": [ "hanskristian.djuve@oceanbox.io" ], "dst": [ "hanskristian.djuve@oceanbox.io:*" ] },
|
|
||||||
// s/"\([^"]*\)"/{ "action": "accept", "src": [ "\1" ], "dst": [ "\1:*" ] },
|
// s/"\([^"]*\)"/{ "action": "accept", "src": [ "\1" ], "dst": [ "\1:*" ] },
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -266,6 +264,7 @@ configMaps:
|
|||||||
{ "name": "maps.oceanbox.io", "type": "A", "value": "10.255.241.11" },
|
{ "name": "maps.oceanbox.io", "type": "A", "value": "10.255.241.11" },
|
||||||
{ "name": "maps.beta.oceanbox.io", "type": "A", "value": "10.255.241.11" },
|
{ "name": "maps.beta.oceanbox.io", "type": "A", "value": "10.255.241.11" },
|
||||||
{ "name": "maps.dev.oceanbox.io", "type": "A", "value": "10.255.241.11" },
|
{ "name": "maps.dev.oceanbox.io", "type": "A", "value": "10.255.241.11" },
|
||||||
|
{ "name": "atlantis.beta.oceanbox.io", "type": "A", "value": "10.255.241.11" },
|
||||||
{ "name": "codex.adm.oceanbox.io", "type": "A", "value": "10.255.241.11" },
|
{ "name": "codex.adm.oceanbox.io", "type": "A", "value": "10.255.241.11" },
|
||||||
{ "name": "codex.dev.oceanbox.io", "type": "A", "value": "10.255.241.11" },
|
{ "name": "codex.dev.oceanbox.io", "type": "A", "value": "10.255.241.11" },
|
||||||
|
|
||||||
@@ -353,7 +352,6 @@ configMaps:
|
|||||||
{ "name": "mrtz-sorcerer.ekman.oceanbox.io", "type": "A", "value": "10.255.241.99" },
|
{ "name": "mrtz-sorcerer.ekman.oceanbox.io", "type": "A", "value": "10.255.241.99" },
|
||||||
{ "name": "mrtz-sorcerer.dev.vtn.obx", "type": "A", "value": "172.16.239.221" },
|
{ "name": "mrtz-sorcerer.dev.vtn.obx", "type": "A", "value": "172.16.239.221" },
|
||||||
{ "name": "mrtz-plume.ekman.oceanbox.io", "type": "A", "value": "10.255.241.99" },
|
{ "name": "mrtz-plume.ekman.oceanbox.io", "type": "A", "value": "10.255.241.99" },
|
||||||
{ "name": "mrtz-diadash.ekman.oceanbox.io", "type": "A", "value": "10.255.241.99" },
|
|
||||||
{ "name": "simkir-atlantis.dev.oceanbox.io", "type": "A", "value": "10.255.241.11" },
|
{ "name": "simkir-atlantis.dev.oceanbox.io", "type": "A", "value": "10.255.241.11" },
|
||||||
{ "name": "simkir-maps.dev.oceanbox.io", "type": "A", "value": "10.255.241.11" },
|
{ "name": "simkir-maps.dev.oceanbox.io", "type": "A", "value": "10.255.241.11" },
|
||||||
{ "name": "simkir-codex.dev.oceanbox.io", "type": "A", "value": "10.255.241.11" },
|
{ "name": "simkir-codex.dev.oceanbox.io", "type": "A", "value": "10.255.241.11" },
|
||||||
|
|||||||
@@ -1,3 +0,0 @@
|
|||||||
jobset:
|
|
||||||
enabled: true
|
|
||||||
autosync: false
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
jobset:
|
|
||||||
enabled: false
|
|
||||||
autosync: false
|
|
||||||
@@ -1,44 +0,0 @@
|
|||||||
{{- if .Values.clusterConfig.argo.enabled }}
|
|
||||||
apiVersion: argoproj.io/v1alpha1
|
|
||||||
kind: Application
|
|
||||||
metadata:
|
|
||||||
name: jobset
|
|
||||||
namespace: argocd
|
|
||||||
spec:
|
|
||||||
destination:
|
|
||||||
namespace: jobset-system
|
|
||||||
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: jobset.yaml.gotmpl
|
|
||||||
project: sys
|
|
||||||
syncPolicy:
|
|
||||||
managedNamespaceMetadata:
|
|
||||||
labels:
|
|
||||||
component: sys
|
|
||||||
syncOptions:
|
|
||||||
- CreateNamespace=true
|
|
||||||
- ApplyOutOfSyncOnly=true
|
|
||||||
- ServerSideApply=true
|
|
||||||
{{- if .Values.jobset.autosync }}
|
|
||||||
automated:
|
|
||||||
prune: true
|
|
||||||
{{- end }}
|
|
||||||
ignoreDifferences:
|
|
||||||
- group: ""
|
|
||||||
kind: Secret
|
|
||||||
name: jobset-webhook-server-cert
|
|
||||||
namespace: default
|
|
||||||
jsonPointers:
|
|
||||||
- /data
|
|
||||||
{{- end }}
|
|
||||||
@@ -1,4 +0,0 @@
|
|||||||
prometheus:
|
|
||||||
enable: false
|
|
||||||
certManager:
|
|
||||||
enable: false
|
|
||||||
@@ -36,13 +36,6 @@ spec:
|
|||||||
# selfHeal: false
|
# selfHeal: false
|
||||||
{{- end }}
|
{{- end }}
|
||||||
ignoreDifferences:
|
ignoreDifferences:
|
||||||
- group: apiextensions.k8s.io
|
|
||||||
kind: CustomResourceDefinition
|
|
||||||
jsonPointers:
|
|
||||||
- /metadata/managedFields
|
|
||||||
- /metadata/generation
|
|
||||||
- /metadata/annotations
|
|
||||||
- /metadata/labels
|
|
||||||
- group: batch
|
- group: batch
|
||||||
kind: CronJob
|
kind: CronJob
|
||||||
jqPathExpressions:
|
jqPathExpressions:
|
||||||
|
|||||||
@@ -1 +0,0 @@
|
|||||||
{{- /* HTTPRoute and CiliumNetworkPolicy are managed by the makai chart template */ -}}
|
|
||||||
@@ -28,9 +28,6 @@ spec:
|
|||||||
- name: HELMFILE_FILE_PATH
|
- name: HELMFILE_FILE_PATH
|
||||||
value: makai.yaml.gotmpl
|
value: makai.yaml.gotmpl
|
||||||
syncPolicy:
|
syncPolicy:
|
||||||
managedNamespaceMetadata:
|
|
||||||
labels:
|
|
||||||
shared-gateway-access: "true"
|
|
||||||
syncOptions:
|
syncOptions:
|
||||||
- CreateNamespace=true
|
- CreateNamespace=true
|
||||||
- ApplyOutOfSyncOnly=true
|
- ApplyOutOfSyncOnly=true
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
replicaCount: 1
|
replicaCount: 1
|
||||||
image:
|
image:
|
||||||
tag: "d5e61949-debug"
|
tag: "436608af-debug"
|
||||||
env:
|
env:
|
||||||
- name: APP_VERSION
|
- name: APP_VERSION
|
||||||
value: "0.0.0"
|
value: "0.0.0"
|
||||||
|
|||||||
@@ -1,46 +0,0 @@
|
|||||||
replicaCount: 1
|
|
||||||
image:
|
|
||||||
tag: "d5e61949-debug"
|
|
||||||
env:
|
|
||||||
- name: APP_VERSION
|
|
||||||
value: "0.0.0"
|
|
||||||
- name: LOG_LEVEL
|
|
||||||
value: "1"
|
|
||||||
{{- if .Values.clusterConfig.gatewayAPI.enabled }}
|
|
||||||
ingress:
|
|
||||||
enabled: false
|
|
||||||
className: "nginx"
|
|
||||||
httpRoute:
|
|
||||||
enabled: true
|
|
||||||
parentRefs:
|
|
||||||
- name: shared-gateway
|
|
||||||
namespace: kube-system
|
|
||||||
sectionName: https
|
|
||||||
hostnames:
|
|
||||||
- makai.oceanbox.io
|
|
||||||
rules:
|
|
||||||
- matches:
|
|
||||||
- path:
|
|
||||||
type: PathPrefix
|
|
||||||
value: "/"
|
|
||||||
{{- else }}
|
|
||||||
ingress:
|
|
||||||
enabled: true
|
|
||||||
className: "nginx"
|
|
||||||
annotations:
|
|
||||||
cert-manager.io/cluster-issuer: letsencrypt-production
|
|
||||||
nginx.ingress.kubernetes.io/backend-protocol: HTTP
|
|
||||||
nginx.ingress.kubernetes.io/enable-cors: "true"
|
|
||||||
nginx.ingress.kubernetes.io/proxy-buffer-size: 128k
|
|
||||||
nginx.ingress.kubernetes.io/ssl-redirect: "true"
|
|
||||||
oceanbox.io/expose: internal
|
|
||||||
hosts:
|
|
||||||
- host: makai.oceanbox.io
|
|
||||||
paths:
|
|
||||||
- path: /
|
|
||||||
pathType: ImplementationSpecific
|
|
||||||
tls:
|
|
||||||
- hosts:
|
|
||||||
- makai.oceanbox.io
|
|
||||||
secretName: makai-tls
|
|
||||||
{{- end }}
|
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
"archmaesterUrl": "https://maps.dev.oceanbox.io",
|
"archmaesterUrl": "https://atlantis.beta.oceanbox.io",
|
||||||
"appName": "plume",
|
"appName": "plume",
|
||||||
"appEnv": "staging",
|
"appEnv": "staging",
|
||||||
"appNamespace": "staging-plume",
|
"appNamespace": "staging-plume",
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
replicaCount: 1
|
replicaCount: 1
|
||||||
image:
|
image:
|
||||||
repository: "git.oceanbox.io/oceanbox/plume/plume"
|
repository: "git.oceanbox.io/oceanbox/plume/plume"
|
||||||
tag: v1.6.13
|
tag: 9d99f7cf-debug
|
||||||
podAnnotations:
|
podAnnotations:
|
||||||
dapr.io/enabled: "true"
|
dapr.io/enabled: "true"
|
||||||
dapr.io/app-id: "staging-plume"
|
dapr.io/app-id: "staging-plume"
|
||||||
|
|||||||
@@ -1,2 +1,3 @@
|
|||||||
prometheus:
|
prometheus:
|
||||||
snitchUrl: "https://nosnch.in/bceb803932"
|
snitchUrl: "https://nosnch.in/bceb803932"
|
||||||
|
|
||||||
|
|||||||
@@ -14,7 +14,6 @@ prometheus:
|
|||||||
- marcusolsson-static-datasource
|
- marcusolsson-static-datasource
|
||||||
- marcusolsson-calendar-panel
|
- marcusolsson-calendar-panel
|
||||||
- grafana-clock-panel
|
- grafana-clock-panel
|
||||||
- redis-datasource
|
|
||||||
thanos:
|
thanos:
|
||||||
enabled: true
|
enabled: true
|
||||||
coredns:
|
coredns:
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user