Changelog#
Releases of the FinOps Operator, newest first. Each entry summarises what changed for someone running or configuring the operator; the chart and the operator image share a version.
v0.1.x#
v0.1.7#
September 14, 2026
Ships FinOps Gateway v0.1.6. No operator change.
v0.1.6#
September 14, 2026
Enhancements#
- The
CostJobandSubscriptionChargeCollectionintervals now default to1hrather than1m, which is a realistic cadence for collection rather than one meant for a demo. - The chart exposes
costJob.resourcesandcostJob.sharding.
v0.1.5#
September 2, 2026
Features#
CostJob.spec.shardingsplits the hourly allocation query into namespace-filtered batches run in parallel, which is intended for clusters where the single cluster-wide request times out. It is opt-in, and leaving it unset preserves the existing behaviour. See CostJob.CostJob.spec.resourcessets the collection container's requests and limits, which previously lived only in the operator image and so could not be changed without rebuilding it. It replaces the defaults rather than merging with them, so a requests-only spec leaves the container without a memory limit.Offering.status.resolvedPricing.subscriptionFee.periodnow always carries an explicit unit suffix, so a reader no longer has to fetchtickAlignmentto learn whether1means an hour, a day or a month. The spec accepts both the bare and the suffixed form, since Offering specs are immutable and existing ones cannot be migrated, and a suffix belonging to a different alignment is rejected at admission rather than misread.
Bug Fixes#
- Fixed the collection job discarding the environment variables declared in its own job template. The one that mattered is
SCHEDULED_TIMESTAMP, which the operator cannot supply any other way, and without it a retried run collected the current window instead of the window it was retrying.HOURS_LOOKBACK,CLUSTER_IDand the OpenCost tuning values were falling back to built-in defaults for the same reason.
Enhancements#
- Seed data tooling gained subscription-aware backfill, with pre-flight checks and a verification runbook.
v0.1.4#
August 10, 2026
Enhancements#
- Collection runs no longer maintain the
mv_provider_allocations_summarymaterialised view. It had no readers left and was rebuilt on every tick, which meant a full re-scan and re-aggregate ofprovider_allocationsgrowing with retained history. Nothing read from it, so no report changes. - Dependency and security updates, including the PostgreSQL driver
pgxat v5.9.2.
Changes to behaviour#
CostJob.spec.databaseViewsRefreshTimeoutnow bounds nothing. It is kept on the type so existing objects still apply, and setting it is accepted and changes no behaviour.
v0.1.3#
July 13, 2026
The release that made the cost data durable and the pricing metered.
Features#
- Offerings and Subscriptions are mirrored into PostgreSQL as versioned rows, so a spec that existed when a charge was written can still be read back afterwards.
- Hourly subscription charges are persisted rather than only computed, and
Subscription.status.costsis loaded from those stored rows instead of being recalculated on every run. TheCostsResolvedcondition records which of the two paths produced the figures. - Metered pricing, through
usageSourceson a Subscription paired withresourcePricingon its Offering, with resolved per-meter pricing published on the Offering's status. Meters for CPU, GPU, RAM, persistent volume, and network transfer ship with it, so a Subscription can bill measured consumption as well as a recurring fee.
v0.1.2#
April 23, 2026
Features#
- An Offering now publishes its resolved pricing on
status.resolvedPricing, so what a subscriber will be charged is readable from the object rather than inferred from the spec and the active PriceBook together.
Bug Fixes#
- The
ReadyandPricingResolvedconditions on an Offering now agree with each other.
v0.1.1#
April 13, 2026
Features#
- Offerings and Subscriptions each gained a reconciler and a validating admission webhook, which is the point at which a Subscription starts activating against an Offering, and cycles in a requirement graph are refused at admission.
- The first
SubscriptionChargeCollectionimplementation, populating each Subscription's status from the charges it computed. - Database schema for subscriptions, offerings, and subscription costs.
v0.1.0#
February 23, 2026
The first release. It shipped enough to collect allocation data from OpenCost and price it, but not yet to bill a subscriber.
Features#
- Three kinds:
CostJob,PriceBook, andFinOpsProvider. - A
CostJobtakes a configurable interval, and the chart can create a defaultPriceBookfor a cluster to start from. - PostgreSQL, Prometheus, and OpenCost each read their credentials from their own Secret rather than sharing one.
- Collection runs handle interruption. A run that is cut off does not lose the hours it had already written, and the next run resumes from where the last one stopped rather than starting over.
Related#
- Uninstalling for the order to remove a release in, which matters more than the version you are removing.
- Configuration reference for the chart values and environment variables each version reads.