install offen

This commit is contained in:
Tobias Brunner 2024-05-15 13:14:01 +02:00
parent a89acd7f90
commit 20c827e702
Signed by: tobru
SSH key fingerprint: SHA256:kywVhvCA+MIxL6eBgoQa+BfC/ROJqcfD2bpy1PR6Ebk
8 changed files with 153 additions and 0 deletions

View file

@ -0,0 +1,39 @@
---
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: offen
name: offen
spec:
replicas: 1
revisionHistoryLimit: 2
selector:
matchLabels:
app: offen
strategy:
type: Recreate
template:
metadata:
labels:
app: offen
spec:
containers:
- image: docker.io/offen/offen:v1.4.0
imagePullPolicy: IfNotPresent
name: offen
envFrom:
- secretRef:
name: offen-config
ports:
- containerPort: 80
name: http
protocol: TCP
resources: {}
volumeMounts:
- name: data
mountPath: /var/opt/offen
volumes:
- name: data
persistentVolumeClaim:
claimName: data

View file

@ -0,0 +1,24 @@
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
annotations:
cert-manager.io/cluster-issuer: letsencrypt-prod
traefik.ingress.kubernetes.io/router.middlewares: kube-system-redirect-https@kubernetescrd
name: offen
spec:
rules:
- host: offen.tobru.ch
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: offen
port:
number: 80
tls:
- hosts:
- offen.tobru.ch
secretName: ingress-cert

View file

@ -0,0 +1,9 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- pvc.yaml
- deployment.yaml
- service.yaml
- ingress.yaml
generators:
- secret-generator.yaml

View file

@ -0,0 +1,14 @@
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: data
labels:
app: offen
spec:
accessModes:
- ReadWriteOnce
volumeMode: Filesystem
resources:
requests:
storage: 10Gi
storageClassName: local-path

View file

@ -0,0 +1,6 @@
apiVersion: viaduct.ai/v1
kind: ksops
metadata:
name: secret-generator
files:
- secret.sops.yaml

View file

@ -0,0 +1,27 @@
apiVersion: v1
kind: Secret
metadata:
name: offen-config
type: Opaque
stringData:
OFFEN_SECRET: ENC[AES256_GCM,data:7YamBzcGC/+sQMBMJ80rcqjEteKS,iv:LIF6dbCVj7o6f7Dej1xSsUa2Kff4GqneM4rJtNevzC0=,tag:jVeLRMjAxKc09IHkED529A==,type:str]
sops:
kms: []
gcp_kms: []
azure_kv: []
hc_vault: []
age:
- recipient: age1dfk8euu7afvw7ge5l2qek45z23hdq5anjd56cy4d7kcsf0e0e5pqfjylx8
enc: |
-----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBham91Lzc0MHRFb2l1dW9z
b1o1WUlPZ0QzbllVSG5tRXRCbVlVaFQzbjNjCnMrVTg4UG1tUjQySzh2TmZuVi8r
RTFabkRkSDNtdWRxRWw2eE4rNE9UUU0KLS0tIDZBN09WSENuU0F1RjhITzFqdmkw
R2k4Sll2WmlSYUpSWTArcTJFNVlHVGcKIM6YHkrmxwcBTbP2oQcVvaxlIbQt3RzJ
6H15UHiv9TypD4WCJRdcwbOUa7s+OVdAOubqqs5S0rpYjC7h0QKuEg==
-----END AGE ENCRYPTED FILE-----
lastmodified: "2024-05-15T11:11:20Z"
mac: ENC[AES256_GCM,data:TE2OYmX57e2CeK3xnw0DmGWaNeOxlK6ywyN0+fQBp/uGDlc+otANZjkI+E02TIlKQRJLy4BvHJNMqPB9uNE+DqPp0ETmb94serejQ5eQgYQxtacRpvcTzSVTPk38qTFAg1Tamy5YUCVot2fksaJ9ty4LhB1Tqt91Vf13Qrb4QuI=,iv:1TG/hPnZM0ybMKa564A+6473gZ4BG6775xSVd9tUKD4=,tag:PaTQWgtuYcTfh5m1v1vvlQ==,type:str]
pgp: []
encrypted_regex: ^(data|stringData)$
version: 3.8.1

View file

@ -0,0 +1,15 @@
apiVersion: v1
kind: Service
metadata:
labels:
app: offen
name: offen
spec:
ports:
- name: offen
port: 80
protocol: TCP
targetPort: 80
selector:
app: offen
type: ClusterIP

View file

@ -0,0 +1,19 @@
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: offen
namespace: argocd
finalizers:
- resources-finalizer.argocd.argoproj.io
spec:
project: apps
source:
path: apps/zurrli/offen
repoURL: https://git.tbrnt.ch/tobru/gitops-zurrli.git
targetRevision: HEAD
destination:
namespace: offen
server: https://kubernetes.default.svc
syncPolicy:
syncOptions:
- CreateNamespace=true