Skip to content

Commit 79fbca6

Browse files
authored
Merge pull request fluxcd#2246 from fluxcd/breaking-changes
Update Flux 2.6 blog post to include breaking changes
2 parents 37ad365 + 787bfbe commit 79fbca6

File tree

1 file changed

+25
-0
lines changed
  • content/en/blog/2025-05-29-announcing-flux-v2.6.0

1 file changed

+25
-0
lines changed

content/en/blog/2025-05-29-announcing-flux-v2.6.0/index.md

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,31 @@ The Flux custom media types used for OCI artifacts produced by the Flux CLI are
6666
- config media type `application/vnd.cncf.flux.config.v1+json`
6767
- content media type `application/vnd.cncf.flux.content.v1.tar+gzip`
6868

69+
### Breaking changes
70+
71+
Prior to `v2.6.0`, the `OCIRepository` and `ImageRepository` APIs allowed the `spec.provider` field
72+
to be set to a value that did not necessarily match the repository URL. In these cases the controllers
73+
would simply ignore the `spec.provider`, not configuring OIDC authentication for the repository.
74+
75+
For example, the repository `public.ecr.aws/aws-controllers-k8s` never matched Flux's regular expression
76+
for the `aws` provider, but the controller would still allow the `spec.provider` to be set to `aws` in
77+
this case and would simply ignore it. This specific configuration would work correctly because this
78+
particular repository is public and does not require authentication.
79+
80+
Similarly, a private repository that did not match any of Flux's validations for the three container
81+
registry providers (`aws`, `azure`, `gcp`) would also work with the `spec.provider` set to one of
82+
these values, as long as it was also configured with one of the `spec.secretRef` or
83+
`spec.serviceAccountName` fields for using image pull secrets. In these cases, the controller
84+
would simply ignore the `spec.provider` and use the image pull secret instead.
85+
86+
Starting with `v2.6.0`, Flux is fixing this behavior. The repository URL must now match the provider
87+
set in `spec.provider`, otherwise the controller will reject the configuration and return an error.
88+
For automatic OIDC authentication, the `spec.provider` must be set to one of the three container
89+
registry providers (`aws`, `azure`, `gcp`). For public repositories or authentication using image
90+
pull secrets, the `spec.provider` must not be set, or set to `generic`. These configuration
91+
instructions were explicit in the Flux docs since many releases, but are only now in `v2.6.0`
92+
being strictly enforced by the controllers.
93+
6994
## Image Automation Digest Pinning
7095

7196
In Flux v2.6, the image automation has been enhanced to support digest pinning

0 commit comments

Comments
 (0)