Skip to content
Browse Docs

Deep Dives

AI: Claude and Codex patterns

ConfigHub: Deploy and manage

Docs
Configs
Stacks
Apps
Plugins
Guides

Timoni Flux AIO 2.9.4-0

A repository document, rendered for the site. You can also view this as a markdown file.

Use this entry in ConfigHub in five steps, from fetching its exact objects to promoting a change.

Generated at: 2026-10-06T13:45:42.258Z UTC · source: committed helm-expt evidence for this rendered repository document.

What it is. Timoni module flux-aio 2.9.4-0, as 21 Kubernetes objects.

Install it. curl -fsSL -o try-objects.sh https://confighub.github.io/helm-expt/site/sh/entries/timoni-flux-aio-2-9-4-0-default/try-objects.sh && bash try-objects.sh

Needs first. Nothing. The script applies any CRDs first.

This static Timoni record retains the public Flux All-In-One module as a CRD-heavy controller example. The source is pinned to manifest digest sha256:2fdfc00b5a1b59017f63ec0ab78be8b013fa7d542a57d6f1a6db4df64eab5a5a and was built locally with Timoni 0.34.0.

The default build produced 21 Kubernetes objects: a namespace, quota, service account, cluster RBAC, one controller deployment, and 15 Flux CustomResourceDefinitions. Typed configuration is recorded in config-schema.cue, selected values in selected-values.cue, and the exact build output and inventory are under rendered/.

CRD establishment and controller readiness remain destination lifecycle work. This record does not claim cluster admission, controller health, multi-environment delivery, support promotion, or public configuration publication.

Source: https://github.com/stefanprodan/flux-aio Module: oci://ghcr.io/stefanprodan/modules/flux-aio@sha256:2fdfc00b5a1b59017f63ec0ab78be8b013fa7d542a57d6f1a6db4df64eab5a5a

The retained OCI manifest and layers bind the readable workflow and configuration source to the same immutable module used by the build. The generator derives the displayed schema from those local layers, checks the Timoni client version, and records the selected-values hash. The OCI digest proves content identity; no publisher-signature claim is made.

From the repository root, run node scripts/generate-timoni-flux-aio.mjs --generate with Timoni 0.34.0 to repeat the static build. Run npm run timoni-flux-aio:verify to check the retained evidence offline and exercise tampering rejection. The retained static evidence is admitted as the Catalog Timoni Flux AIO BaseVariantRecord; no destination or controller runtime result is implied.

Use this entry in ConfigHub

Every Catalog entry page carries these five steps in this order. Each step says what the Catalog has run for this entry, and a step with a missing precondition gives no command.

Steps 1 and 2 need no account.

What is fixed, and what you supply

Fixed when this entry was built. These went into the build, so the objects already carry them. To change one, build the entry again from its source.

  • module is oci://ghcr.io/stefanprodan/modules/flux-aio@sha256:2fdfc00b5a1b59017f63ec0ab78be8b013fa7d542a57d6f1a6db4df64eab5a5a
  • moduleVersion is 2.9.4-0
  • instance is flux
  • namespace is flux-system
  • values is examples/timoni/flux-aio-2-9-4-0/selected-values.cue
  • schema is examples/timoni/flux-aio-2-9-4-0/config-schema.cue
  • processor is timoni@0.34.0

Yours to supply or check. The destination must have these before the objects are applied. The words in italics say what the Catalog knows about each.

  • 1.21.0 Required. Not checked in a live run.
  • source, kustomize, helm, notification, and watcher controllers Required. Not checked in a live run.
This entry's plan, and how to test it

These are the steps that plain objects cannot carry. ConfigHub stores them and does not carry them out. The words in italics say what the Catalog knows about each.

  • When you deliver. Apply the 15 Flux CustomResourceDefinitions before relying on controller reconciliation of Flux custom resources. Who: selected destination actor. Recorded as proposed-destination-requirement.
  • After you deliver. Observe source, kustomize, helm, notification, and watcher controller readiness after apply. Who: selected destination actor. Recorded as proposed-destination-requirement.

Test the plain objects yourself. This script tests the retained objects themselves with kubectl, and it needs no cub and no account. Read it first and use a throwaway cluster. The Catalog has no recorded run of this script.

Read what a plan is, and why some entries have one.

1. Get the exact objects Run for this entry

The Catalog rendered this entry and retains its 21 objects in one file.

# fetch the retained objects for this entry
$ curl -fsSL -o timoni-flux-aio-2-9-4-0-default.yaml https://raw.githubusercontent.com/confighub/helm-expt/main/examples/timoni/flux-aio-2-9-4-0/rendered/release-objects.yaml

# check the bytes against the listing
$ shasum -a 256 timoni-flux-aio-2-9-4-0-default.yaml
ef43b86cb0b2de345b59d1925d0f29927e600c65c7b84c42a1bfb8710d772e8e  timoni-flux-aio-2-9-4-0-default.yaml

2. Compare with another version or base Not available yet

The Catalog holds no other version or base of this entry's source in the same format. A second entry for flux-aio in this format would give this step a sibling.

3. Upload it as a variant Not available yet

This entry is not published, so there is no public artifact to upload. The listing records its literal configuration bundle as not published. Publishing the rendered objects as that bundle, with a receipt, would make this step available.

4. Deploy it Not available yet

This step needs an upload command from step 3, and this entry has none. A published artifact for this entry, with a receipt, would make this step available.

5. Promote a change Not available yet

This step needs an upload command from step 3, and this entry has none. A published artifact for this entry, with a receipt, would make this step available.

Technical notes and disclaimers

  • The plain-objects script applies the objects and ends. It does not wait for the workloads to start. The script does not run the steps the plan names for an upgrade or a delete.

Generated from the committed markdown file examples/timoni/flux-aio-2-9-4-0/README.md. The source file is the authoritative version.