## Summary - Add JobSync service reference card (`docs/reference/services/jobsync.md`) with architecture, secrets, observability, and JSearch API docs - Add JobSync and Ollama to ringtail's workloads table (both were missing) - Add JobSync to the reference index - Wire `RAPIDAPI_KEY` through ExternalSecret and deployment env var for JSearch job search automation - Document Loki log queries for observability (no metrics endpoint exists) - Update deploy-jobsync how-to with new env var, observability section, and reference card link ## Deployment and Testing - [ ] Sign up for RapidAPI JSearch API (free tier: 500 req/month) - [ ] Add `rapidapi_key` field to "JobSync" 1Password item - [ ] Merge PR - [ ] `argocd app sync jobsync` to pick up new env var - [ ] Verify job search works at https://jobsync.ops.eblu.me/dashboard/automations Reviewed-on: #289
78 lines
2 KiB
YAML
78 lines
2 KiB
YAML
---
|
|
apiVersion: apps/v1
|
|
kind: Deployment
|
|
metadata:
|
|
name: jobsync
|
|
namespace: jobsync
|
|
spec:
|
|
replicas: 1
|
|
strategy:
|
|
type: Recreate
|
|
selector:
|
|
matchLabels:
|
|
app: jobsync
|
|
template:
|
|
metadata:
|
|
labels:
|
|
app: jobsync
|
|
spec:
|
|
containers:
|
|
- name: jobsync
|
|
image: blumeops/jobsync:kustomized
|
|
ports:
|
|
- containerPort: 3000
|
|
name: http
|
|
env:
|
|
- name: DATABASE_URL
|
|
value: "file:/data/dev.db"
|
|
- name: NEXTAUTH_URL
|
|
value: "https://jobsync.ops.eblu.me"
|
|
- name: AUTH_TRUST_HOST
|
|
value: "true"
|
|
- name: NEXT_TELEMETRY_DISABLED
|
|
value: "1"
|
|
- name: TZ
|
|
value: "America/Los_Angeles"
|
|
- name: OLLAMA_BASE_URL
|
|
value: "http://ollama.ollama.svc.cluster.local:11434"
|
|
- name: AUTH_SECRET
|
|
valueFrom:
|
|
secretKeyRef:
|
|
name: jobsync-secrets
|
|
key: auth_secret
|
|
- name: ENCRYPTION_KEY
|
|
valueFrom:
|
|
secretKeyRef:
|
|
name: jobsync-secrets
|
|
key: encryption_key
|
|
- name: RAPIDAPI_KEY
|
|
valueFrom:
|
|
secretKeyRef:
|
|
name: jobsync-secrets
|
|
key: rapidapi_key
|
|
volumeMounts:
|
|
- name: data
|
|
mountPath: /data
|
|
resources:
|
|
requests:
|
|
memory: "256Mi"
|
|
cpu: "100m"
|
|
limits:
|
|
memory: "512Mi"
|
|
cpu: "500m"
|
|
livenessProbe:
|
|
httpGet:
|
|
path: /
|
|
port: 3000
|
|
initialDelaySeconds: 30
|
|
periodSeconds: 30
|
|
readinessProbe:
|
|
httpGet:
|
|
path: /
|
|
port: 3000
|
|
initialDelaySeconds: 10
|
|
periodSeconds: 10
|
|
volumes:
|
|
- name: data
|
|
persistentVolumeClaim:
|
|
claimName: jobsync-data
|