infra/stacks/k8s-portal/modules/k8s-portal/files
Viktor Barzin e2146e6916 gpu: schedule off NFD label, not k8s-node1 hostname
Remove every hardcoded reference to k8s-node1 that pinned GPU
scheduling to a specific host:

- GPU workload nodeSelectors: gpu=true -> nvidia.com/gpu.present=true
  (frigate, immich, whisper, piper, ytdlp, ebook2audiobook, audiblez,
  audiblez-web, nvidia-exporter, gpu-pod-exporter). The NFD label is
  auto-applied by gpu-feature-discovery on any node carrying an
  NVIDIA PCI device, so the selector follows the card.

- null_resource.gpu_node_config: rewrite to enumerate NFD-labeled
  nodes (feature.node.kubernetes.io/pci-10de.present=true) and taint
  each with nvidia.com/gpu=true:PreferNoSchedule. Drop the manual
  'kubectl label gpu=true' since NFD handles labeling.

- MySQL anti-affinity: kubernetes.io/hostname NotIn [k8s-node1] ->
  nvidia.com/gpu.present NotIn [true]. Same intent (keep MySQL off
  the GPU node) but portable when the card relocates.

Net effect: moving the GPU card between nodes no longer requires any
Terraform edit. Verified no-op for current scheduling — both old and
new labels resolve to node1 today.

Docs updated to match: AGENTS.md, compute.md, overview.md,
proxmox-inventory.md, k8s-portal agent-guidance string.
2026-04-22 13:43:07 +00:00
..
.claude extract remaining 19 modules from platform, complete stack split [ci skip] 2026-03-17 21:42:16 +00:00
src gpu: schedule off NFD label, not k8s-node1 hostname 2026-04-22 13:43:07 +00:00
static extract remaining 19 modules from platform, complete stack split [ci skip] 2026-03-17 21:42:16 +00:00
.gitignore extract remaining 19 modules from platform, complete stack split [ci skip] 2026-03-17 21:42:16 +00:00
.npmrc extract remaining 19 modules from platform, complete stack split [ci skip] 2026-03-17 21:42:16 +00:00
Dockerfile extract remaining 19 modules from platform, complete stack split [ci skip] 2026-03-17 21:42:16 +00:00
README.md extract remaining 19 modules from platform, complete stack split [ci skip] 2026-03-17 21:42:16 +00:00
svelte.config.js extract remaining 19 modules from platform, complete stack split [ci skip] 2026-03-17 21:42:16 +00:00
tsconfig.json extract remaining 19 modules from platform, complete stack split [ci skip] 2026-03-17 21:42:16 +00:00
vite.config.ts extract remaining 19 modules from platform, complete stack split [ci skip] 2026-03-17 21:42:16 +00:00

sv

Everything you need to build a Svelte project, powered by sv.

Creating a project

If you're seeing this, you've probably already done this step. Congrats!

# create a new project
npx sv create my-app

To recreate this project with the same configuration:

# recreate this project
npx sv create --template minimal --types ts --install npm .

Developing

Once you've created a project and installed dependencies with npm install (or pnpm install or yarn), start a development server:

npm run dev

# or start the server and open the app in a new browser tab
npm run dev -- --open

Building

To create a production version of your app:

npm run build

You can preview the production build with npm run preview.

To deploy your app, you may need to install an adapter for your target environment.