Skip to content

Commit

Permalink
kind docs, umami manifests, argocd app-of-apps plus umami app
Browse files Browse the repository at this point in the history
Signed-off-by: greg pereira <grpereir@redhat.com>
  • Loading branch information
Gregory-Pereira committed Dec 6, 2024
1 parent e11339f commit 895e3eb
Show file tree
Hide file tree
Showing 19 changed files with 315 additions and 1 deletion.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ npm-debug.log
!mock-cert.pem
.env
*.env
!example.umami-secret.env
coverage
lib
taxonomy
Expand Down
19 changes: 19 additions & 0 deletions argocd/overlays/applicaitons/app-of-apps.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: app-of-apps-ilab
spec:
destination:
namespace: openshift-gitpos
name: in-cluster
project: default
source:
path: argocd/overlays/applicaitons
repoURL: https://github.com/instructlab/ui.git
targetRevision: HEAD
syncPolicy:
syncOptions:
- Validate=false
- ApplyOutOfSyncOnly=true
# automated:
# selfHeal: true
7 changes: 7 additions & 0 deletions argocd/overlays/applicaitons/kustomization.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
namespace: openshift-gitops
resources:
# - prod.yaml # currently not deployed via argo
- qa.yaml
- umami.yaml
2 changes: 1 addition & 1 deletion argocd/overlays/applicaitons/prod.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ metadata:
name: ilab-ui-stack-production
spec:
destination:
name: in-cluster
name: in-cluster # THIS NEEDS TO CHANGE once we get prod on ARGO
namespace: instructlab
project: default
source:
Expand Down
17 changes: 17 additions & 0 deletions argocd/overlays/applicaitons/umami.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: umami
spec:
project: default
source:
repoURL: https://github.com/instructlab/ui.git
path: deploy/k8s/overlays/openshift/umami
targetRevision: main
destination:
namespace: umami
name: in-cluster
syncPolicy:
automated:
selfHeal: true

79 changes: 79 additions & 0 deletions deploy/k8s/base/umami/deployment.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: umami
labels:
app: umami
spec:
replicas: 1
selector:
matchLabels:
app: umami
template:
metadata:
labels:
app: umami
spec:
containers:
- name: postgresql
image: registry.redhat.io/rhel9/postgresql-15:9.5-1733127512
env:
- name: POSTGRESQL_DATABASE
valueFrom:
secretKeyRef:
name: umami-secret
key: POSTGRESQL_DATABASE
- name: POSTGRESQL_USER
valueFrom:
secretKeyRef:
name: umami-secret
key: POSTGRESQL_USER
- name: POSTGRESQL_PASSWORD
valueFrom:
secretKeyRef:
name: umami-secret
key: POSTGRESQL_PASSWORD
ports:
- containerPort: 5432
name: postgres
livenessProbe:
exec:
command: ["pg_isready"]
initialDelaySeconds: 5
periodSeconds: 10
readinessProbe:
exec:
command: ["pg_isready"]
initialDelaySeconds: 5
periodSeconds: 10
volumeMounts:
- name: db-data
mountPath: /var/lib/postgresql/data
- name: umami
image: ghcr.io/umami-software/umami:postgresql-latest
env:
- name: DATABASE_URL
valueFrom:
secretKeyRef:
name: umami-secret
key: DATABASE_URL
- name: DATABASE_TYPE
value: postgresql
- name: APP_SECRET
valueFrom:
secretKeyRef:
name: umami-secret
key: APP_SECRET
- name: HASH_SALT
valueFrom:
secretKeyRef:
name: umami-secret
key: HASH_SALT
- name: PORT
value: "3001"
ports:
- containerPort: 3001
volumes:
- name: db-data
persistentVolumeClaim:
claimName: umami-postgresql-db-data
9 changes: 9 additions & 0 deletions deploy/k8s/base/umami/kustomization.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
namespace: umami
resources:
- deployment.yaml
- namespace.yaml
- postgresql-pvc.yaml
- postgresql-service.yaml
- umami-service.yaml
6 changes: 6 additions & 0 deletions deploy/k8s/base/umami/namespace.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
apiVersion: v1
kind: Namespace
metadata:
name: umami
labels:
name: umami
13 changes: 13 additions & 0 deletions deploy/k8s/base/umami/postgresql-pvc.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: umami-postgresql-db-data
labels:
app: umami
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 10Gi
volumeMode: Filesystem
13 changes: 13 additions & 0 deletions deploy/k8s/base/umami/postgresql-service.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
apiVersion: v1
kind: Service
metadata:
name: umami-db
labels:
app: umami
component: db
spec:
ports:
- port: 5432
name: postgres
selector:
app: umami
15 changes: 15 additions & 0 deletions deploy/k8s/base/umami/umami-service.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
---
apiVersion: v1
kind: Service
metadata:
name: umami
labels:
app: umami
component: web
spec:
ports:
- name: web
port: 3001
selector:
app: umami
type: ClusterIP
25 changes: 25 additions & 0 deletions deploy/k8s/overlays/kind/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
# Introduction

