Files
homelab/cluster/applications/firecrawl/application.yaml
Hermes Agent service account f4181349f8 feat: Deploy Firecrawl (spaceship-earth) to fastpass cluster
- Add Firecrawl application with full stack:
  - Firecrawl API (main service)
  - Firecrawl Worker (background jobs)
  - Playwright Service (browser automation)
  - Redis (cache & job queue)
  - PostgreSQL (state management)
  - RabbitMQ (message queue)

- Configure dual DNS names:
  - Primary: spaceship-earth.local.mk-labs.cloud (EPCOT theme)
  - Secondary: firecrawl.local.mk-labs.cloud

- Add Gateway API HTTPRoutes with TLS certificates
- Update ReferenceGrant for firecrawl namespace
- Configure ArgoCD application (wave 20)
- Set USE_DB_AUTHENTICATION=false for internal deployment

This provides JARVIS with web scraping and search capabilities.
2026-06-04 16:40:12 -05:00

47 lines
1.4 KiB
YAML

# ------------------------------------------------------------------------------
# Application: firecrawl (spaceship-earth)
# Wave 20 — applications tier
# Web scraping and search service for JARVIS
#
# Primary DNS: spaceship-earth.local.mk-labs.cloud (EPCOT theme)
# Secondary DNS: firecrawl.local.mk-labs.cloud
#
# Components:
# - Firecrawl API (main service)
# - Firecrawl Worker (background job processor)
# - Playwright Service (browser automation)
# - Redis (cache and job queue)
# - PostgreSQL (state management)
# - RabbitMQ (message queue)
# ------------------------------------------------------------------------------
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: firecrawl
namespace: argocd
labels:
app.kubernetes.io/name: firecrawl
app.kubernetes.io/part-of: mk-labs
epcot.theme/name: spaceship-earth
annotations:
argocd.argoproj.io/sync-wave: "20" # Wave 20 — applications tier
spec:
project: default
source:
repoURL: https://gitea.mk-labs.cloud/rblundon/homelab.git
targetRevision: main
path: cluster/applications/firecrawl
directory:
recurse: false
exclude: application.yaml # prevent self-reference loop
destination:
server: https://kubernetes.default.svc
namespace: firecrawl
syncPolicy:
automated:
prune: true
selfHeal: true
syncOptions:
- CreateNamespace=true
- ServerSideApply=true