apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: molesignal-public
namespace: molesignal
annotations:
nginx.ingress.kubernetes.io/proxy-body-size: "10m"
nginx.ingress.kubernetes.io/limit-rps: "20"
spec:
ingressClassName: nginx-public
tls:
- hosts: [molesignal.example.com]
secretName: molesignal-tls
rules:
- host: molesignal.example.com
http:
paths:
# External alerts
- { path: /api/v1/intake/alerts, pathType: Exact, backend: { service: { name: molesignal, port: { number: 5080 } } } }
# Heartbeat check-ins, the Jira ticket webhook, on-call calendar subscriptions
- { path: /api/v1/intake/heartbeats, pathType: Prefix, backend: { service: { name: molesignal, port: { number: 5080 } } } }
- { path: /api/v1/public/tickets/jira, pathType: Prefix, backend: { service: { name: molesignal, port: { number: 5080 } } } }
- { path: /api/v1/public/calendar, pathType: Prefix, backend: { service: { name: molesignal, port: { number: 5080 } } } }
# Mole Agent in Teams, automation API triggers, replies to texts and calls
- { path: /api/v1/public/im/teams, pathType: Prefix, backend: { service: { name: molesignal, port: { number: 5080 } } } }
- { path: /api/v1/public/automations, pathType: Prefix, backend: { service: { name: molesignal, port: { number: 5080 } } } }
- { path: /api/v1/public/notify, pathType: Prefix, backend: { service: { name: molesignal, port: { number: 5080 } } } }
# Push sources
- { path: /api/v1/_kinesis_firehose, pathType: Exact, backend: { service: { name: molesignal, port: { number: 5080 } } } }
- { path: /api/v1/_cloudflare, pathType: Exact, backend: { service: { name: molesignal, port: { number: 5080 } } } }
- { path: /api/v1/_heroku, pathType: Exact, backend: { service: { name: molesignal, port: { number: 5080 } } } }
# RUM
- { path: /api/v1/rum/events, pathType: Exact, backend: { service: { name: molesignal, port: { number: 5080 } } } }
- { path: /api/v1/rum/replay, pathType: Exact, backend: { service: { name: molesignal, port: { number: 5080 } } } }
# Synthetics Probe Agent artifact uploads
- { path: /api/v1/synthetics/artifacts, pathType: Prefix, backend: { service: { name: molesignal, port: { number: 5080 } } } }
# Status pages
- { path: /status, pathType: Prefix, backend: { service: { name: molesignal, port: { number: 5080 } } } }
- { path: /api/v1/public/status-pages, pathType: Prefix, backend: { service: { name: molesignal, port: { number: 5080 } } } }
# Resource sharing
- { path: /s, pathType: Prefix, backend: { service: { name: molesignal, port: { number: 5080 } } } }
- { path: /shared, pathType: Exact, backend: { service: { name: molesignal, port: { number: 5080 } } } }
- { path: /api/v1/public/share, pathType: Prefix, backend: { service: { name: molesignal, port: { number: 5080 } } } }
# Web files of status pages and shared resources
- { path: /assets, pathType: Prefix, backend: { service: { name: molesignal, port: { number: 5080 } } } }
- { path: /favicon.ico, pathType: Exact, backend: { service: { name: molesignal, port: { number: 5080 } } } }
- { path: /favicon.svg, pathType: Exact, backend: { service: { name: molesignal, port: { number: 5080 } } } }