atlas-iac/services/hermes/service.yaml
Hermes Agent 7a55b259bf hermes: add the fenced three-node distributed execution pool
Three fenced worker Pods claim Hermes Kanban runs through a coordinator that
owns every state transition, with per-ordinal HMAC authority, a mediated
broker-only SCM path, and durable per-ordinal workspaces.

Content is the reviewed head of PR #18 (689bcb6e) with PR 16's and PR 19's
contributions removed: they were merged in only to validate co-existence and are
not prerequisites, so this branch no longer carries them as ancestors. Only PR 14
and PR 15 remain, because the broker boundary and the cli_lane_* decomposition
are load-bearing for two of the fixed P0 boundaries.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-17 16:31:15 +00:00

184 lines
3.1 KiB
YAML

# services/hermes/service.yaml
apiVersion: v1
kind: Service
metadata:
name: hermes
namespace: hermes
labels:
app: hermes
spec:
type: ClusterIP
selector:
app: hermes
ports:
- name: api
port: 8642
targetPort: api
protocol: TCP
- name: dashboard
port: 9119
targetPort: dashboard
protocol: TCP
---
apiVersion: v1
kind: Service
metadata:
name: hermes-triage
namespace: hermes
labels:
app: hermes
spec:
type: ClusterIP
selector:
app: hermes
ports:
- name: api
port: 8642
targetPort: api
- name: dashboard
port: 8787
targetPort: dashboard
---
apiVersion: v1
kind: Service
metadata:
name: hermes-chat-tenant
namespace: hermes
labels:
app: hermes-chat-tenant
spec:
clusterIP: None
publishNotReadyAddresses: true
selector:
app: hermes-chat-tenant
ports:
- name: webui
port: 8787
targetPort: webui
- name: api
port: 8642
targetPort: api
- name: telegram-media
port: 8788
targetPort: telegram-media
protocol: TCP
---
apiVersion: v1
kind: Service
metadata:
name: hermes-chat-router
namespace: hermes
labels:
app: hermes-chat-router
spec:
type: ClusterIP
selector:
app: hermes-chat-router
ports:
- name: http
port: 8080
targetPort: http
---
apiVersion: v1
kind: Service
metadata:
name: hermes-image-broker
namespace: hermes
labels:
app: hermes-agent
spec:
type: ClusterIP
publishNotReadyAddresses: true
selector:
app: hermes-agent
ports:
- name: http
port: 9002
targetPort: image-broker
protocol: TCP
---
apiVersion: v1
kind: Service
metadata:
name: hermes-codex-broker
namespace: hermes
labels:
app: hermes-agent
spec:
type: ClusterIP
publishNotReadyAddresses: true
selector:
app: hermes-agent
ports:
- name: http
port: 9003
targetPort: codex-broker
protocol: TCP
---
apiVersion: v1
kind: Service
metadata:
name: hermes-execution-worker
namespace: hermes
labels:
app: hermes-execution-worker
spec:
clusterIP: None
publishNotReadyAddresses: true
selector:
app: hermes-execution-worker
---
apiVersion: v1
kind: Service
metadata:
name: hermes-execution-pool
namespace: hermes
labels:
app: hermes-agent
spec:
type: ClusterIP
publishNotReadyAddresses: true
selector:
app: hermes-agent
ports:
- name: http
port: 9007
targetPort: execution-pool
protocol: TCP
---
apiVersion: v1
kind: Service
metadata:
name: hermes-local-image
namespace: hermes
labels:
app: hermes-local-image
spec:
type: ClusterIP
publishNotReadyAddresses: true
selector:
app: hermes-local-image
ports:
- name: http
port: 9004
targetPort: local-image
protocol: TCP
---
apiVersion: v1
kind: Service
metadata:
name: hermes-claude-broker
namespace: hermes
labels:
app: hermes-agent
spec:
type: ClusterIP
publishNotReadyAddresses: true
selector:
app: hermes-agent
ports:
- name: http
port: 9006
targetPort: claude-broker
protocol: TCP