Skip to content

feat: Scaffold the Fleet controller for the Omni adapter - #12

Draft
ecv wants to merge 1 commit into
docs/omni-adapter-decisionsfrom
scaffold/omni-adapter-toolchain
Draft

ecv wants to merge 1 commit into
docs/omni-adapter-decisionsfrom
scaffold/omni-adapter-toolchain

Conversation

@ecv

@ecv ecv commented Oct 28, 2026

Copy link
Copy Markdown

Summary

The Omni importers need a controller to build on, and nobody can build, test or lint Fleet code today because the repository holds only documents.

This adds a Go controller manager on the toolchain proposed in #11, serving health and metrics with no controllers yet, and CI that builds, tests and lints every pull request with the commands the README documents.

The cluster-lifecycle types and importers come in later pull requests, and the license, image publishing and release tagging stay open.

Test plan

  • CI builds, tests and lints this branch green
  • make build, make test and make lint pass on a fresh clone
  • The manager starts against a cluster and answers its health and readiness probes

Fixes #4

Give the Omni importers a controller to build on, with build, test and
lint wired into CI from the first pull request.

Key features/changes:
- Scaffold a kubebuilder v4 project as go.datum.net/fleet on
  controller-runtime v0.25.2, with a manager that serves health and
  metrics and runs no controllers yet
- Pin the Go toolchain to go1.26.9 and golangci-lint to v2.13.1 with the
  logcheck plugin at v0.10.1
- Run build, test, lint and go.mod and generated-file drift checks on every
  pull request
- Keep only the manager, RBAC and metrics manifests; drop the e2e suite,
  devcontainer, Prometheus and network-policy scaffolds until a change
  needs them
- Document the make targets in the README

Leave the license header empty until the repository picks a license.
@ecv
ecv requested a review from scotwells October 28, 2026 00:08
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