Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update Helm release flagger to v1.38.0 #150

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Nov 25, 2022

This PR contains the following updates:

Package Update Change
flagger (source) minor 1.25.0 -> 1.38.0

Warning

Some dependencies could not be looked up. Check the Dependency Dashboard for more information.


Release Notes

fluxcd/flagger (flagger)

v1.38.0

Compare Source

Release date: 2024-07-30

This release comes with several fixes and improvements. There is a new Keptn
metrics provider
that can be used
for flexible grading logic and analysis.
The loadtester chart now supports ServiceAccount annotations and the Flagger
chart now supports specifying honorLabels for the PodMonitor.

Support for Kuma has been fixed and verified against Kuma 2.7.5. Also, the
Deployment scaling has been updated to use Patch instead of Update to avoid
intermittent conflict errors. Furthermore, a potential panic that could be
caused due to Prometheus returning a range vector has been fixed. Also, the
request-duration inbuilt query for Nginx has been updated to be more accurate.

Lastly, all Go dependencies, Alpine and Kubernetes libraries were updated.

Important

The update to Kubernetes libraries also brings an unwanted side-effect. Due to
a change in upstream Kubernetes, sidecar support is done through a new field,
which may be utilized by other services in your cluster. This would change the
hash calculated by Flagger between runs and trigger an unwanted Canary
analysis. Unfortunately, this is unavoidable. To get around this, users could
set the .spec.suspend field to be true before updating to this version and
switch it back when they update their application.

Improvements
  • Bumps golang.org/x/net to v0.23.0
    #​1628
  • feat: implement a Keptn metrics provider
    #​1630
  • Update dependencies to Kubernetes 1.30
    #​1638
  • loadtester: add support for annotation on service account
    #​1649
  • Bump golang.org/x/net to v0.25.0 and other deps.
    #​1653
  • Update Go dependencies and Alpine
    #​1656
  • Helm - Add podMonitor.honor labels
    #​1676
  • kuma: bump e2e version to 2.7.5
    #​1683
  • Release loadtester 0.33.0
    #​1690
  • Bump google.golang.org/grpc from 1.64.0 to 1.64.1
    #​1675
Fixes
  • Use Patch instead of Update for Deployment scaling
    #​1634
  • block panic when prom returns range vector
    #​1637
  • Fix removal of empty keys from flagger chart
    #​1657
  • doc: fix KEDA doc regarding namespaces
    #​1666
  • Fix Nginx request-duration query
    #​1686

v1.37.0

Compare Source

Release date: 2024-03-26

This release updates the Istio APIs to v1beta1 and fixes several issues related
to Gloo routing and custom metrics.

Both Flagger and the load tester Go dependencies have been updated to fix various CVEs.
Flagger and the load tester are now built with Go 1.22.

Improvements
  • Migrate Istio VirtualService/DestinationRule APIs to v1beta1
    #​1602
  • Add omitempty to CRD statuses to allow better marshalling
    #​1621
  • Update dependencies (Go 1.22)
    #​1622
  • Update google.golang.org/protobuf to v1.33.0
    #​1614
Fixes
  • Update reconciler to detect change in Gloo upstream spec
    #​1617
  • Fix regression bug where query with no metric template returned an error
    #​1611

v1.36.1

Compare Source

Release date: 2024-03-06

This release fixes a bug where .spec..progressDeadlineSeconds wasn't respected and the Canary
was stuck forever waiting for the Deployment to be ready.

Furthermore, the Go dependencies have been updated.

Improvements
Fixes
  • Fix broken link in readme
    #​1599
  • scheduler: fail canary according to progress deadline
    #​1603
  • Actualize link to flux in-depth guide
    #​1606

v1.36.0

Compare Source

Release date: 2024-02-07

This release comes with support for canary releases with traffic shifting using
Istio TCP routing. For more information on how to enable TCP routing please
see the Istio tutorial.

Both Flagger and the load tester Go dependencies have been updated to fix various CVEs.
Flagger is now built with Go 1.21 and the container base image has been updated to Alpine 3.19.

Improvements
Fixes
  • return an error for missing metric templates
    #​1582
  • istio: make retry attempts a mandatory field
    #​1571
  • fix(pdb): use the full capabilities comparison for PDBs
    #​1511

v1.35.0