Kind is a tool that can allow you to emulate a local kuberenetes cluster. These manifests will help you provision a correctly configured kind cluster and apply the resources.

# Usage

## Building the cluster

You can either create a default cluster, or use the setup we have to mimic our openshift dpeloyment more closely: `kind create cluster --config kind.yaml`.

## Applying the kind-ingress manifests

If you dont care about using an ingress and choose to hit the services directly, use host networking on your container runtime on which you are using kind, or some other
edge case which would remove the necesity of ingresses, you can simple ignore the [kind-ingress.yaml](./kind-ingress.yaml). However if you do want to use ingresses
(which are a part of both the default UI stack and the umami metrics stack), then you should deploy the kind ingress: `kubectl create -f kind-ingress.yaml`.
This will take some time to deploy, so now we can simply wait for it:
```bash
kubectl wait --namespace ingress-nginx \
--for=condition=ready pod \
--selector=app.kubernetes.io/component=controller \
--timeout=90s
```

Once this goes through, you should review a message similar to the following letting you know you can proceed:
`pod/ingress-nginx-controller-68c4c94464-jvnjf condition met`.
17 changes: 17 additions & 0 deletions deploy/k8s/overlays/kind/umami/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# Notes

To try to deploy Umami via kind you must first create and apply the manifests 1 directory up. After that, creating umami within kind is very straightforward.
Simply set your `.umami-secret.env` with your values from the template `example.umami-secret.env` in this directory. After this, we need to import the
container image that we use for the Umami postgresql database.

To do this, we first start by pulling down the image
```bash
PSQL_IMAGE="registry.redhat.io/rhel9/postgresql-15:9.5-1733127512"
docker pull ${PSQL_IMAGE}
```

If you provisioned a default kind cluster, you can load your image onto it as follows: `kind load docker-image ${PSQL_IMAGE}`.
However if you provisioned a kind cluster with the [kind.yaml](../kind.yaml) configuration we provided in the directory above this, then you will need to
specify the name of the cluster as well: `kind load docker-image ${PSQL_IMAGE} --name instructlab-ui`

