Repository navigation
Releases: restuhaqza/SwarmCracker
Release list
v0.10.0
What's Changed
- chore(release): v0.10.0 (4963cb5)
- fix(test): derive a guaranteed non-existent PID in the force-kill test (0729286)
- fix: repair multi-host microVM networking, add multi-node lab, drop legacy automation (#29) (9ba2769)
- feat(golden): run services from a prebuilt golden image (#27) (2729053)
- fix(vm): stop detached vm create from holding the caller's stdout (#26) (ca2c1d7)
- feat(kernel): resolve golden image kernel per profile (#28) (dfca86a)
- fix: symlink-safe essential dirs and stop removing the bogus legacy rootfs (#24) (eee154a)
- fix(network): stop leaking dnsmasq instances on VM churn (#23) (e37f435)
- build: add guest-runtime kernel build script (#22) (3d39cd2)
- test: raise unit coverage to 87.6%, fix broken tests and three bugs (#19) (ac5a65a)
- fix(executor): stop the benchmark job hanging (non-blocking events + bounded CI) (#20) (e649337)
- feat(golden): golden image recipes and builder (Docker-in-microVM) (#18) (23ffeba)
- fix(systemd): create runtime dirs before namespace setup (survive reboot) (#17) (69243a1)
- feat(service): add --disk to guarantee VM rootfs free space (#15) (4e37d0f)
- feat(cli): unify vm list/status with daemon-managed VMs (#14) (baf4d4d)
- feat(console): interactive serial console access (vm attach) (#12) (1e34f74)
- fix: control-plane CLI, VM lifecycle, DHCP fallback, and image pulls (#9) (cb4c45c)
Full Changelog: v0.9.2...v0.10.0
π§ Platform Support
Supported Platforms:
- β Linux amd64 (x86_64)
- β Linux arm64 (AArch64)
Requirements:
- KVM support (/dev/kvm)
- Linux kernel 4.14+
- Firecracker v1.14+
Note: macOS and Windows are not supported. SwarmCracker requires KVM virtualization which is Linux-only.
v0.9.2
What's Changed
- chore: untrack docs/design/ local drafts (#3) (358b809)
- chore(release): v0.9.2 (#2) (8529d3b)
- refactor: remove dead code across the codebase (#1) (15a6c36)
Full Changelog: v0.9.1...v0.9.2
π§ Platform Support
Supported Platforms:
- β Linux amd64 (x86_64)
- β Linux arm64 (AArch64)
Requirements:
- KVM support (/dev/kvm)
- Linux kernel 4.14+
- Firecracker v1.14+
Note: macOS and Windows are not supported. SwarmCracker requires KVM virtualization which is Linux-only.
v0.9.1
What's Changed
- chore(release): v0.9.1 (5619d23)
- fix(snapshot): use a single default snapshot directory (663201f)
- docs: fix mkdocs nav, Vagrant paths, and legacy artifacts (39e8e85)
- docs(dev): resolve merge conflicts and fix stale paths/versions (19bc9c8)
- docs(user): modernize CLI reference and user guides (07e3fd3)
- fix(metrics): correct process uptime field parsing (323331d)
Full Changelog: v0.9.0...v0.9.1
π§ Platform Support
Supported Platforms:
- β Linux amd64 (x86_64)
- β Linux arm64 (AArch64)
Requirements:
- KVM support (/dev/kvm)
- Linux kernel 4.14+
- Firecracker v1.14+
Note: macOS and Windows are not supported. SwarmCracker requires KVM virtualization which is Linux-only.
v0.9.0
What's Changed
- fix(version): report the real Go version and platform (d52eeb4)
- chore(release): bump version to v0.9.0 (b694830)
- test: make environment-dependent tests hermetic (8063429)
- ci: use golangci-lint v2 action and fix release smoke-test flag (7faf450)
- fix(lint): migrate to grpc.NewClient and clear remaining findings (10acbac)
- docs: add two-node E2E test report (3fb4752)
- build: build swarmd-firecracker and swarmcracker-agent from their packages (2a39185)
- fix(setup): honor --non-interactive, fix kernel URL, add --download-cni (f81a14c)
- fix(image): run the OCI workload via the tini init wrapper (16190c1)
- fix(vmm): do not SIGKILL Firecracker when the start context is canceled (e5424c3)
- fix(cluster): repair systemd units, enable CNI, accept real join tokens (e96bd87)
- fix(network,storage): drop VXLAN FDB entry on stale peer removal & harden credential injection path (413bd7c)
- fix: address low-priority review findings (L1, L2, L3) (6fd8ddc)
- fix(network): retry VXLAN peer forwarding on transient failure (H1βL1) (c0f6b49)
- chore(lint): reduce errcheck exclusions across production packages (M2) (680e694)
- fix: complete medium-priority correctness fixes (M3βM12) (ce3c9ff)
- fix: resolve golangci-lint v2 findings β 66 issues to 0 (L4) (efa3274)
- build: migrate .golangci.yml to v2 format (M1) (304e154)
- fix: wait for actual swarmd control socket in E2E cluster manager (H7) (b9725ee)
- fix: ensure cmd.Wait() called exactly once per VMM process (H6) (00f94e1)
- fix: implement RemoveCNIConfig and CNINetworkAllocator.RunGC stubs (H4, H5) (dd64f88)
- fix: parse CIDR instead of hardcoded /24 in getPhysicalInterface (H3) (1229461)
- fix: eliminate data race on v.ctx in peer discovery goroutines (H2) (746f050)
- fix: align SetEncryptionKeys signature with NetworkKeySetter interface (C2) (ce5faec)
- fix: use dedicated UDP port for VXLAN peer discovery (C4) (b423c71)
- fix: remove actual rootfs path (image-ID based) in Controller.Remove (C3) (975a5d8)
- fix: prevent send-on-closed-channel panic in executor sendEvent (C1) (9dad985)
- docs: update install flow references to ADR-005 blessed path (POLISH-02) (248bb2d)
- refactor: slim install.sh to download+checksum only; setup downloads kernel/rootfs (POLISH-02) (514a2cd)
- refactor: split monolithic cmd/swarmctl and cmd/swarmd-firecracker main.go (OPERATE-06) (9547400)
- docs: Phase 7 β API reference, CLI reference, docs restructure (a63643b)
- chore: prune obsolete linter exclude rules (e8284b8)
- fix: resolve 20 low-priority linter findings β tar.TypeRegA, SA9003, prealloc, errcheck (f9c44b3)
- refactor: logging consistency + dependency updates (b9f01f2)
- fix: golangci-lint clean β gofmt, nilerr, ineffassign (7555024)
- Phase 3 (Medium): file permissions, health server hardening, test fixes (bc3a560)
- feat: observability stack, gRPC versioning, doc consolidation (0fefb6b)
- feat: config schema versioning, logrus adapter, Vagrant cleanup (e1af2ff)
- docs: disaster recovery guide + OPERATE-01 partial (72e05f8)
- feat: cluster health command, VXLAN static peers, Ansible binary_source (03874e8)
- feat: setup subcommand, ADR-005 blessed deployment path, misc fixes (9d919ce)
Full Changelog: v0.8.0...v0.9.0
π§ Platform Support
Supported Platforms:
- β Linux amd64 (x86_64)
- β Linux arm64 (AArch64)
Requirements:
- KVM support (/dev/kvm)
- Linux kernel 4.14+
- Firecracker v1.14+
Note: macOS and Windows are not supported. SwarmCracker requires KVM virtualization which is Linux-only.
v0.7.0
What's Changed
- fix(init): correct systemd ReadWritePath syntax for mount namespace (1be52d4)
- fix(site): revert symlink - GitHub Pages can't resolve cross-dir symlinks (1c0b593)
- chore(site): symlink install.sh to root for auto-sync (0864d8a)
- feat(image): add init wrapper for HTTP server in Firecracker VMs (ae9fb56)
- fix(vmm): handle both interface slice types for network-interfaces (5fc327e)
- fix(translator): use kebab-case for Firecracker JSON keys (38432f9)
- fix(docs): correct all broken documentation references (633ed36)
- fix(docs): correct broken cluster-init reference in README (529d188)
- chore: add swarmctl to gitignore and track logo.png (d6f4aff)
- docs: update version to v0.6.0 (d792b0f)
- chore(test): add benchmark and installation test scripts (669f892)
- chore(ansible): update firecracker role for jailer support (b011857)
- feat(swarmctl): implement node and service management CLI (02a65a4)
- feat(install): add jailer setup and dynamic kernel URL discovery (5aee5a9)
- fix(preflight): relax TUN/TAP kernel module check (140d705)
- fix(join): resolve --manager flag binding and worker state cleanup (ff4ff57)
- docs: restructure documentation into consolidated guides (8a2a77e)
- fix(executor): resolve type assertion panics in VMM manager (e64cfd2)
Full Changelog: v0.6.0...v0.7.0
π§ Platform Support
Supported Platforms:
- β Linux amd64 (x86_64)
- β Linux arm64 (AArch64)
Requirements:
- KVM support (/dev/kvm)
- Linux kernel 4.14+
- Firecracker v1.14+
Note: macOS and Windows are not supported. SwarmCracker requires KVM virtualization which is Linux-only.
v0.6.0
What's Changed
- chore: prepare v0.6.0 release (2da2542)
- feat(swarmctl): add SwarmKit control client (f3dfb12)
- feat(swarmkit): add parent-cgroup config for jailer VMs (ed45893)
- feat(jailer): add cgroup resource limits support (9f92dd0)
- chore: remove test file from main branch (af32e1f)
- fix(jailer): create socket directory and remove unsupported seccomp flag (c26ca15)
- fix(jailer): resolve cgroup version and chroot resource handling (d8732b7)
- fix(image): resolve podman/docker export container ID parsing (b487dd6)
- style: fix Go naming conventions and lint issues for Report Card A rating (848476c)
Full Changelog: v0.5.0...v0.6.0
π§ Platform Support
Supported Platforms:
- β Linux amd64 (x86_64)
- β Linux arm64 (AArch64)
Requirements:
- KVM support (/dev/kvm)
- Linux kernel 4.14+
- Firecracker v1.14+
Note: macOS and Windows are not supported. SwarmCracker requires KVM virtualization which is Linux-only.
v0.5.0
What's Changed
- fix(test): resolve lint warnings and update translator tests (63e37ac)
- Update infrastructure for new libvirt session (0837960)
- Reorganize documentation structure (6b0b31f)
- Fix cluster address migration and VM boot issues (910b47b)
- fix: Resolve Firecracker/Jailer binary paths using exec.LookPath (d1689c1)
- test: Fix failing jailer unit tests (9efbd35)
- feat: Add Firecracker Jailer integration for production security (e09cb0e)
- docs: use static HTML with Tailwind CDN - no build required (b70c0af)
- docs: restore Tailwind CSS for landing page (c7a9a59)
- ci: fix workflow concurrency to prevent blocking Pages deployment (1ad5922)
- ci: add path filters to prevent unnecessary CI runs (2ec42e5)
- docs: simplify React app - remove Tailwind CSS dependency (4d0e90c)
- ci: fix pages workflow to deploy built dist/ folder (d8df84c)
- docs: restore React + Vite landing page (b668dfc)
- docs: revert to static HTML for reliable GitHub Pages deployment (9e753ad)
- ci: fix pages workflow to use npm install instead of npm ci (217789c)
- docs: rebuild landing page with React + Vite (e1dbb2d)
- docs: fix container structure in installation section (58850c9)
- docs: fix code block formatting in installation section (17b2b76)
- docs: improve code highlighting in installation section (2c4ca5d)
- docs: add install.sh to custom domain for shorter URL (d2dc97c)
- docs: update Open Graph meta to use custom domain (0bac3d9)
- docs: add custom domain CNAME for swarmcracker.restuhaqza.dev (a081a49)
- Create CNAME (f7fc9b1)
- Delete CNAME (0d327b5)
- Create CNAME (18a18f6)
- docs: add landing page deployment summary (afcdbb3)
- docs: add landing page with GitHub Pages deployment (d2f4b4b)
- docs: add cluster initialization test guide (ce62ee1)
Full Changelog: v0.4.0...v0.5.0
π§ Platform Support
Supported Platforms:
- β Linux amd64 (x86_64)
- β Linux arm64 (AArch64)
Requirements:
- KVM support (/dev/kvm)
- Linux kernel 4.14+
- Firecracker v1.14+
Note: macOS and Windows are not supported. SwarmCracker requires KVM virtualization which is Linux-only.
v0.4.0
What's Changed
- feat: add pre-flight checks and progress indicators (082f50c)
- feat: add kubeadm-style cluster initialization commands (9ae2334)
- docs(AGENTS.md): Add snapshot feature documentation (406d9b9)
- docs: Rename snapshot documentation to follow naming conventions (9c303ac)
- docs: Add Snapshot CLI usage guide (bc71b9a)
- feat(snapshot): Full snapshot/restore support for Firecracker v1.14.x (dd7fe3b)
- feat(snapshot): add VM snapshot and restore support (7fefc37)
- docs: add contribution guidelines, code of conduct, security policy, and issue templates (f0e5450)
Full Changelog: v0.3.0...v0.4.0
π§ Platform Support
Supported Platforms:
- β Linux amd64 (x86_64)
- β Linux arm64 (AArch64)
Requirements:
- KVM support (/dev/kvm)
- Linux kernel 4.14+
- Firecracker v1.14+
Note: macOS and Windows are not supported. SwarmCracker requires KVM virtualization which is Linux-only.
v0.3.0
What's Changed
- feat(storage): implement pluggable volume driver system with CLI (4043db4)
- docs: update for KVM/libvirt migration and VXLAN networking (108d5d9)
- feat(infra): add KVM/libvirt Vagrantfile and inventory (17da46e)
- refactor(ansible): restructure into modular role-based architecture (263debc)
- fix(ansible): systemd ReadWritePaths and worker configuration (b4c68cb)
- feat(cmd): auto-print join tokens on manager startup (40e3b89)
- docs: move ansible test reports to infrastructure/docs/ansible-reports (2600974)
- fix(ansible): make swarmctl build optional (Go version compatibility) (e51c817)
- feat(ansible): install swarmctl on manager for join token generation (e3823b2)
- fix(ansible): worker role - create extraction directory and fix binary paths (8a4c407)
- docs: standardize markdown file naming convention (140146b)
- docs: organize documentation structure (bc81d15)
- fix(ansible): remove duplicate swarmcracker_kernel_url key (174c3fb)
- feat(ansible): make Firecracker kernel download optional (e9d4d12)
- fix(ansible): update Firecracker kernel URL (58a990d)
- fix(ansible): correct path to extracted binaries (11db4cd)
- fix(ansible): create extraction directory before extracting tarball (101d44f)
- fix(ansible): update to v0.2.1 (fixed release with Linux-only binaries) (1a74ad7)
- fix(ansible): handle missing bridge netfilter on fresh Ubuntu (cb85ae5)
- feat(testing): add Vagrantfile for fresh Ubuntu Ansible testing (51c81ac)
- docs(infra): add Ansible verification report (10f707f)
- fix(ansible): correct UFW firewall rule syntax (018e570)
Full Changelog: v0.2.1...v0.3.0
π§ Platform Support
Supported Platforms:
- β Linux amd64 (x86_64)
- β Linux arm64 (AArch64)
Requirements:
- KVM support (/dev/kvm)
- Linux kernel 4.14+
- Firecracker v1.14+
Note: macOS and Windows are not supported. SwarmCracker requires KVM virtualization which is Linux-only.
v0.2.1
What's Changed
- fix(ci): update release pipeline for Linux-only builds (c1ddadd)
- docs(infra): add Ansible test report for VirtualBox (29c0fb6)
- test(infra): add VirtualBox inventory and fix ansible.cfg (03d2907)
- feat(infra): add Ansible automation for cluster deployment (8e40c31)
Full Changelog: v0.2.0...v0.2.1
π§ Platform Support
Supported Platforms:
- β Linux amd64 (x86_64)
- β Linux arm64 (AArch64)
Requirements:
- KVM support (/dev/kvm)
- Linux kernel 4.14+
- Firecracker v1.14+
Note: macOS and Windows are not supported. SwarmCracker requires KVM virtualization which is Linux-only.