argo/apps/goff/base/deployment.yaml

110 lines
2.3 KiB
YAML

---
apiVersion: v1
kind: Service
metadata:
name: goff
labels:
app: goff
spec:
selector:
app: goff
type: ClusterIP
ports:
- port: 8080
targetPort: http
protocol: TCP
name: http
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: goff
spec:
selector:
matchLabels:
app: goff
revisionHistoryLimit: 1
replicas: 1
template:
metadata:
annotations:
labels:
app: goff
spec:
containers:
- name: goff
image: gofeatureflag/go-feature-flag:latest
command:
- /go-feature-flag
- --config
- /goff/config.yaml
volumeMounts:
- name: configs
mountPath: /goff/
ports:
- name: http
protocol: TCP
containerPort: 443
resources:
requests:
cpu: 150m
memory: 500Mi
limits:
cpu: 1000m
memory: 2000Mi
securityContext:
runAsUser: 1000
startupProbe:
httpGet:
path: /health
port: http
failureThreshold: 60
periodSeconds: 10
terminationGracePeriodSeconds: 1200
volumes:
- name: configs
configMap:
name: goff-configs
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
annotations:
cert-manager.io/cluster-issuer: letsencrypt-issuer
gethomepage.dev/enabled: "true"
gethomepage.dev/name: "goff"
gethomepage.dev/description: "GO Feature Flag"
gethomepage.dev/group: "Work"
nginx.ingress.kubernetes.io/proxy-body-size: "1g"
nginx.ingress.kubernetes.io/proxy-read-timeout: "600"
nginx.ingress.kubernetes.io/proxy-send-timeout: "600"
name: goff
labels:
name: goff
spec:
rules:
- host: work-goff.nc.landry.land
http:
paths:
- backend:
service:
name: goff
port:
name: http
path: /
pathType: Prefix
- path: /metrics
pathType: Prefix
backend:
service:
name: http-svc
port:
number: 80
tls:
- hosts:
- work-goff.nc.landry.land
secretName: goff-tls