Commit Graph
15 Commits
Author SHA1 Message Date
Ilker ManapandClaude Fable 5.1 cb7b6fd19e Physical location: building / room / rack / unit / asset tag
CI / go (push) Successful in 35s
CI / agent (push) Successful in 4s
CI / site (push) Successful in 3s
- machines.building/room/rack/rack_unit/asset_tag, racks table (height, comment)
- API: POST /machines/{id}/location, POST /locations/import (CSV or JSON, matched by
  id/serial/mac/node_name, ?dry=1), GET/POST/DELETE /racks, ?building/?room/?rack filters
- CLI: rollcall location ..., location import, location racks/rack, list -rack/-room/-building
- UI: location column and building > room > rack chips, bulk Set location…, Racks page with
  elevation views and CSV import dialog, location in machine detail
- .Node.Building/Room/Rack/Unit/AssetTag in overlay templates and tag match rules

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-27 15:32:26 +01:00
Ilker ManapandClaude Fable 5.1 0333c1e486 Web UI redesigned for datacenter fleets
CI / agent (push) Successful in 3s
CI / site (push) Successful in 2s
CI / go (push) Successful in 27s
Sidebar navigation (Overview, Machines, Jobs, Tags, Profiles, OS images); machine list with
state/tag chips, search, sort, paging and multi-select bulk actions (power, deploy, assign,
tag, re-commission, release, boot device); machine detail with tabs (overview, hardware,
network, BMC, jobs, events, raw) and dialog-driven actions; fleet-wide /api/v1/events and
/api/v1/jobs; ?token= sign-in; GPU count in summaries counts real accelerators only;
OS catalog ignores dot-directories.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-27 14:48:29 +01:00
Ilker ManapandClaude Fable 5.1 0f798d8797 Machine tags (MAAS-style), changelog-driven release notes
CI / agent (push) Successful in 3s
CI / site (push) Successful in 2s
CI / go (push) Successful in 26s
- tags table + machines.tags/auto_tags; match rules as Go templates over .Node
  (GPUs, IB, CPUs, memory, disks, NVMe, PCI vendors, manufacturer/product, OS)
  re-evaluated at commissioning and on tag changes
- deployment: tag cloud-config fragments appended as MIME parts with additive merge;
  deploy/tags/gpu-nvidia.yaml installs the NVIDIA driver per distro family
- stateless: tag overlays appended to the profile's overlays
- CLI: tag, tags, list -tag, deploy/power tag:NAME fan-out; UI: tags column, per-machine
  editor, tag definitions panel; API: /api/v1/tags, /machines/{id}/tags, ?tag=
- CHANGELOG.md; release workflow publishes the tag's section as release notes and
  refuses tags without one

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-27 11:32:02 +01:00
Ilker ManapandClaude Fable 5.1 cdd0ad3215 deploy workflow: version stamp from git describe
CI / agent (push) Successful in 3s
CI / site (push) Successful in 2s
CI / go (push) Successful in 24s
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-27 10:42:50 +01:00
Ilker ManapandClaude Fable 5.1 09772c7871 site: live at rollcall.mynodes.xyz
CI / go (push) Successful in 28s
release / release (push) Successful in 24s
CI / agent (push) Successful in 3s
CI / site (push) Successful in 2s
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
v0.1.0
2026-10-27 10:41:43 +01:00
Ilker ManapandClaude Fable 5.1 d4a5108878 usage: write the help text directly so go vet stops seeing a format directive
CI / agent (push) Successful in 2s
CI / site (push) Successful in 3s
CI / go (push) Successful in 1m17s
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-27 10:39:00 +01:00
Ilker ManapandClaude Fable 5.1 3fd926d6b0 rollcall version; fix go vet complaint in usage text
CI / agent (push) Successful in 2s
CI / site (push) Successful in 3s
CI / go (push) Failing after 31s
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-27 10:37:19 +01:00
Ilker ManapandClaude Fable 5.1 1f2178e99a lab: noautologin on the commissioning cmdline; note on persisting BMC addresses in netplan
CI / agent (push) Successful in 3s
CI / go (push) Failing after 32s
CI / site (push) Successful in 2s
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-27 10:31:52 +01:00
Ilker ManapandClaude Fable 5.1 ee3a1a4787 deploy: cancelled job restores the previous machine state; site: deployment features
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-27 10:13:16 +01:00
Ilker ManapandClaude Fable 5.1 fad4e1c8bd OS deployment: image catalog with upstream sync, deploy/release jobs, agent deploy mode, UI and CLI
- rollcall os list|sync|import|promote|rm: <os_dir>/<name>/<version>/{disk.raw.zst,meta.json},
  current symlink, vendor checksum verification (GNU/BSD formats, sha256/sha512), qemu-img -> raw,
  zstd in-process, keep-N pruning, nightly rollcall-os-sync.timer, deploy/os-sources.json
  (Debian 13, Ubuntu 24.04, Rocky 9, AlmaLinux 9, CentOS Stream 9)