Compare Source

Release date: 2023-11-30

This release comes with support for Gateway API v1. Furthermore, following the
deprecation period, support for the v1alpha2 API has been dropped.
A new field .spec.webhooks[].retries has been added to allow specifying the
number of retry attempts to make if the webhook server returns an unsuccessful
response.
Another new field .spec.service.trafficPolicy.loadBalancer.warmupDurationSeconds
has been added for the corresponding field in Istio's DestinationRule API.

Lastly, two bugs related to deleting a Canary object with
.spec.revertOnDeletion: true have been fixed.

Improvements
  • Support Istio DestinationRule WarmupDurationSecs
    #​1540
  • feat: Webhook retries
    #​1541
  • gatewayapi: add support for v1
    #​1557
  • Update Go dependencies
    #​1558
Fixes
  • set original node selector value when finalizing service
    #​1537
  • controller: wait for canary deployment to be ready before removing finalizers
    #​1552

v1.34.0

Compare Source

Release date: 2023-10-04

This release comes with several new features. The Gateway API integration
has been significantly improved with support for

Most of the Filters are derived from existing fields in the Canary spec like
.spec.service.headers. To support arbitary request mirroring through the
RequestMirror filter, a new field .spec.service.mirror has been introduced.

A new field checksum has been added to the Canary webhook payload. This field
is computed by hashing the .status.lastAppliedSpec and
.status.trackedConfigs. It can be used to distinguish between Canary runs.

Furthermore, the Gloo integration now uses strings for specifying time durations
in order to be better compatible with protobuf duration parsing.

Lastly, Kubernetes packages were updated to be on 1.27.

Improvements
  • Update Kubernetes to v1.27
    #​1506
  • gatewayapi: add support for session affinity
    #​1507
  • gatewayapi: add support for route rule filters
    #​1512
  • Update Linkerd tutorial to use Kubernetes Gateway API
    #​1516
  • Add Checksum field to the Webhook payload to distinguish canary runs
    #​1521
  • gatewayapi: add support for b/g mirroring
    #​1525
  • Update Go dependencies
    #​1528
Fixes
  • chore: fix incorrect canary name on document
    #​1502
  • fix: Support for queryParams in canary match condition #​880
    #​1505
  • docs: fix error example in deployment strategies
    #​1518
  • Change Gloo Duration type to string
    #​1524

v1.33.0

Compare Source

Release date: 2023-08-29

This release fixes bugs related to the Canary lifecycle. The
confirm-traffic-increase webhook is no longer called if the Canary is in the
WaitingPromotion phase. Furthermore, a bug which caused downtime when
initializing the Canary deployment has been fixed.
Also, a bug in the request-duration metric for Traefik which assumed the
result to be in milliseconds instead of seconds has been addressed.

The loadtester now also supports running kubectl commands.

Improvements
  • Helm: Add option to configure honorLabels for serviceMonitor
    #​1442
  • Helm: Use PodDisruptionBudget API policy/v1 if available
    #​1476
  • podinfo: Update hpa version from autoscaling/v2beta2 to autoscaling/v2
    #​1477
  • Helm: Allow custom labels for servicemonitor
    #​1483
  • feat: loadtester support kubectl type
    #​1485
  • Update Istio Gateway reference format
    #​1489
  • e2e: Update Istio to v1.18
    #​1492
  • add docs for kubectl in loadtester
    #​1494
Fixes
  • fix: typo on "Parase", should be "Parse".
    #​1443
  • Fix Traefik request-duration metric
    #​1446
  • Fix initial deployment downtime
    #​1451
  • Fix FAQ templating format and change reference of $workload to $target.
    #​1456
  • Update doc.go
    #​1466
  • Avoid running traffic increase hooks when waiting for promotion or promoting
    #​1470

v1.32.0

Compare Source

Release date: 2023-07-14

This release adds support for suspending a Canary using .spec.suspend.
It also fixes a bug where the target deployment gets stuck at 0 replicas
after the Canary has been deleted.
Furthermore, the Canary API has been modified to allow specifying the
HTTPRoute port using .service.gatewayRefs[].port.

