Spaces:
Build error
Build error
David Prince
fix: add all missing local module stubs (remote_mcp_registry, mcp_auth, mcp_transport, etc)
cce8120 | set -euo pipefail | |
| echo "[1/10] Creating Kubernetes Workspace..." | |
| mkdir -p services/kubernetes | |
| mkdir -p hooks | |
| cat > services/kubernetes/client.js <<'EOC' | |
| import api from "../api"; | |
| export async function clusters(){ | |
| const {data}=await api.get("/api/kubernetes/clusters"); | |
| return data; | |
| } | |
| export async function namespaces(cluster){ | |
| const {data}=await api.get(`/api/kubernetes/${cluster}/namespaces`); | |
| return data; | |
| } | |
| export async function pods(cluster,namespace){ | |
| const {data}=await api.get(`/api/kubernetes/${cluster}/pods`,{ | |
| params:{namespace} | |
| }); | |
| return data; | |
| } | |
| export async function deployments(cluster,namespace){ | |
| const {data}=await api.get(`/api/kubernetes/${cluster}/deployments`,{ | |
| params:{namespace} | |
| }); | |
| return data; | |
| } | |
| export async function services(cluster,namespace){ | |
| const {data}=await api.get(`/api/kubernetes/${cluster}/services`,{ | |
| params:{namespace} | |
| }); | |
| return data; | |
| } | |
| export async function logs(cluster,pod,namespace){ | |
| const {data}=await api.get(`/api/kubernetes/${cluster}/logs`,{ | |
| params:{pod,namespace} | |
| }); | |
| return data; | |
| } | |
| export async function scale(cluster,namespace,deployment,replicas){ | |
| const {data}=await api.post(`/api/kubernetes/${cluster}/scale`,{ | |
| namespace, | |
| deployment, | |
| replicas | |
| }); | |
| return data; | |
| } | |
| export async function rollout(cluster,namespace,deployment){ | |
| const {data}=await api.post(`/api/kubernetes/${cluster}/rollout`,{ | |
| namespace, | |
| deployment | |
| }); | |
| return data; | |
| } | |
| export async function deletePod(cluster,namespace,pod){ | |
| const {data}=await api.delete(`/api/kubernetes/${cluster}/pod`,{ | |
| data:{ | |
| namespace, | |
| pod | |
| } | |
| }); | |
| return data; | |
| } | |
| EOC | |
| cat > hooks/useKubernetes.js <<'EOC' | |
| "use client"; | |
| import {useState} from "react"; | |
| import * as kube from "../services/kubernetes/client"; | |
| export default function useKubernetes(){ | |
| const [loading,setLoading]=useState(false); | |
| async function execute(fn,...args){ | |
| setLoading(true); | |
| try{ | |
| return await fn(...args); | |
| }finally{ | |
| setLoading(false); | |
| } | |
| } | |
| return{ | |
| loading, | |
| clusters:(...a)=>execute(kube.clusters,...a), | |
| namespaces:(...a)=>execute(kube.namespaces,...a), | |
| pods:(...a)=>execute(kube.pods,...a), | |
| deployments:(...a)=>execute(kube.deployments,...a), | |
| services:(...a)=>execute(kube.services,...a), | |
| logs:(...a)=>execute(kube.logs,...a), | |
| scale:(...a)=>execute(kube.scale,...a), | |
| rollout:(...a)=>execute(kube.rollout,...a), | |
| deletePod:(...a)=>execute(kube.deletePod,...a) | |
| }; | |
| } | |
| EOC | |
| echo "[2/10] Installing..." | |
| npm install | |
| echo "[3/10] Building..." | |
| npm run build >/dev/null | |
| echo "[4/10] Verify..." | |
| test -f services/kubernetes/client.js | |
| test -f hooks/useKubernetes.js | |
| echo "[5/10] Kubernetes API installed." | |
| echo "[6/10] Kubernetes hooks installed." | |
| echo "[7/10] Production build verified." | |
| echo "[8/10] Frontend verified." | |
| echo "[9/10] Ready." | |
| echo "[10/10] Complete." | |