After that you can apply the Umami manifests: `kustomize build . | kubectl apply -f -`.
15 changes: 15 additions & 0 deletions deploy/k8s/overlays/kind/umami/example.umami-secret.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
apiVersion: v1
kind: Secret
metadata:
name: umami-secret
labels:
app: umami
type: Opaque
stringData:
DATABASE_TYPE: postgresql
POSTGRESQL_DATABASE: umami
POSTGRESQL_USER: umami
POSTGRESQL_PASSWORD: umami
APP_SECRET: app_secret
HASH_SALT: hash_salt
DATABASE_URL: postgresql://umami:umami@umami-db:5432/umami
7 changes: 7 additions & 0 deletions deploy/k8s/overlays/kind/umami/kustomization.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
namespace: umami
resources:
- ../../../base/umami
- umami-ingress.yaml
- example.umami-secret.yaml
20 changes: 20 additions & 0 deletions deploy/k8s/overlays/kind/umami/umami-ingress.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: umami-ingress
annotations:
kubernetes.io/ingress.class: nginx
nginx.ingress.kubernetes.io/rewrite-target: /
spec:
ingressClassName: nginx
rules:
- host: umami.local
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: umami
port:
number: 3001
8 changes: 8 additions & 0 deletions deploy/k8s/overlays/openshift/umami/kustomization.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# Umami will be deployed on the QA cluster but host metrics for both prod and QA
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
namespace: umami
resources:
- ../../../base/umami
- umami.sealedsecret.yaml
- umami-route.yaml
18 changes: 18 additions & 0 deletions deploy/k8s/overlays/openshift/umami/umami-route.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
apiVersion: route.openshift.io/v1
kind: Route
metadata:
name: umami
labels:
name: umami
spec:
host: umami.qa.instructlab.ui
port:
targetPort: 3001
tls:
termination: edge
to:
kind: Service
name: umami
weight: 100
wildcardPolicy: None