Improvements
  • Helm: Add option to create service and serviceMonitor
    #​1425
  • Update Alpine to 3.18
    #​1426
  • Add spec.suspend to allow suspending canary
    #​1431
  • Add support for istio LEAST_REQUEST destination rule load balancing
    #​1439
  • Add gatewayRef port to Canary CRD
    #​1453
  • feat: Copy slowStartConfig for Gloo upstreams
    #​1455
  • Update Go dependencies
    #​1459
Fixes
  • Resume target scaler during finalization
    #​1429
  • Fix panic when annotation of ingress is empty
    #​1437
  • Fixing namespace of HelmRepository in installation docs
    #​1458

v1.31.0

Compare Source

Release date: 2023-05-10

⚠️ Breaking Changes

This release adds support for Linkerd 2.12 and later. Due to changes in Linkerd
the default namespace for Flagger's installation had to be changed from
linkerd to flagger-system and the flagger Deployment is now injected with
the Linkerd proxy. Furthermore, installing Flagger for Linkerd will result in
the creation of an AuthorizationPolicy that allows access to the Prometheus
instance in the linkerd-viz namespace. To upgrade your Flagger installation,
please see the below migration guide.

If you use Kustomize, then follow these steps:

  • kubectl delete -n linkerd deploy/flagger

  • kubectl delete -n linkerd serviceaccount flagger

  • If you're on Linkerd >= 2.12, you'll need to install the SMI extension to enable
    support for TrafficSplits:

    curl -sL https://linkerd.github.io/linkerd-smi/install | sh
    linkerd smi install | kubectl apply -f -
  • kubectl apply -k github.com/fluxcd/flagger//kustomize/linkerd

    Note: If you're on Linkerd < 2.12, this will report an error about missing CRDs.
    It is safe to ignore this error.

If you use Helm and are on Linkerd < 2.12, then you can use helm upgrade to do
a regular upgrade.

If you use Helm and are on Linkerd >= 2.12, then follow these steps:

  • helm uninstall flagger -n linkerd
  • Install the Linkerd SMI extension:
    helm repo add l5d-smi https://linkerd.github.io/linkerd-smi
    helm install linkerd-smi l5d-smi/linkerd-smi -n linkerd-smi --create-namespace
  • Install Flagger in the flagger-system namespace
    and create an AuthorizationPolicy:
    helm repo update flagger
    helm install flagger flagger/flagger \
    --namespace flagger-system \
    --set meshProvider=linkerd \
    --set metricsServer=http://prometheus.linkerd-viz:9090 \
    --set linkerdAuthPolicy.create=true

Furthermore, a bug which led the confirm-rollout webhook to be executed at
every step of the Canary instead of only being executed before the canary
Deployment is scaled up, has been fixed.

Improvements
Fixes
  • Fix the loadtester install with flux documentation
    #​1384
  • Run confirm-rollout checks only before scaling up deployment
    #​1414
  • e2e: Remove OSM tests
    #​1423

v1.30.0

Compare Source

Release date: 2023-04-12

This release fixes a bug related to the lack of updates to the generated
object's metadata according to the metadata specified in spec.service.apex.
Furthermore, a bug where labels were wrongfully copied over from the canary
deployment to primary deployment when no value was provided for
--include-label-prefix has been fixed.
This release also makes Flagger compatible with Flux's helm-controller drift
detection.

Improvements
  • build(deps): bump actions/cache from 3.2.5 to 3.3.1
    #​1385
  • helm: Added the option to supply additional volumes
    #​1393
  • build(deps): bump actions/setup-go from 3 to 4
    #​1394
  • update Kuma version and docs
    #​1402
  • ci: bump k8s to 1.24 and kind to 1.18
    #​1406
  • Helm: Allow configuring deployment annotations
    #​1411
  • update dependencies
    #​1412
Fixes
  • Enable updates for labels and annotations
    #​1392
  • Update flagger-install-with-flux.md
    #​1398
  • avoid copying canary labels to primary on promotion
    #​1405
  • Disable Flux helm drift detection for managed resources
    #​1408

v1.29.0

Compare Source

Release date: 2023-02-21

This release comes with support for template variables for analysis metrics.
A canary analysis metric can reference a set of custom variables with
.spec.analysis.metrics[].templateVariables. For more info see the docs.
Furthemore, a bug related to Canary releases with session affinity has been
fixed.

