ai-code-battle/manifests/acb-bots/bot-random-deployment.yml
jedarden 1c61d80bd4 feat(manifests): add acb-bots namespace with K8s manifests for 6 strategy bots
Creates manifests/acb-bots/ staging directory for the acb-bots namespace,
containing Deployment + Service + ExternalSecret for all 6 strategy bots
(random, gatherer, rusher, guardian, swarm, hunter) plus namespace and
docker-hub-registry ExternalSecret.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-23 23:22:09 -04:00

71 lines
2.1 KiB
YAML

# bot-random: RandomBot — Python strategy bot
# Makes uniformly random valid moves each turn. Rating floor / easiest opponent.
# HTTP server on port 8080, POST /turn, GET /health.
#
# Staging file — sync to declarative-config/k8s/iad-acb/acb-bots/
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: bot-random
namespace: acb-bots
labels:
app.kubernetes.io/name: bot-random
app.kubernetes.io/part-of: ai-code-battle
app.kubernetes.io/component: strategy-bot
annotations:
argocd-image-updater.argoproj.io/image-list: app=ronaldraygun/acb-bot-random
argocd-image-updater.argoproj.io/app.update-strategy: name
argocd-image-updater.argoproj.io/app.allow-tags: 'regexp:^sha-[0-9a-f]+$'
argocd-image-updater.argoproj.io/write-back-method: argocd
spec:
replicas: 1
selector:
matchLabels:
app.kubernetes.io/name: bot-random
template:
metadata:
labels:
app.kubernetes.io/name: bot-random
app.kubernetes.io/part-of: ai-code-battle
app.kubernetes.io/component: strategy-bot
spec:
restartPolicy: Always
imagePullSecrets:
- name: docker-hub-registry
containers:
- name: bot
image: ronaldraygun/acb-bot-random:sha-placeholder
imagePullPolicy: Always
env:
- name: BOT_PORT
value: "8080"
- name: BOT_SECRET
valueFrom:
secretKeyRef:
name: acb-bot-random-secret
key: shared-secret
ports:
- name: http
containerPort: 8080
protocol: TCP
livenessProbe:
httpGet:
path: /health
port: http
initialDelaySeconds: 5
periodSeconds: 30
failureThreshold: 3
readinessProbe:
httpGet:
path: /health
port: http
initialDelaySeconds: 3
periodSeconds: 10
failureThreshold: 3
resources:
requests:
cpu: 50m
memory: 64Mi
limits:
memory: 64Mi