kube-cascade/opsdroid/deploy.yaml

76 lines
1.4 KiB
YAML

apiVersion: v1
kind: Namespace
metadata:
name: opsdroid
annotations:
wildcard-tls.kn8v.com/copy: "true"
---
apiVersion: v1
kind: ConfigMap
metadata:
name: "opsdroid"
namespace: "opsdroid"
data:
configuration.yaml: |
connectors:
websocket: {}
skills:
hello: {}
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: "opsdroid"
namespace: "opsdroid"
annotations:
"reloader.stakater.com/auto": "true"
spec:
replicas: 1
selector:
matchLabels:
app: "opsdroid"
strategy:
type: RollingUpdate
template:
metadata:
labels:
app: "opsdroid"
spec:
containers:
- image: ghcr.io/opsdroid/opsdroid:latest
name: opsdroid
volumeMounts:
- mountPath: /home/opsdroid/.config/opsdroid/configuration.yaml
name: config
subPath: configuration.yaml
restartPolicy: Always
volumes:
- name: config
configMap:
name: "opsdroid"
---
apiVersion: v1
kind: Service
metadata:
labels:
app: opsdroid
name: opsdroid-http
namespace: opsdroid
annotations:
metallb.universe.tf/allow-shared-ip: 172.16.17.23
metallb.universe.tf/loadBalancerIPs: 172.16.17.23
spec:
ipFamilies:
- IPv4
ipFamilyPolicy: SingleStack
ports:
- port: 80
name: ssh
protocol: TCP
targetPort: 8080
selector:
app: opsdroid
type: LoadBalancer