Files
homelab/apps/harness/k8s/base/deployment.yaml
Julia McGhee f04ecbf5cd Add Gitea self-hosted git/CI/registry to replace GitHub
Deploy Gitea via Helm with dedicated CloudNativePG database,
in-cluster Actions runner (DinD), and built-in container registry.
ArgoCD repoURLs updated to use in-cluster Gitea SSH. Preview
ApplicationSet switched from GitHub PR generator to Gitea PR
generator. App images now pull from gitea.coreworlds.io registry.

Remaining setup after deploy: seal runner token, ArgoCD API token,
and registry pull secret once Gitea is running. Add ArgoCD deploy
key to Gitea repo settings.
2026-03-21 15:43:30 +00:00

68 lines
1.7 KiB
YAML

apiVersion: apps/v1
kind: Deployment
metadata:
name: harness
labels:
app: harness
spec:
replicas: 1
selector:
matchLabels:
app: harness
template:
metadata:
labels:
app: harness
spec:
imagePullSecrets:
- name: gitea-pull-secret
containers:
- name: harness
image: gitea.coreworlds.io/julia/homelab-harness:latest
ports:
- containerPort: 3100
env:
- name: HARNESS_WORK_DIR
value: /data/harness
- name: CLAUDE_CONFIG_DIR
value: /secrets/claude
- name: OPENCODE_CONFIG_DIR
value: /secrets/opencode
volumeMounts:
- name: workspace
mountPath: /data/harness
- name: claude-credentials
mountPath: /secrets/claude
readOnly: true
- name: opencode-credentials
mountPath: /secrets/opencode
readOnly: true
resources:
requests:
memory: 256Mi
cpu: 100m
limits:
memory: 1Gi
readinessProbe:
httpGet:
path: /api/health
port: 3100
initialDelaySeconds: 5
periodSeconds: 10
livenessProbe:
httpGet:
path: /api/health
port: 3100
initialDelaySeconds: 15
periodSeconds: 20
volumes:
- name: workspace
emptyDir:
sizeLimit: 2Gi
- name: claude-credentials
secret:
secretName: harness-claude-credentials
- name: opencode-credentials
secret:
secretName: harness-opencode-credentials