Files
pikasTech-HWLAB/deploy/k8s/base/workloads.yaml
T
2026-05-21 16:50:21 +00:00

771 lines
21 KiB
YAML

{
"apiVersion": "v1",
"kind": "List",
"items": [
{
"apiVersion": "apps/v1",
"kind": "Deployment",
"metadata": {
"name": "hwlab-cloud-api",
"namespace": "hwlab-dev",
"labels": {
"app.kubernetes.io/name": "hwlab-cloud-api",
"hwlab.pikastech.local/service-id": "hwlab-cloud-api"
}
},
"spec": {
"replicas": 1,
"selector": {
"matchLabels": {
"app.kubernetes.io/name": "hwlab-cloud-api"
}
},
"template": {
"metadata": {
"labels": {
"app.kubernetes.io/name": "hwlab-cloud-api",
"hwlab.pikastech.local/service-id": "hwlab-cloud-api"
}
},
"spec": {
"containers": [
{
"name": "hwlab-cloud-api",
"image": "ghcr.io/pikastech/hwlab-cloud-api:24eb3bf",
"ports": [
{
"name": "http",
"containerPort": 6667
}
],
"env": [
{
"name": "HWLAB_ENVIRONMENT",
"value": "dev"
},
{
"name": "HWLAB_PUBLIC_ENDPOINT",
"value": "http://74.48.78.17:6667"
},
{
"name": "HWLAB_COMMIT_ID",
"value": "24eb3bf"
},
{
"name": "HWLAB_IMAGE",
"value": "ghcr.io/pikastech/hwlab-cloud-api:24eb3bf"
},
{
"name": "HWLAB_IMAGE_TAG",
"value": "24eb3bf"
},
{
"name": "HWLAB_RUNTIME_SUBSTITUTE_FORBIDDEN",
"value": "unidesk-backend,provider-gateway,microservice-proxy"
}
],
"readinessProbe": {
"httpGet": {
"path": "/health/live",
"port": "http"
}
},
"livenessProbe": {
"httpGet": {
"path": "/health/live",
"port": "http"
}
}
}
]
}
}
}
},
{
"apiVersion": "apps/v1",
"kind": "Deployment",
"metadata": {
"name": "hwlab-cloud-web",
"namespace": "hwlab-dev",
"labels": {
"app.kubernetes.io/name": "hwlab-cloud-web",
"hwlab.pikastech.local/service-id": "hwlab-cloud-web"
}
},
"spec": {
"replicas": 1,
"selector": {
"matchLabels": {
"app.kubernetes.io/name": "hwlab-cloud-web"
}
},
"template": {
"metadata": {
"labels": {
"app.kubernetes.io/name": "hwlab-cloud-web",
"hwlab.pikastech.local/service-id": "hwlab-cloud-web"
}
},
"spec": {
"containers": [
{
"name": "hwlab-cloud-web",
"image": "ghcr.io/pikastech/hwlab-cloud-web:24eb3bf",
"ports": [
{
"name": "http",
"containerPort": 8080
}
],
"env": [
{
"name": "HWLAB_API_BASE_URL",
"value": "http://hwlab-cloud-api.hwlab-dev.svc.cluster.local:6667"
}
],
"readinessProbe": {
"httpGet": {
"path": "/health/live",
"port": "http"
}
},
"livenessProbe": {
"httpGet": {
"path": "/health/live",
"port": "http"
}
}
}
]
}
}
}
},
{
"apiVersion": "apps/v1",
"kind": "Deployment",
"metadata": {
"name": "hwlab-agent-mgr",
"namespace": "hwlab-dev",
"labels": {
"app.kubernetes.io/name": "hwlab-agent-mgr",
"hwlab.pikastech.local/service-id": "hwlab-agent-mgr"
}
},
"spec": {
"replicas": 1,
"selector": {
"matchLabels": {
"app.kubernetes.io/name": "hwlab-agent-mgr"
}
},
"template": {
"metadata": {
"labels": {
"app.kubernetes.io/name": "hwlab-agent-mgr",
"hwlab.pikastech.local/service-id": "hwlab-agent-mgr"
}
},
"spec": {
"containers": [
{
"name": "hwlab-agent-mgr",
"image": "ghcr.io/pikastech/hwlab-agent-mgr:24eb3bf",
"ports": [
{
"name": "http",
"containerPort": 7410
}
],
"env": [
{
"name": "HWLAB_AGENT_SESSION_MODE",
"value": "control-plane"
}
],
"readinessProbe": {
"httpGet": {
"path": "/health/live",
"port": "http"
}
},
"livenessProbe": {
"httpGet": {
"path": "/health/live",
"port": "http"
}
}
}
]
}
}
}
},
{
"apiVersion": "batch/v1",
"kind": "Job",
"metadata": {
"name": "hwlab-agent-worker-template",
"namespace": "hwlab-dev",
"labels": {
"app.kubernetes.io/name": "hwlab-agent-worker",
"hwlab.pikastech.local/service-id": "hwlab-agent-worker"
}
},
"spec": {
"suspend": true,
"template": {
"metadata": {
"labels": {
"app.kubernetes.io/name": "hwlab-agent-worker",
"hwlab.pikastech.local/service-id": "hwlab-agent-worker"
}
},
"spec": {
"restartPolicy": "Never",
"containers": [
{
"name": "hwlab-agent-worker",
"image": "ghcr.io/pikastech/hwlab-agent-worker:24eb3bf",
"env": [
{
"name": "HWLAB_AGENT_SESSION_MODE",
"value": "session-scoped"
}
]
}
]
}
}
}
},
{
"apiVersion": "apps/v1",
"kind": "Deployment",
"metadata": {
"name": "hwlab-gateway",
"namespace": "hwlab-dev",
"labels": {
"app.kubernetes.io/name": "hwlab-gateway",
"hwlab.pikastech.local/service-id": "hwlab-gateway",
"hwlab.pikastech.local/activation": "manual"
}
},
"spec": {
"replicas": 0,
"selector": {
"matchLabels": {
"app.kubernetes.io/name": "hwlab-gateway"
}
},
"template": {
"metadata": {
"labels": {
"app.kubernetes.io/name": "hwlab-gateway",
"hwlab.pikastech.local/service-id": "hwlab-gateway"
}
},
"spec": {
"containers": [
{
"name": "hwlab-gateway",
"image": "ghcr.io/pikastech/hwlab-gateway:24eb3bf",
"ports": [
{
"name": "http",
"containerPort": 7001
}
],
"env": [
{
"name": "HWLAB_GATEWAY_MODE",
"value": "hardware-boundary"
}
],
"readinessProbe": {
"httpGet": {
"path": "/health/live",
"port": "http"
}
},
"livenessProbe": {
"httpGet": {
"path": "/health/live",
"port": "http"
}
}
}
]
}
}
}
},
{
"apiVersion": "apps/v1",
"kind": "Deployment",
"metadata": {
"name": "hwlab-gateway-simu",
"namespace": "hwlab-dev",
"labels": {
"app.kubernetes.io/name": "hwlab-gateway-simu",
"hwlab.pikastech.local/service-id": "hwlab-gateway-simu"
}
},
"spec": {
"replicas": 1,
"selector": {
"matchLabels": {
"app.kubernetes.io/name": "hwlab-gateway-simu"
}
},
"template": {
"metadata": {
"labels": {
"app.kubernetes.io/name": "hwlab-gateway-simu",
"hwlab.pikastech.local/service-id": "hwlab-gateway-simu"
}
},
"spec": {
"containers": [
{
"name": "hwlab-gateway-simu",
"image": "ghcr.io/pikastech/hwlab-gateway-simu:24eb3bf",
"ports": [
{
"name": "http",
"containerPort": 7101
}
],
"env": [
{
"name": "HWLAB_BOX_RESOURCES",
"value": "res_boxsim_alpha"
}
],
"readinessProbe": {
"httpGet": {
"path": "/health/live",
"port": "http"
}
},
"livenessProbe": {
"httpGet": {
"path": "/health/live",
"port": "http"
}
}
}
]
}
}
}
},
{
"apiVersion": "apps/v1",
"kind": "Deployment",
"metadata": {
"name": "hwlab-box-simu",
"namespace": "hwlab-dev",
"labels": {
"app.kubernetes.io/name": "hwlab-box-simu",
"hwlab.pikastech.local/service-id": "hwlab-box-simu"
}
},
"spec": {
"replicas": 1,
"selector": {
"matchLabels": {
"app.kubernetes.io/name": "hwlab-box-simu"
}
},
"template": {
"metadata": {
"labels": {
"app.kubernetes.io/name": "hwlab-box-simu",
"hwlab.pikastech.local/service-id": "hwlab-box-simu"
}
},
"spec": {
"containers": [
{
"name": "hwlab-box-simu",
"image": "ghcr.io/pikastech/hwlab-box-simu:24eb3bf",
"ports": [
{
"name": "http",
"containerPort": 7201
}
],
"env": [
{
"name": "HWLAB_BOX_ID",
"value": "boxsim_alpha"
}
],
"readinessProbe": {
"httpGet": {
"path": "/health/live",
"port": "http"
}
},
"livenessProbe": {
"httpGet": {
"path": "/health/live",
"port": "http"
}
}
}
]
}
}
}
},
{
"apiVersion": "apps/v1",
"kind": "Deployment",
"metadata": {
"name": "hwlab-patch-panel",
"namespace": "hwlab-dev",
"labels": {
"app.kubernetes.io/name": "hwlab-patch-panel",
"hwlab.pikastech.local/service-id": "hwlab-patch-panel"
}
},
"spec": {
"replicas": 1,
"selector": {
"matchLabels": {
"app.kubernetes.io/name": "hwlab-patch-panel"
}
},
"template": {
"metadata": {
"labels": {
"app.kubernetes.io/name": "hwlab-patch-panel",
"hwlab.pikastech.local/service-id": "hwlab-patch-panel"
}
},
"spec": {
"containers": [
{
"name": "hwlab-patch-panel",
"image": "ghcr.io/pikastech/hwlab-patch-panel:24eb3bf",
"ports": [
{
"name": "http",
"containerPort": 7301
}
],
"readinessProbe": {
"httpGet": {
"path": "/health/live",
"port": "http"
}
},
"livenessProbe": {
"httpGet": {
"path": "/health/live",
"port": "http"
}
}
}
]
}
}
}
},
{
"apiVersion": "apps/v1",
"kind": "Deployment",
"metadata": {
"name": "hwlab-router",
"namespace": "hwlab-dev",
"labels": {
"app.kubernetes.io/name": "hwlab-router",
"hwlab.pikastech.local/service-id": "hwlab-router"
}
},
"spec": {
"replicas": 1,
"selector": {
"matchLabels": {
"app.kubernetes.io/name": "hwlab-router"
}
},
"template": {
"metadata": {
"labels": {
"app.kubernetes.io/name": "hwlab-router",
"hwlab.pikastech.local/service-id": "hwlab-router"
}
},
"spec": {
"containers": [
{
"name": "hwlab-router",
"image": "ghcr.io/pikastech/hwlab-router:24eb3bf",
"ports": [
{
"name": "http",
"containerPort": 7401
}
],
"env": [
{
"name": "HWLAB_EDGE_PROXY_SERVICE",
"value": "hwlab-edge-proxy"
}
],
"readinessProbe": {
"httpGet": {
"path": "/health/live",
"port": "http"
}
},
"livenessProbe": {
"httpGet": {
"path": "/health/live",
"port": "http"
}
}
}
]
}
}
}
},
{
"apiVersion": "apps/v1",
"kind": "Deployment",
"metadata": {
"name": "hwlab-tunnel-client",
"namespace": "hwlab-dev",
"labels": {
"app.kubernetes.io/name": "hwlab-tunnel-client",
"hwlab.pikastech.local/service-id": "hwlab-tunnel-client"
}
},
"spec": {
"replicas": 1,
"selector": {
"matchLabels": {
"app.kubernetes.io/name": "hwlab-tunnel-client"
}
},
"template": {
"metadata": {
"labels": {
"app.kubernetes.io/name": "hwlab-tunnel-client",
"hwlab.pikastech.local/service-id": "hwlab-tunnel-client"
}
},
"spec": {
"containers": [
{
"name": "hwlab-tunnel-client",
"image": "ghcr.io/pikastech/hwlab-tunnel-client:24eb3bf",
"ports": [
{
"name": "http",
"containerPort": 7402
}
],
"env": [
{
"name": "HWLAB_TUNNEL_MODE",
"value": "frp-client"
},
{
"name": "HWLAB_FRP_SERVER_ADDR",
"value": "74.48.78.17"
},
{
"name": "HWLAB_FRP_PUBLIC_PORT",
"value": "6667"
}
],
"readinessProbe": {
"httpGet": {
"path": "/health/live",
"port": "http"
}
},
"livenessProbe": {
"httpGet": {
"path": "/health/live",
"port": "http"
}
}
}
]
}
}
}
},
{
"apiVersion": "apps/v1",
"kind": "Deployment",
"metadata": {
"name": "hwlab-edge-proxy",
"namespace": "hwlab-dev",
"labels": {
"app.kubernetes.io/name": "hwlab-edge-proxy",
"hwlab.pikastech.local/service-id": "hwlab-edge-proxy"
}
},
"spec": {
"replicas": 1,
"selector": {
"matchLabels": {
"app.kubernetes.io/name": "hwlab-edge-proxy"
}
},
"template": {
"metadata": {
"labels": {
"app.kubernetes.io/name": "hwlab-edge-proxy",
"hwlab.pikastech.local/service-id": "hwlab-edge-proxy"
}
},
"spec": {
"containers": [
{
"name": "hwlab-edge-proxy",
"image": "ghcr.io/pikastech/hwlab-edge-proxy:24eb3bf",
"ports": [
{
"name": "http",
"containerPort": 6667
}
],
"env": [
{
"name": "HWLAB_EDGE_LISTEN",
"value": "0.0.0.0:6667"
},
{
"name": "HWLAB_EDGE_UPSTREAM",
"value": "http://hwlab-cloud-api.hwlab-dev.svc.cluster.local:6667"
}
],
"readinessProbe": {
"httpGet": {
"path": "/health/live",
"port": "http"
}
},
"livenessProbe": {
"httpGet": {
"path": "/health/live",
"port": "http"
}
}
}
]
}
}
}
},
{
"apiVersion": "batch/v1",
"kind": "Job",
"metadata": {
"name": "hwlab-cli-template",
"namespace": "hwlab-dev",
"labels": {
"app.kubernetes.io/name": "hwlab-cli",
"hwlab.pikastech.local/service-id": "hwlab-cli",
"hwlab.pikastech.local/activation": "manual"
}
},
"spec": {
"suspend": true,
"template": {
"metadata": {
"labels": {
"app.kubernetes.io/name": "hwlab-cli",
"hwlab.pikastech.local/service-id": "hwlab-cli"
}
},
"spec": {
"restartPolicy": "Never",
"containers": [
{
"name": "hwlab-cli",
"image": "ghcr.io/pikastech/hwlab-cli:24eb3bf",
"env": [
{
"name": "HWLAB_CLI_ENDPOINT",
"value": "http://74.48.78.17:6667"
}
]
}
]
}
}
}
},
{
"apiVersion": "apps/v1",
"kind": "Deployment",
"metadata": {
"name": "hwlab-agent-skills",
"namespace": "hwlab-dev",
"labels": {
"app.kubernetes.io/name": "hwlab-agent-skills",
"hwlab.pikastech.local/service-id": "hwlab-agent-skills"
}
},
"spec": {
"replicas": 1,
"selector": {
"matchLabels": {
"app.kubernetes.io/name": "hwlab-agent-skills"
}
},
"template": {
"metadata": {
"labels": {
"app.kubernetes.io/name": "hwlab-agent-skills",
"hwlab.pikastech.local/service-id": "hwlab-agent-skills"
}
},
"spec": {
"containers": [
{
"name": "hwlab-agent-skills",
"image": "ghcr.io/pikastech/hwlab-agent-skills:24eb3bf",
"ports": [
{
"name": "http",
"containerPort": 7502
}
],
"env": [
{
"name": "HWLAB_SKILLS_COMMIT_ID",
"value": "24eb3bf"
}
],
"readinessProbe": {
"httpGet": {
"path": "/health/live",
"port": "http"
}
},
"livenessProbe": {
"httpGet": {
"path": "/health/live",
"port": "http"
}
}
}
]
}
}
}
}
]
}