Skip to content

Releases: openkruise/rollouts

v0.5.0

21 Dec 07:35
Compare
Choose a tag to compare

To install or upgrade to the old version, see installation doc.

Change Log Since v0.4.1

Resources Graduating to BETA

After more than a year of development, we have now decided to upgrade the following resources to v1beta1, as follows:

  • Rollout
  • BatchRelease

Please refer to the community documentation for detailed api definitions.

Note: The v1alpha1 api is still available, and you can still use the v1alpha1 api in v0.5.0.
But we still recommend that you migrate to v1beta1 gradually, as some of the new features will only be available in v1beta1,
e.g., Extensible Traffic Routing Based on Lua Script.

Bump To V1beta1 Gateway API

Support for GatewayAPI from v1alpha2 to v1beta1, you can use v1beta1 gateway API.

Extensible Traffic Routing Based on Lua Script

The Gateway API is a standard gateway resource given by the K8S community, but there are still a large number of users in the community who are still using some customized gateway resources, such as VirtualService, Apisix, and so on.
In order to adapt to this behavior and meet the diverse demands of the community for gateway resources, we support a traffic routing scheme based on Lua scripts.

Kruise Rollout utilizes a Lua-script-based customization approach for API Gateway resources (Istio VirtualService, Apisix ApisixRoute, Kuma TrafficRoute and etc.).
Kruise Rollout involves invoking Lua scripts to retrieve and update the desired configurations of resources based on release strategies and the original configurations of API Gateway resources (including spec, labels, and annotations).
It enables users to easily adapt and integrate various types of API Gateway resources without modifying existing code and configurations.

By using Kruise Rollout, users can:

  • Customize Lua scripts for handling API Gateway resources, allowing for flexible implementation of resource processing and providing support for a wider range of resources.
  • Utilize a common Rollout configuration template to configure different resources, reducing configuration complexity and facilitating user configuration.

Traffic Routing with Istio

Based on the lua script approach, now we add built-in support for Istio resources VirtualService,
you can directly use Kruise Rollout to achieve Istio scenarios Canary, A/B Testing release.

Others

  • Bug fix: wait grace period seconds after pod creation/upgrade. (#185, @veophi)

v0.4.1

09 Aug 07:04
Compare
Choose a tag to compare

To install or upgrade to the old version, see installation doc.

Change Log Since v0.4.0

Bug fix:

v0.4.0

18 Jul 05:58
Compare
Choose a tag to compare

To install or upgrade to the old version, see installation doc.

Change Log Since v0.3.0

New Features:

  • Rollout Support Kruise Advanced DaemonSet. (#134, @Yadan-Wei)
  • Rollout support end-to-end canary deployment. (#153, @zmberg)
  • Rollout trafficTouting support requestHeaderModifier. (#156, @zmberg)
  • Rollout support disabled for a rollout. (#155, @Kuromesi)
  • Rollout support patch PodTemplateMetadata. (#157, @zmberg)
  • Rollout only webhook workload which has rollout CR. (#158, @zmberg)
  • Advanced deployment scale down old unhealthy pods firstly. (#150, @veophi)
  • Update k8s registry references to registry.k8s.io. (#126, @asa3311)
  • When the data type of spec.replicas is int, cancel the upper 100 limit. (#142, @MrSumeng)
  • Add e2e test for advanced daemonSet. (#143, @Janice1457)
  • Exclude workload deleted matching labels in webhook. (#146, @wangyikewxgm)
  • Optimize the modification of rollout to GatewayAPI httpRoute header. (#137, @ZhangSetSail)

v0.3.0

13 Feb 07:45
5fd8464
Compare
Choose a tag to compare

To install or upgrade to the old version, see installation doc.

Change Log Since v0.2.0

New Features:

  • Support rolling update deployment in batches without extra canary deployment, #115, #110, #106, #105, #104.
  • Support A/B Testing traffic routing, #86, #108.
  • Support various types of traffic routing via adding Lua scripts in a pluggable way, #86.
  • Support Higress traffic routing, #116.
  • Support failure toleration threshold for rollout, #101.
  • Support multi-architectures, such as x86 and arm, #83.

Optimization:

  • Optimize rollout/batchRelease controller implementation, #102, #90.
  • Allow users define the number of goroutines of controller, #67.
  • Add UserAgent = kruise-rollout for kruise-rollout operator, #64.
  • Define rollout-id in workload instead of rollout to avoid race bug, #73.

v0.3.0-rc.0

20 Dec 07:03
7bfc93c
Compare
Choose a tag to compare

To install or upgrade to the old version, see installation doc.

Kruise-Rollout-Controller

  • Support A/B Testing traffic routing, #86

v0.2.0

29 Aug 10:48
c322b09
Compare
Choose a tag to compare

To install or upgrade to the old version, see installation doc.

Kruise-Rollout-Controller

  • Support Gateway API;
  • Support batch release for StatefulSet & Advanced StatefulSet.
  • Support patching batch ID label to Pods during releasing;
  • Fix some bugs.

Documents

  • Introduction, Installation, Basic Usage

Thanks to all our contributors! 😊

v0.1.1

12 Jul 05:48
Compare
Choose a tag to compare

To install or upgrade to the old version, see installation doc.

Kruise-Rollout-Controller

  • Do not copy labels/annotations/finalizers to canary deployment

Thanks to all our contributors! 😊

v0.1.0

20 Apr 13:01
15d5a77
Compare
Choose a tag to compare

To install or upgrade to the old version, see installation doc.

Kruise-Rollout-Controller

  • Support Canary Publishing + Nginx Ingress + Workload(CloneSet, Deployment)
  • Support for Batch Release(e.g. 20%, 40%, 60%, 80, 100%) for workload(CloneSet)

Documents

  • Introduction, Installation, Basic Usage

Thanks to all our contributors! 😊