Files
pikasTech-HWLAB/deploy/gitops/node/jd01/runtime-v03/opencode.yaml
T
2026-06-29 16:54:43 +00:00

260 lines
8.3 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": "b2d2642b5bf10854165662f57cb57f56b978cf05"
},
"annotations": {
"hwlab.pikastech.local/rendered-by": "scripts/gitops-render.mjs"
}
}
},
{
"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": "b2d2642b5bf10854165662f57cb57f56b978cf05"
},
"annotations": {
"hwlab.pikastech.local/rendered-by": "scripts/gitops-render.mjs"
}
},
"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": "b2d2642b5bf10854165662f57cb57f56b978cf05"
},
"annotations": {
"hwlab.pikastech.local/rendered-by": "scripts/gitops-render.mjs"
}
},
"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": "b2d2642b5bf10854165662f57cb57f56b978cf05"
},
"annotations": {
"hwlab.pikastech.local/rendered-by": "scripts/gitops-render.mjs"
}
},
"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": "b2d2642b5bf10854165662f57cb57f56b978cf05"
},
"annotations": {
"hwlab.pikastech.local/rendered-by": "scripts/gitops-render.mjs"
}
},
"spec": {
"serviceAccountName": "opencode-server",
"securityContext": {
"fsGroup": 1000,
"fsGroupChangePolicy": "OnRootMismatch"
},
"containers": [
{
"name": "opencode-server",
"image": "ghcr.io/anomalyco/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": "{\"autoupdate\":false,\"share\":\"disabled\"}"
},
{
"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"
}
}
]
}
}
}
}
]
}