- jobs table + API: deploy (disk pick, hostname/IP allocation, job token, per-MAC deploy PXE
  entry), release (wipe), progress, cancel, cloud-init phone_home
- agent/rollcall-deploy.py: streamed write with sha256 + pv progress, NoCloud seed, SELinux
  autorelabel, efibootmgr on UEFI; commissioning image gains zstd/parted/xfsprogs/...
- web UI: deploy/release controls, deployment card with progress, OS catalog table
- README: deployment section, image freshness policy

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-27 10:10:39 +01:00
Ilker ManapandClaude Fable 5.1 1452b79218 controller sync as a POSIX script (the unit's inline shell used bash-only syntax)
CI / agent (push) Successful in 3s
CI / site (push) Successful in 2s
CI / go (push) Failing after 30s
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-27 02:12:54 +01:00
Ilker ManapandClaude Fable 5.1 c81b498df1 compute image: dbus for slurmd's systemd scope; controller slurm.conf sync timer
CI / site (push) Successful in 2s
CI / agent (push) Successful in 3s
CI / go (push) Failing after 29s
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-27 02:12:08 +01:00
Ilker ManapandClaude Fable 5.1 7fe7c26e22 Stateless (Warewulf-style) provisioning: profiles, node pools, overlays, dnsmasq export, compute image
CI / site (push) Successful in 3s
CI / go (push) Failing after 36s
CI / agent (push) Successful in 3s
Profiles bind a RAM-booted root image to overlay templates; assigning a
machine allocates a node name and management IP, writes the per-MAC PXE
entry with a per-node token and exports static leases for dnsmasq. Nodes
pull rendered overlays (hosts, slurm.conf from inventory, gres.conf, SSH
host key, munge key) through rollcall-overlay.service; the runtime refresh
timer is the heartbeat. Adds the compute-debian13 image definition and a
generic live-build root image script, CLI and web UI for profiles/assign.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-27 02:00:14 +01:00
Ilker ManapandClaude Fable 5.1 1430421a3f install.sh: drop prototype cleanup that removed the freshly installed binary
CI / agent (push) Successful in 4s
CI / site (push) Successful in 3s
CI / go (push) Successful in 24s
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-27 01:31:18 +01:00
ilkerandClaude Fable 5.1 d9ae89b295 Rollcall: bare-metal commissioning server, agent, image build, lab and CI
CI / site (push) Successful in 2s
CI / agent (push) Successful in 3s
CI / go (push) Successful in 1m15s
Go server (API, embedded web UI, CLI) backed by PostgreSQL with AES-GCM
sealed BMC secrets; Debian live commissioning agent and live-build recipe;
Proxmox lab with pve-vbmc virtual BMCs; Gitea workflows for CI, releases
and deployment; project website.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-27 01:29:53 +01:00