Skip to content

Add DragonFly BSD and illumos targets#17

Merged
ncode merged 14 commits into
mainfrom
juliano/moar_bsd
Jun 20, 2026
Merged

Add DragonFly BSD and illumos targets#17
ncode merged 14 commits into
mainfrom
juliano/moar_bsd

Conversation

@ncode

@ncode ncode commented Jun 19, 2026

Copy link
Copy Markdown
Owner

Summary

Adds DragonFly BSD and illumos as new supported target platforms for facts.

Commits

  1. docs(openspec) — OpenSpec change proposal, design, tasks, parity disposition, spec deltas, and ADR 0012 capturing the decision.
  2. feat(engine) — DragonFly BSD and illumos branches in the disks, memory, os, processors, and uptime resolvers, including an /etc/release parser for illumos OS identity, with table-driven tests.
  3. feat(schema) — register the supported facts for both platforms in the schema, extend schema tests, and teach the supportedfacts generator about them.
  4. docs — per-platform supported-facts pages plus README, CONTEXT, CONTRIBUTING, CHANGELOG, and man page updates.
  5. ci — Makefile targets and release-gate scripts for both platforms, wired into the integration test workflow.

Testing

  • go build ./...
  • go test ./internal/engine/ . — 1258 passed

ncode added 14 commits June 19, 2026 23:27
Add the OpenSpec change proposal, design, tasks, parity disposition, and
spec deltas plus ADR 0012 capturing the decision to target DragonFly BSD
and illumos as new supported platforms.
Add DragonFly BSD and illumos branches to the disks, memory, os,
processors, and uptime resolvers, including an /etc/release parser for
illumos OS identity, with table-driven tests for each platform.
Mark the supported facts for the new platforms in the schema, extend the
schema test coverage, and teach the supportedfacts generator about
DragonFly BSD and illumos.
Add per-platform supported-facts pages for DragonFly BSD and illumos,
refresh the existing platform tables, and update the README, CONTEXT,
CONTRIBUTING, CHANGELOG, and man page to list the new targets.
Add Makefile targets and release-gate scripts for DragonFly BSD and
illumos, and wire the integration test workflow to exercise them.
… facts

Resolve partition size/filesystem from illumos VTOC slices, report
FreeBSD mounted-partition filesystem, and fill DragonFly interface facts
from ifconfig plus illumos DHCP server lookups. Updates the schema and
regenerated supported-fact pages to match.
Replace the local/asserted native gates with vmactions DragonFly BSD and
OmniOS VM jobs that run the platform-sensitive packages and release-gate
scripts. illumos coverage is OmniOS-only; Oracle Solaris stays out of scope.
Move the completed change into the dated archive and fold its deltas into
the live specs.
DragonFly inherits FreeBSD's kenv smbios.* keys, so reuse the FreeBSD DMI
builder and register dragonfly for the bios/manufacturer/product facts it
emits. Fixes the TestSnapshotTree_includesStandardCoreRootFacts contract
gate on the DragonFly VM, which had no dmi root fact.
Diagnostic only — capture what the DragonFly VM exposes so the dmi
resolver can target the real source. Revert after.
@ncode ncode merged commit 67c6cad into main Jun 20, 2026
30 checks passed
@ncode ncode deleted the juliano/moar_bsd branch June 20, 2026 08:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant