Files
pikasTech-HWLAB/deploy/gitops/node/jd01/runtime-v03/opencode.yaml
T
2026-07-02 15:49:19 +00:00

387 lines
20 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: 144506ac263657c19f71f1befa7671890db906a6
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-provider-base-url: http://127.0.0.1:4097/v1
hwlab.pikastech.local/opencode-provider-upstream-base-url: https://opencode.ai/zen/go/v1
hwlab.pikastech.local/opencode-image: 127.0.0.1:5000/hwlab/opencode:1.17.7-git
hwlab.pikastech.local/opencode-config-sha256: 40a92e2d93f344d7c9dbcb98bd67760078f90a0af085f83b4b5385513bb26234
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"
hwlab.pikastech.local/opencode-provider-proxy-runtime-mode: env-reuse-git-mirror-checkout
hwlab.pikastech.local/opencode-provider-proxy-boot-repo: git@github.com:pikasTech/HWLAB.git
hwlab.pikastech.local/opencode-provider-proxy-boot-commit: 144506ac263657c19f71f1befa7671890db906a6
hwlab.pikastech.local/opencode-provider-proxy-boot-sh: deploy/runtime/boot/opencode-provider-proxy.sh
hwlab.pikastech.local/opencode-provider-proxy-environment-digest: sha256:1f3b67b29346b70a0af97e399ae7e6cd038bef8626f0f3c221d848394074b94a
- 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: 144506ac263657c19f71f1befa7671890db906a6
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-provider-base-url: http://127.0.0.1:4097/v1
hwlab.pikastech.local/opencode-provider-upstream-base-url: https://opencode.ai/zen/go/v1
hwlab.pikastech.local/opencode-image: 127.0.0.1:5000/hwlab/opencode:1.17.7-git
hwlab.pikastech.local/opencode-config-sha256: 40a92e2d93f344d7c9dbcb98bd67760078f90a0af085f83b4b5385513bb26234
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"
hwlab.pikastech.local/opencode-provider-proxy-runtime-mode: env-reuse-git-mirror-checkout
hwlab.pikastech.local/opencode-provider-proxy-boot-repo: git@github.com:pikasTech/HWLAB.git
hwlab.pikastech.local/opencode-provider-proxy-boot-commit: 144506ac263657c19f71f1befa7671890db906a6
hwlab.pikastech.local/opencode-provider-proxy-boot-sh: deploy/runtime/boot/opencode-provider-proxy.sh
hwlab.pikastech.local/opencode-provider-proxy-environment-digest: sha256:1f3b67b29346b70a0af97e399ae7e6cd038bef8626f0f3c221d848394074b94a
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: 144506ac263657c19f71f1befa7671890db906a6
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-provider-base-url: http://127.0.0.1:4097/v1
hwlab.pikastech.local/opencode-provider-upstream-base-url: https://opencode.ai/zen/go/v1
hwlab.pikastech.local/opencode-image: 127.0.0.1:5000/hwlab/opencode:1.17.7-git
hwlab.pikastech.local/opencode-config-sha256: 40a92e2d93f344d7c9dbcb98bd67760078f90a0af085f83b4b5385513bb26234
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"
hwlab.pikastech.local/opencode-provider-proxy-runtime-mode: env-reuse-git-mirror-checkout
hwlab.pikastech.local/opencode-provider-proxy-boot-repo: git@github.com:pikasTech/HWLAB.git
hwlab.pikastech.local/opencode-provider-proxy-boot-commit: 144506ac263657c19f71f1befa7671890db906a6
hwlab.pikastech.local/opencode-provider-proxy-boot-sh: deploy/runtime/boot/opencode-provider-proxy.sh
hwlab.pikastech.local/opencode-provider-proxy-environment-digest: sha256:1f3b67b29346b70a0af97e399ae7e6cd038bef8626f0f3c221d848394074b94a
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: 144506ac263657c19f71f1befa7671890db906a6
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-provider-base-url: http://127.0.0.1:4097/v1
hwlab.pikastech.local/opencode-provider-upstream-base-url: https://opencode.ai/zen/go/v1
hwlab.pikastech.local/opencode-image: 127.0.0.1:5000/hwlab/opencode:1.17.7-git
hwlab.pikastech.local/opencode-config-sha256: 40a92e2d93f344d7c9dbcb98bd67760078f90a0af085f83b4b5385513bb26234
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"
hwlab.pikastech.local/opencode-provider-proxy-runtime-mode: env-reuse-git-mirror-checkout
hwlab.pikastech.local/opencode-provider-proxy-boot-repo: git@github.com:pikasTech/HWLAB.git
hwlab.pikastech.local/opencode-provider-proxy-boot-commit: 144506ac263657c19f71f1befa7671890db906a6
hwlab.pikastech.local/opencode-provider-proxy-boot-sh: deploy/runtime/boot/opencode-provider-proxy.sh
hwlab.pikastech.local/opencode-provider-proxy-environment-digest: sha256:1f3b67b29346b70a0af97e399ae7e6cd038bef8626f0f3c221d848394074b94a
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: 144506ac263657c19f71f1befa7671890db906a6
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-provider-base-url: http://127.0.0.1:4097/v1
hwlab.pikastech.local/opencode-provider-upstream-base-url: https://opencode.ai/zen/go/v1
hwlab.pikastech.local/opencode-image: 127.0.0.1:5000/hwlab/opencode:1.17.7-git
hwlab.pikastech.local/opencode-config-sha256: 40a92e2d93f344d7c9dbcb98bd67760078f90a0af085f83b4b5385513bb26234
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"
hwlab.pikastech.local/opencode-provider-proxy-runtime-mode: env-reuse-git-mirror-checkout
hwlab.pikastech.local/opencode-provider-proxy-boot-repo: git@github.com:pikasTech/HWLAB.git
hwlab.pikastech.local/opencode-provider-proxy-boot-commit: 144506ac263657c19f71f1befa7671890db906a6
hwlab.pikastech.local/opencode-provider-proxy-boot-sh: deploy/runtime/boot/opencode-provider-proxy.sh
hwlab.pikastech.local/opencode-provider-proxy-environment-digest:
sha256:1f3b67b29346b70a0af97e399ae7e6cd038bef8626f0f3c221d848394074b94a
spec:
serviceAccountName: opencode-server
securityContext:
fsGroup: 1000
fsGroupChangePolicy: OnRootMismatch
initContainers:
- name: opencode-workspace-git-init
image: 127.0.0.1:5000/hwlab/hwlab-cloud-web-env@sha256:1f3b67b29346b70a0af97e399ae7e6cd038bef8626f0f3c221d848394074b94a
imagePullPolicy: IfNotPresent
command:
- /bin/sh
- -ec
args:
- >-
set -eu
mkdir -p /workspace
if [ ! -d /workspace/.git ]; then
git -C /workspace init
fi
git -C /workspace config user.name 'HWLAB OpenCode' || true
git -C /workspace config user.email 'opencode@hwlab.local' ||
true
chgrp -R 1000 /workspace/.git 2>/dev/null || true
chmod -R g+rwX /workspace/.git 2>/dev/null || true
resources:
requests:
cpu: 25m
memory: 64Mi
limits:
cpu: 250m
memory: 256Mi
volumeMounts:
- name: workspace
mountPath: /workspace
containers:
- name: opencode-server
image: 127.0.0.1:5000/hwlab/opencode:1.17.7-git
imagePullPolicy: IfNotPresent
command:
- /bin/sh
- -ec
args:
- exec opencode 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: HTTP_PROXY
value: http://10.42.0.1:10808
- name: HTTPS_PROXY
value: http://10.42.0.1:10808
- name: http_proxy
value: http://10.42.0.1:10808
- name: https_proxy
value: http://10.42.0.1:10808
- name: NO_PROXY
value: localhost,127.0.0.1,::1,127.0.0.1:5000,localhost:5000,.svc,.svc.cluster.local,.cluster.local,kubernetes,kubernetes.default,kubernetes.default.svc,argocd-repo-server,argocd-repo-server.argocd,argocd-redis,argocd-redis.argocd,git-mirror-http,git-mirror-http.devops-infra,git-mirror-write,git-mirror-write.devops-infra,10.0.0.0/8,10.42.0.0/16,10.43.0.0/16,172.16.0.0/12,192.168.0.0/16,82.156.23.220,74.48.78.17,hyueapi.com,.hyueapi.com
- name: no_proxy
value: localhost,127.0.0.1,::1,127.0.0.1:5000,localhost:5000,.svc,.svc.cluster.local,.cluster.local,kubernetes,kubernetes.default,kubernetes.default.svc,argocd-repo-server,argocd-repo-server.argocd,argocd-redis,argocd-redis.argocd,git-mirror-http,git-mirror-http.devops-infra,git-mirror-write,git-mirror-write.devops-infra,10.0.0.0/8,10.42.0.0/16,10.43.0.0/16,172.16.0.0/12,192.168.0.0/16,82.156.23.220,74.48.78.17,hyueapi.com,.hyueapi.com
- 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":"http://127.0.0.1:4097/v1","apiKey":"{env:OPENCODE_DSFLASH_GO_API_KEY}","timeout":600000,"headerTimeout":600000,"chunkTimeout":300000},"models":{"deepseek-v4-flash":{"name":"deepseek-v4-flash","reasoning":false,"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
- name: opencode-provider-proxy
image: 127.0.0.1:5000/hwlab/hwlab-cloud-web-env@sha256:1f3b67b29346b70a0af97e399ae7e6cd038bef8626f0f3c221d848394074b94a
imagePullPolicy: IfNotPresent
env:
- name: HWLAB_SERVICE_ID
value: opencode-provider-proxy
- name: HWLAB_ENVIRONMENT
value: v03
- name: HWLAB_COMMIT_ID
value: 144506ac263657c19f71f1befa7671890db906a6
- name: HWLAB_IMAGE
value: 127.0.0.1:5000/hwlab/hwlab-cloud-web-env@sha256:1f3b67b29346b70a0af97e399ae7e6cd038bef8626f0f3c221d848394074b94a
- name: HWLAB_IMAGE_TAG
value: env-5ff41b539190
- name: PORT
value: "4097"
- name: HWLAB_OPENCODE_PROVIDER_PROXY_UPSTREAM_BASE_URL
value: https://opencode.ai/zen/go/v1
- name: HWLAB_OPENCODE_PROVIDER_PROXY_PUBLIC_BASE_PATH
value: /v1
- name: HWLAB_OPENCODE_PROVIDER_PROXY_TIMEOUT_MS
value: "600000"
- name: OTEL_EXPORTER_OTLP_TRACES_ENDPOINT
value: http://otel-collector.platform-infra.svc.cluster.local:4318/v1/traces
- name: OTEL_SERVICE_NAME
value: opencode-provider-proxy
- name: HWLAB_RUNTIME_MODE
value: env-reuse-git-mirror-checkout
- name: HWLAB_BOOT_REPO
value: git@github.com:pikasTech/HWLAB.git
- name: HWLAB_BOOT_COMMIT
value: 144506ac263657c19f71f1befa7671890db906a6
- name: HWLAB_BOOT_REF
value: v0.3
- name: HWLAB_BOOT_SH
value: deploy/runtime/boot/opencode-provider-proxy.sh
- name: HWLAB_BOOT_READ_URL
value: http://git-mirror-http.devops-infra.svc.cluster.local:8080/pikasTech/HWLAB.git
- name: HWLAB_ENVIRONMENT_IMAGE
value: 127.0.0.1:5000/hwlab/hwlab-cloud-web-env:env-5ff41b539190
- name: HWLAB_ENVIRONMENT_DIGEST
value: sha256:1f3b67b29346b70a0af97e399ae7e6cd038bef8626f0f3c221d848394074b94a
- name: HWLAB_ENVIRONMENT_INPUT_HASH
value: 5ff41b539190849e76511ed722a4539f5921622e98eea1444b606475f8ef55aa
- name: HWLAB_CODE_INPUT_HASH
value: 731b1bafcff0cba8baf90e4fddc350ae8ccdce1bc73b3598778e95faced4f996
- name: HWLAB_IMAGE_DIGEST
value: sha256:1f3b67b29346b70a0af97e399ae7e6cd038bef8626f0f3c221d848394074b94a
ports:
- name: provider
containerPort: 4097
readinessProbe:
httpGet:
path: /health/readiness
port: provider
periodSeconds: 10
failureThreshold: 3
livenessProbe:
httpGet:
path: /health/live
port: provider
periodSeconds: 20
failureThreshold: 3
resources:
requests:
cpu: 25m
memory: 64Mi
limits:
cpu: 250m
memory: 256Mi
startupProbe:
httpGet:
path: /health/readiness
port: provider
periodSeconds: 10
failureThreshold: 30
timeoutSeconds: 2
successThreshold: 1
volumes:
- name: workspace
persistentVolumeClaim:
claimName: opencode-server-data