Improvements
  • update dependencies
    #​1374
  • build(deps): bump golang.org/x/net from 0.4.0 to 0.7.0
    #​1373
  • build(deps): bump fossa-contrib/fossa-action from 1 to 2
    #​1372
  • Allow custom affinities for flagger deployment in helm chart
    #​1371
  • Add namespace to namespaced resources in helm chart
    #​1370
  • build(deps): bump actions/cache from 3.2.4 to 3.2.5
    #​1366
  • build(deps): bump actions/cache from 3.2.3 to 3.2.4
    #​1362
  • build(deps): bump docker/build-push-action from 3 to 4
    #​1361
  • modify release workflow to publish rc images
    #​1359
  • build: Enable SBOM and SLSA Provenance
    #​1356
  • Add support for custom variables in metric templates
    #​1355
  • docs(readme.md): add additional tutorial
    #​1346
Fixes
  • use regex to match against headers in istio
    #​1364

v1.28.0

Compare Source

Release date: 2023-01-26

This release comes with support for setting a different autoscaling
configuration for the primary workload.
The .spec.autoscalerRef.primaryScalerReplicas is useful in the
situation where the user does not want to scale the canary workload
to the exact same size as the primary, especially when opting for a
canary deployment pattern where only a small portion of traffic is
routed to the canary workload pods.

Improvements
  • Support for overriding primary scaler replicas
    #​1343
  • Allow access to Prometheus in OpenShift via SA token
    #​1338
  • Update Kubernetes packages to v1.26.1
    #​1352

v1.27.0

Compare Source

Release date: 2022-12-15

This release comes with support for Apachae APISIX. For more details see the
tutorial.

Improvements
  • [apisix] Implement router interface and observer interface
    #​1281
  • Bump stefanprodan/helm-gh-pages from 1.6.0 to 1.7.0
    #​1326
  • Release loadtester v0.28.0
    #​1328
Fixes

v1.26.0

Compare Source

Release date: 2022-11-23

This release comes with support Kubernetes Gateway API v1beta1.
For more details see the Gateway API Progressive Delivery tutorial.

Please note that starting with this version, the Gateway API v1alpha2 is considered deprecated
and will be removed from Flagger after 6 months.

Improvements:
  • Updated Gateway API from v1alpha2 to v1beta1
    #​1319
  • Updated Gateway API docs to v1beta1
    #​1321
  • Update dependencies
    #​1322
Fixes:
  • docs: Add linkerd install --crds to Linkerd tutorial
    #​1316

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot changed the title Update Helm release flagger to v1.26.0 Update Helm release flagger to v1.27.0 Dec 16, 2022
@renovate renovate bot changed the title Update Helm release flagger to v1.27.0 Update Helm release flagger to v1.28.0 Jan 26, 2023
@renovate renovate bot changed the title Update Helm release flagger to v1.28.0 Update Helm release flagger to v1.29.0 Mar 18, 2023
@renovate renovate bot changed the title Update Helm release flagger to v1.29.0 Update Helm release flagger to v1.30.0 Apr 17, 2023
@renovate renovate bot changed the title Update Helm release flagger to v1.30.0 Update Helm release flagger to v1.31.0 May 28, 2023
@renovate renovate bot changed the title Update Helm release flagger to v1.31.0 Update Helm release flagger to v1.32.0 Jul 14, 2023
@renovate renovate bot changed the title Update Helm release flagger to v1.32.0 Update Helm release flagger to v1.33.0 Aug 29, 2023
@renovate renovate bot changed the title Update Helm release flagger to v1.33.0 Update Helm release flagger to v1.34.0 Oct 4, 2023
@renovate renovate bot changed the title Update Helm release flagger to v1.34.0 Update Helm release flagger to v1.35.0 Nov 30, 2023
@renovate renovate bot changed the title Update Helm release flagger to v1.35.0 Update Helm release flagger to v1.36.0 Feb 7, 2024
@renovate renovate bot changed the title Update Helm release flagger to v1.36.0 Update Helm release flagger to v1.36.1 Mar 6, 2024
@renovate renovate bot changed the title Update Helm release flagger to v1.36.1 Update Helm release flagger to v1.37.0 Mar 26, 2024
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
@renovate renovate bot changed the title Update Helm release flagger to v1.37.0 Update Helm release flagger to v1.38.0 Jul 30, 2024
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