Files
HomeMonitor/Calendar/Service/deploy/manifest.yaml

100 lines
2.3 KiB
YAML

---
kind: Deployment
apiVersion: apps/v1
metadata:
name: calendar-service
namespace: home-monitor
labels:
app: calendar-service
spec:
replicas: 1
selector:
matchLabels:
app: calendar-service
template:
metadata:
labels:
app: calendar-service
spec:
containers:
- name: calendar-service
image: ckaczor/home-monitor-calendar-service:#BUILD_BUILDNUMBER#
terminationMessagePath: "/dev/termination-log"
terminationMessagePolicy: File
imagePullPolicy: Always
securityContext:
privileged: true
env:
- name: Calendar__PersonalUrl
valueFrom:
secretKeyRef:
name: calendar-config
key: PERSONAL_URL
- name: Calendar__HolidayUrl
valueFrom:
secretKeyRef:
name: calendar-config
key: HOLIDAYS_URL
- name: Calendar__NationalDays__Url
valueFrom:
secretKeyRef:
name: calendar-config
key: NATIONAL_DAYS_URL
- name: Calendar__NationalDays__Key
valueFrom:
secretKeyRef:
name: calendar-config
key: NATIONAL_DAYS_KEY
restartPolicy: Always
terminationGracePeriodSeconds: 30
dnsPolicy: ClusterFirst
nodeSelector:
kubernetes.io/hostname: kubernetes
schedulerName: default-scheduler
---
kind: Service
apiVersion: v1
metadata:
name: calendar-service
spec:
ports:
- name: client
port: 8080
selector:
app: calendar-service
type: ClusterIP
---
apiVersion: traefik.containo.us/v1alpha1
kind: IngressRoute
metadata:
annotations:
kubernetes.io/ingress.class: traefik
creationTimestamp: null
name: calendar
namespace: home-monitor
spec:
entryPoints:
- local
routes:
- kind: Rule
match: PathPrefix(`/api/calendar`)
middlewares:
- name: api-calendar
namespace: home-monitor
services:
- kind: Service
name: calendar-service
namespace: home-monitor
port: 8080
---
apiVersion: traefik.containo.us/v1alpha1
kind: Middleware
metadata:
creationTimestamp: null
name: api-calendar
namespace: home-monitor
spec:
stripPrefix:
prefixes:
- /api/calendar