Files
pikasTech-HWLAB/deploy/gitops/node/jd01/runtime-v03/opencode.yaml
T
2026-06-29 22:21:38 +00:00

224 lines
10 KiB
YAML

apiVersion: v1
kind: List
items:
- apiVersion: v1
kind: ServiceAccount
metadata:
name: opencode-server
namespace: hwlab-v03
labels:
app.kubernetes.io/name: opencode-server
app.kubernetes.io/part-of: hwlab
hwlab.pikastech.local/environment: v03
hwlab.pikastech.local/profile: v03
hwlab.pikastech.local/component: opencode
hwlab.pikastech.local/gitops-target: v03
hwlab.pikastech.local/service-id: opencode-server
hwlab.pikastech.local/source-commit: 17777a6ab74fca426a6b83fc5213fa635476a0cc
annotations:
hwlab.pikastech.local/rendered-by: scripts/gitops-render.mjs
hwlab.pikastech.local/opencode-provider-profile: dsflash-go
hwlab.pikastech.local/opencode-provider-id: dsflash-go
hwlab.pikastech.local/opencode-model: deepseek-v4-flash
hwlab.pikastech.local/opencode-config-sha256: fc9fb04b27a28a97619f5bd3cc4e1803744969969fa9ca425d86ea57c6ff8d56
hwlab.pikastech.local/opencode-api-key-secret-ref: hwlab-v03-code-agent-provider/opencode-api-key
hwlab.pikastech.local/agentrun-provider-secret-ref: agentrun-v02/agentrun-v01-provider-dsflash-go
hwlab.pikastech.local/agentrun-provider-secret-keys: auth.json,config.toml,model-catalog.json
hwlab.pikastech.local/values-printed: "false"
- apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: opencode-server-data
namespace: hwlab-v03
labels:
app.kubernetes.io/name: opencode-server
app.kubernetes.io/part-of: hwlab
hwlab.pikastech.local/environment: v03
hwlab.pikastech.local/profile: v03
hwlab.pikastech.local/component: opencode
hwlab.pikastech.local/gitops-target: v03
hwlab.pikastech.local/service-id: opencode-server
hwlab.pikastech.local/source-commit: 17777a6ab74fca426a6b83fc5213fa635476a0cc
annotations:
hwlab.pikastech.local/rendered-by: scripts/gitops-render.mjs
hwlab.pikastech.local/opencode-provider-profile: dsflash-go
hwlab.pikastech.local/opencode-provider-id: dsflash-go
hwlab.pikastech.local/opencode-model: deepseek-v4-flash
hwlab.pikastech.local/opencode-config-sha256: fc9fb04b27a28a97619f5bd3cc4e1803744969969fa9ca425d86ea57c6ff8d56
hwlab.pikastech.local/opencode-api-key-secret-ref: hwlab-v03-code-agent-provider/opencode-api-key
hwlab.pikastech.local/agentrun-provider-secret-ref: agentrun-v02/agentrun-v01-provider-dsflash-go
hwlab.pikastech.local/agentrun-provider-secret-keys: auth.json,config.toml,model-catalog.json
hwlab.pikastech.local/values-printed: "false"
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 8Gi
- apiVersion: v1
kind: Service
metadata:
name: opencode-server
namespace: hwlab-v03
labels:
app.kubernetes.io/name: opencode-server
app.kubernetes.io/part-of: hwlab
hwlab.pikastech.local/environment: v03
hwlab.pikastech.local/profile: v03
hwlab.pikastech.local/component: opencode
hwlab.pikastech.local/gitops-target: v03
hwlab.pikastech.local/service-id: opencode-server
hwlab.pikastech.local/source-commit: 17777a6ab74fca426a6b83fc5213fa635476a0cc
annotations:
hwlab.pikastech.local/rendered-by: scripts/gitops-render.mjs
hwlab.pikastech.local/opencode-provider-profile: dsflash-go
hwlab.pikastech.local/opencode-provider-id: dsflash-go
hwlab.pikastech.local/opencode-model: deepseek-v4-flash
hwlab.pikastech.local/opencode-config-sha256: fc9fb04b27a28a97619f5bd3cc4e1803744969969fa9ca425d86ea57c6ff8d56
hwlab.pikastech.local/opencode-api-key-secret-ref: hwlab-v03-code-agent-provider/opencode-api-key
hwlab.pikastech.local/agentrun-provider-secret-ref: agentrun-v02/agentrun-v01-provider-dsflash-go
hwlab.pikastech.local/agentrun-provider-secret-keys: auth.json,config.toml,model-catalog.json
hwlab.pikastech.local/values-printed: "false"
spec:
type: ClusterIP
selector:
app.kubernetes.io/name: opencode-server
app.kubernetes.io/part-of: hwlab
hwlab.pikastech.local/environment: v03
hwlab.pikastech.local/profile: v03
ports:
- name: http
port: 4096
targetPort: http
- apiVersion: apps/v1
kind: Deployment
metadata:
name: opencode-server
namespace: hwlab-v03
labels:
app.kubernetes.io/name: opencode-server
app.kubernetes.io/part-of: hwlab
hwlab.pikastech.local/environment: v03
hwlab.pikastech.local/profile: v03
hwlab.pikastech.local/component: opencode
hwlab.pikastech.local/gitops-target: v03
hwlab.pikastech.local/service-id: opencode-server
hwlab.pikastech.local/source-commit: 17777a6ab74fca426a6b83fc5213fa635476a0cc
annotations:
hwlab.pikastech.local/rendered-by: scripts/gitops-render.mjs
hwlab.pikastech.local/opencode-provider-profile: dsflash-go
hwlab.pikastech.local/opencode-provider-id: dsflash-go
hwlab.pikastech.local/opencode-model: deepseek-v4-flash
hwlab.pikastech.local/opencode-config-sha256: fc9fb04b27a28a97619f5bd3cc4e1803744969969fa9ca425d86ea57c6ff8d56
hwlab.pikastech.local/opencode-api-key-secret-ref: hwlab-v03-code-agent-provider/opencode-api-key
hwlab.pikastech.local/agentrun-provider-secret-ref: agentrun-v02/agentrun-v01-provider-dsflash-go
hwlab.pikastech.local/agentrun-provider-secret-keys: auth.json,config.toml,model-catalog.json
hwlab.pikastech.local/values-printed: "false"
spec:
replicas: 1
strategy:
type: Recreate
selector:
matchLabels:
app.kubernetes.io/name: opencode-server
app.kubernetes.io/part-of: hwlab
hwlab.pikastech.local/environment: v03
hwlab.pikastech.local/profile: v03
template:
metadata:
labels:
app.kubernetes.io/name: opencode-server
app.kubernetes.io/part-of: hwlab
hwlab.pikastech.local/environment: v03
hwlab.pikastech.local/profile: v03
hwlab.pikastech.local/component: opencode
hwlab.pikastech.local/gitops-target: v03
hwlab.pikastech.local/service-id: opencode-server
hwlab.pikastech.local/source-commit: 17777a6ab74fca426a6b83fc5213fa635476a0cc
annotations:
hwlab.pikastech.local/rendered-by: scripts/gitops-render.mjs
hwlab.pikastech.local/opencode-provider-profile: dsflash-go
hwlab.pikastech.local/opencode-provider-id: dsflash-go
hwlab.pikastech.local/opencode-model: deepseek-v4-flash
hwlab.pikastech.local/opencode-config-sha256: fc9fb04b27a28a97619f5bd3cc4e1803744969969fa9ca425d86ea57c6ff8d56
hwlab.pikastech.local/opencode-api-key-secret-ref: hwlab-v03-code-agent-provider/opencode-api-key
hwlab.pikastech.local/agentrun-provider-secret-ref: agentrun-v02/agentrun-v01-provider-dsflash-go
hwlab.pikastech.local/agentrun-provider-secret-keys: auth.json,config.toml,model-catalog.json
hwlab.pikastech.local/values-printed: "false"
spec:
serviceAccountName: opencode-server
securityContext:
fsGroup: 1000
fsGroupChangePolicy: OnRootMismatch
containers:
- name: opencode-server
image: 127.0.0.1:5000/hwlab/opencode:1.17.7
imagePullPolicy: IfNotPresent
command:
- opencode
args:
- serve
- --hostname
- 0.0.0.0
- --port
- "4096"
workingDir: /workspace
env:
- name: HOME
value: /workspace
- name: XDG_CONFIG_HOME
value: /workspace/.config
- name: XDG_DATA_HOME
value: /workspace/.local/share
- name: OPENCODE_CONFIG_CONTENT
value: '{"$schema":"https://opencode.ai/config.json","autoupdate":false,"share":"disabled","model":"dsflash-go/deepseek-v4-flash","small_model":"dsflash-go/deepseek-v4-flash","provider":{"dsflash-go":{"npm":"@ai-sdk/openai-compatible","name":"AgentRun
dsflash-go","options":{"baseURL":"https://opencode.ai/zen/go/v1","apiKey":"{env:OPENCODE_DSFLASH_GO_API_KEY}","timeout":600000,"headerTimeout":600000,"chunkTimeout":300000},"models":{"deepseek-v4-flash":{"name":"deepseek-v4-flash","reasoning":true,"tool_call":true,"limit":{"context":1000000,"output":384000}}}}}}'
- name: OPENCODE_DSFLASH_GO_API_KEY
valueFrom:
secretKeyRef:
name: hwlab-v03-code-agent-provider
key: opencode-api-key
optional: true
- name: OPENCODE_SERVER_USERNAME
valueFrom:
secretKeyRef:
name: hwlab-v03-opencode-server-auth
key: username
- name: OPENCODE_SERVER_PASSWORD
valueFrom:
secretKeyRef:
name: hwlab-v03-opencode-server-auth
key: password
ports:
- name: http
containerPort: 4096
startupProbe:
tcpSocket:
port: http
periodSeconds: 5
failureThreshold: 60
readinessProbe:
tcpSocket:
port: http
periodSeconds: 10
failureThreshold: 3
livenessProbe:
tcpSocket:
port: http
periodSeconds: 20
failureThreshold: 3
resources:
requests:
cpu: 100m
memory: 256Mi
limits:
cpu: "1"
memory: 1Gi
volumeMounts:
- name: workspace
mountPath: /workspace
volumes:
- name: workspace
persistentVolumeClaim:
claimName: opencode-server-data