25 changes: 25 additions & 0 deletions deploy/k8s/overlays/openshift/umami/umami.sealedsecret.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
apiVersion: bitnami.com/v1alpha1
kind: SealedSecret
metadata:
creationTimestamp: null
name: umami-secret
namespace: umami
spec:
encryptedData:
ADMIN_PASSWORD: AgCKiqvuCtrkZW/NjwU+bNcnYGmSoLkqRB/Y+JUJA+HLUuJdBep4yi2z2eSOWbjOhPfE20g2LmCG2DcRi8+RgTbJIihHkLfmIQsnM9K3XIWj6EGke5Qjh/GfWiF1p2idJM63YD6eInCBm2HimjdDkTr8v6JQ2aU918sSntgFGs5g6RVtZ8BC1EB+hvFW00CIDRWExdGTfBqIgR8Z5bVMK3cVT1HdZj6AklUBp2iR2aCWN4KCsAWVh2jmzkXdmg0Id2c9phsfI11GxLFIWwou3VcfdbCCRnN3n+jU+CkCfJ3dDYUGFbQTQPcNI47joiLN3bAT4UNG8XhSBMq7ZmOBOK6vKy6bDfa0+KN8IKwGajZd+cGZ3jgTuQ9bmpwqztdnpgSaVx8bTSUo9yMfgcuMHlGezxzwGQdnOfRlAryq3NTqGuUJkgyxEyM2w1iGaTFOvD9j0W1tIl5JbExz0Jp5ObNYDeSrnjWA+O7zthE5oKaNsPPfU4y6IGGyWYV40X3wuZpBtJkdPu3nFLVqZUCKoiB7pT554/fqtqgGip/1dD+Q0eCkRszS9G140ZTGv9wjel3yvfR1C0jxM1gpeI4NMZArvd2Fzn6iNoCharzfqVnIAAqmeKkpGU/YEmgTxqoLIT3R6+okWIdt8QgcJpU3oKIxmoo1BNSBtJe+46jO290W87oEvOYlASNi4b0jpSQJroso/hIWJzDEvYrdxaQpknVP8mErBDbWmG1Cl+KuJw==
APP_SECRET: AgCIg+JyWbM5O0oB/4h3/KVdVlLYU7HnbRz6WsCnriPAVlhs2rRwObNVPHuWxYrKbng6ihCZftxgdIKQhrY73v0cYKyEQlK3zmpeIktT+YXctLhLqrVYPU8pc34hh5DvFvYDzvRwYg8rBAR6gasPlnHQ/u3vL+wsRmb9Rf5Oeu1NQz0NdGv7wU4ZkRB0ZfZ0vBwYYJHRgXA6YKbNKzZVKbjQZdjL6i5ZmgiJ9goKnoE1kKdM6HcLhiOjQFyzlMu3ZG6om3hU+7FUCarakuRkaMqFl5OIi/rfFd3YY9b6E+lLsOhKqKgLnxS3w1uYXZrDDPAjadns0neLzHRmN7ACgzt9sync3f8tw9qUMAC0/nmZbHUcSltiEYfu3ZEiR1o69+MvjA7xwa17XnuCjsZvx0hp+I/vumsh3smiyiiYWAvOdbE66mh3NCENBBQIcWBFxpGBIhswJL1SWsvw2yb4rzTBm0hiL7weha6tqm11ioauWBDK2bznzBVh/qU+1yAV1XrIcPeKgosDlECOWYHWs4tmPOnOwyINgAnZtyHLOgT+Oh5F+qkh6U1pXMTAkVRIJNTAYTPGf1p026NfiGnglVSk5XfeRxsi0m9qaPSb4ULjDcPKJl+jxNbxTR2veiiAP6RwLqM1WpRE8rWaaqmZiH5JWFnOtkamuRwh2MVqpmB1gj1OzoywvuAN9uouLFg/T5853gm1FHt5z1wB5X9w
DATABASE_TYPE: AgARB8z2qrRjbj+oK9f5povXhCW4pvivcH4L9qfLN0KEobSIT8Eh2aGimvTvX5tMQ5Sr12og8x5oe1x7Xs3mwZvZLNKaS3gAGKPEjiJSXmb8Fm0Sjm6XQ0IgX4PMfnwqGaVA7CMRpGwOjOxHur91TnIffQsZYDXVxD9Qw3WkW6lvtMAxnIXp0fuKlWVcNkuEPY9dsk6s00pjA+/VN/5pjJemZkc0czcO5jZQ8pN606gSuhFdg4KZO9fPs286NHHbU/oMLFkxzLAGISvnQrLnVMrqnW7XV9J6Weo+4rB9ok5a3iodoQ9JBQBlvNipto35VEUpRQNDyMRxkzQUtK8kro9OmW1wTTGZsTffKsxHN0Jge3dw2/qOi0MBjX8QViN9/Mv2uyDB2Wa07i7hnEjrba4tgqoABoskittk18DJ1uctMIXFml14P9nKsQ9NN8E1Oyo8X6cVzBi5KIwDJhFx8SQzKklFRD284eP/trzjKHcqY4F+P0WylAYflcpwL0BshEi3VPIiZyAfQczaesGClMeglPnCJ8zFE7OPXvn633sIwo2TByO3r7RLl0ZRBzmy19+/UKAMyFXacolKclvsC9wUP1tzcRxPyzRzMlEDV+6cn0MBNoWgNpw9Rr7JJoEMlWRyHErq3Xy5bJRuzfuDmtIXzgckpWoPg9hTimE91E9xf2N1g9ovlrws+tYpkTFQkzuxsNHXd+1k21YxmA==
DATABASE_URL: AgCexLYEJnWkklIhAJX35KrrBH/OT+vi4hJBpQv/mOxoK7iCUllRKK1y3iNGmggvL9PBvDFH9YJRQ+/Yd9ufhrpc/a8/BI+oSrjtLNuwF4QFaQFBqz1DoN2jX/wbuJAgn87DJ81RRugPgwvrub8OF1OA9g4vdja+0RvUl9m3TwfaAyHnOq5IMwVMgUGu9h6WWhMvhmt3ROEDoASSAfLNGkeOoYbxboX2gllgBis3sU5jBJ2d+iddkUpniD/lGlmLqDUUm44l2BovwaJ4M2i13RmZC12e4kY83tQFVEqDqT+P63FmIVBd1nLpdBujN2E1Krrac0fLa+H1GX2k1XQ0ao6d+72pJHL5f9882RDD/y448L+6fTN6CCkDqfVT1VQy08jNyHHZP3MMN3Q9psn4Ey+CKKt/t+1Puyo1IEXBspO4dAa4qHEjLJYJO1eMCfpez2E2XysdJvFJ/FqFXnT9EJAyRwUK16HNK6dbFR8sHU2jQhoRqmyjy5DXu0LS+eCPMHyLwtVkBn0TZJqnYv3HHgJQVI5al8QWwRJq7fYU8NMWe/8HF3aBUmVDY/ACVqgoLKFrfls9pcr8ENKG+HRy6gwhqISbFDhQjl1uyEJDZ+OqnaP1q9B+nzujCystaDTd1x7Y0NbN/jdWEY8SlGhee6+jH9fQSCvQQbdAdcoik4HlxpOr+mWT5bVJvgoPrrNSCR9sI64Vl9n6cUctzCjDKWqlNxCO1gaNuQp8QPJ/Lpj3GidL6sssGl+xV+IVAlR9
HASH_SALT: AgCGet4Cbyhhh56K3a32s8XGTQa8LZiJFEdXMON+NqknJXXcMlYBeeM26I/Id1frRKZyQ0CrhJVXmvHi9UcB9GeGmJqMsIsZ19rH3CCMDgRXf98h0ickhkJyyGKXb4pxSGQuHJ6KNwKuhWLGX6BHP9ZyeFm6P698ThUa4RFireugKTpHcdGl/MFVXwDNgBi8761Ku0FCU+zTfXwsZCTRqC0NGa9lahrTDiW47VSRg+YE6xfRH9ib5UXUBTQwrFXb/zpsHe+4WAt9Ffe2xj3Lg1Ug33e5ukkRuYyqSXN6nX80u+9uavE+ugW/DRGrFSVyyb7vptQcQ76KU31wRyG+D7UnqkMKFY3Dze+cwvOYtwGdBbwJIL6xm5piuKMGQY12dEvf3u+XRgCMKjx4G9tBqfnd4LeQ/CCN034r0A94bt9ClvYpMogEyNMRk5g27ubGRFOT69akIUaQF7toD/otM+5AquvuUhvFdt1M9q6MaAq1bOqhanRy2It4iLsnGOliAJKqAJi67o77RFM0zIeDUBCBWzj3x4uS/BSBNfTh5Blf3Pr06mbhx/zaHJCKBXIVBNIvV5lSvDBfG5zYAvJszWSuv48AbeN0JlqhCfJ1IBWwK/IoyUbHYDPkHHlaJ8ViQi2RZXHk9jZG72mgetSARZ+HuMr/kX0Z3jQBF+zKov+/pNLiJmhVgQznR64bvU+5td4KU2NbluGbhEgg2x4=
POSTGRESQL_DATABASE: AgBnyQJFdd2JRibSUnOLx3DxQUI5LLnpropRC1CygcI43vZ/mwCa82xW8e4XCKuxoWweFVjadDHZ8VZCEMdmoUHRttgVzwY1JqvlwjnbnAilPUjqgppdBc7zp1cv7eIpywapXNCjd8Axnp9vCITFR9R0chAXmf//NB69oDJZOUvS1U0TDvG6QVkhMuwQfy+iQ/WWzOUP3msr8Klnepdvg5lyE5Dtibl567dJ+TLCs8lJCD4Q8/IXQhonGBekBlkm2AZCSkvWbRH2cruvHM35qBtN1HZxiEqbCOr0SAjD2vsvPPBPjyIVg1aORPiO6A2pzfp7UJx7R/4HCCLQw8TYuOfloqC0qm4Mu2JT/o/qVQkNBBElz4+x+YWiU/eNF+P6u9xOfLaaIxkSgZC+uYLSv8D76lI3moSZBxKPbvHO85r7kZfzApc0+R3VhcX+cTHmOjfC7dOsB8Af+tSR1cEMHX1HDIcLOsViA3k9BvA+tNwmxu/vRCSuS9WaPnnyVMUye/e4duEjrYcDr9F2Aj28mPDo1ty76n+XTg15bypK5dfl+HwXclinj7FSCwWXuRpFC50qQn4Zng2wBygccNm5XlM2P41Hs2oRKd2EwVe/FuQZxN9cLswKIRfucsNv4BH6i0BXP4nNyq969VBM3E7baPvtg71MeCOf9GGpt3fxYNH48tpgJpS1ma4JpLm+F14nS+k/4Wubcw==
POSTGRESQL_PASSWORD: AgB3KVdEMngd+Ztm3htZvcUsO3a+KqtO/LEX1b8NOymtbTBr6oWM1y1h6v2Le+CK7M2ExghnMPmDdQOXeWgWeSY1cNMoTDIS8EzbAd9XzNr3gYpWXCTopLFXTbPst0gEgP2dUcJS59jxC6r0JIYbzxP8G+wAPtFym1T7D4Ik6bf6LrQ9kQHGtnZHBz4q/fRuSk4hbIjHZ4OXNyjJ4ZKffOXcmdGsv0+dhLUzNS+c2/yQRx+m0NFJZkP49v/yIgkGw5GaqwtYswfVlhsjI+Biw/0H9wZUM9WMkuX1BwIBp/f5942rga9rv+whZmAT2MS4h7UJAwoyCbiV/PG/NOXXKiJA7nC6HZKZqxu/NBHrLKFVLX1ZXVKd6T0zMHmhFnpqvMJkKPPBduU0nn9nIdzldj+QOl263WCLjCcdUXe82UFC5Lzc4zmJL2sBc0j+pyuWJYYqUI8v1x0qxcsbZFbEeDbazj3GY7eixs/mFQX4YC6ZJKUlXUXK9mV3FvyDjC7hp8YNSrw85w4xnmaY37TdiQT5jxsTzZSgY7mLRaB7RU0AahC3ZCAe0kCKmsM2JJdtXwARJ1RDSV4t7zmXsXTpZHu2hwkPBiENswJ7DvcLdjfmUKc3rQGKI7PiK5h7/csLfEN6Q4c1oSW3d5pYJpMvquRdr1PsBctDBPwTIKevOkyEsM/ueC6r3d7S1LSJhVkXEuFLeG7TSw==
POSTGRESQL_USER: AgCaanMEfhIe8LtCi01R6GSPT+A1lOaoDaLaZ5JS/8Ar7vmCUbrT+pG20Q+DKsUOcP/ke8r29Zpr1ZBl8lLKWFp8PaC9jw1KP3s/zcukKuLwEhNs73ldu4U757g6xLwB8+zYcgCWQA9J6flKq+9HLREki7CORtJT9BPo75TxIOBH8Ya/kT8u/+nlYqvDxAWsPeWCBljzeiKUtoLkXySCl5qhRwwyvUsuffMTHIouOtY/Y1OEuIhSvCi01A1kL5/vddAUtJYxvp+Kh2TuEU//g0kjXTUo8sCbnoj36I/trFplSZTe9680k1rhYK4H2Cca98t0JzPuwHUlg4akm5JORZ/BxQMKDCcuaESZIn4bC4Yoq7LUPrDhJpGqgiZSHFlqLs46UPg/534sc1HacmVr2qprHWNEqkwVHoej28YqWTJlP4XEqTnPQK645wMBvyhCKXrwod6pUmAaQZS7KA7giFCAlZxyVJXpp2bvTpG36H9BG/5FwzC8jIZKzZj9yFmkdKiI6CyMDuDrVA7qbpvVprmtqE2kRRgxOTEazgThMYMnLt9hdJiRIAv4JE+rwk8n07W+cOsfxAXLwaAGcQvZPOhQKnB2Rb2hWa7SYmJt3GJV64LrkUpYtRWQ204xhY8DIYVzXGQ8GY6ziFkrZe0TCdVeWbxLdB01rXWKXnb1chfCB2GVD0ZUuUmVL250a9MOwhTy31zzOw==
template:
metadata:
creationTimestamp: null
labels:
app: umami
name: umami-secret
namespace: umami
type: Opaque

0 comments on commit 895e3eb

Please sign in to comment.