Files
homelab/apps/base/yadunut-dev.yaml

87 lines
1.7 KiB
YAML

apiVersion: v1
kind: Namespace
metadata:
name: yadunut-dev
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: yadunut-dev-deployment
namespace: yadunut-dev
labels:
app: yadunut-dev
spec:
replicas: 1
selector:
matchLabels:
name: yadunut-dev
template:
metadata:
labels:
name: yadunut-dev
spec:
containers:
- name: yadunut-dev
image: harbor.yadunut.dev/yadunut/yadunut.dev:sha-759c2c3-1756621909 # {"$imagepolicy": "flux-system:yadunut-dev"}
ports:
- containerPort: 80
name: http
protocol: TCP
---
apiVersion: v1
kind: Service
metadata:
name: yadunut-dev
namespace: yadunut-dev
spec:
selector:
name: yadunut-dev
ports:
- name: http
port: 80
targetPort: http
type: LoadBalancer
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: yadunut-dev
namespace: yadunut-dev
spec:
ingressClassName: traefik
rules:
- host: yadunut.dev
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: yadunut-dev
port:
name: http
---
apiVersion: image.toolkit.fluxcd.io/v1beta2
kind: ImageRepository
metadata:
name: yadunut-dev
namespace: flux-system
spec:
image: harbor.yadunut.dev/yadunut/yadunut.dev
interval: 1m0s
---
apiVersion: image.toolkit.fluxcd.io/v1beta2
kind: ImagePolicy
metadata:
name: yadunut-dev
namespace: flux-system
spec:
imageRepositoryRef:
name: yadunut-dev
filterTags:
pattern: "^sha-[a-fA-F0-9]+-(?P<ts>.*)"
extract: "$ts"
policy:
numerical:
order: asc