Skip to content

Commit 8133d6f

Browse files
committed
Blog: Release 1.10.4
Signed-off-by: Brian Kane <briankane1@gmail.com>
1 parent 607d610 commit 8133d6f

File tree

1 file changed

+145
-0
lines changed

1 file changed

+145
-0
lines changed

blog/2025-10-20-release-1.10.4.md

Lines changed: 145 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,145 @@
1+
---
2+
title: KubeVela 1.10.4 released
3+
author: Brian Kane
4+
author_title: KubeVela Team
5+
author_url: https://github.com/briankane
6+
author_image_url: https://KubeVela.io/img/logo.svg
7+
tags: [ KubeVela, release-note, Kubernetes, DevOps, CNCF, CI/CD, Application delivery, Role-Based Access Control, Telemetry]
8+
description: "This article discusses the changes released in the latest v1.10.4 release"
9+
image: https://raw.githubusercontent.com/oam-dev/KubeVela.io/main/docs/resources/KubeVela-03.png
10+
hide_table_of_contents: false
11+
---
12+
13+
**Hello community!** 👋
14+
15+
This is the first blog post in a while but we are excited to reinvigorate the community and keep developers and users up to date with all things KubeVela! The team is committed to providing regular updates, news and information about upcoming events and features.
16+
17+
We recently released the latest v1.10.4 which includes a host of useful features to improve the maintainability of Applications deployed with Kubevela. This blog will provide a quick overview of the features and how you can get started with utilising them in your KubeVela setup.
18+
19+
# New Features
20+
While v1.10.4 follows semantic versioning as a patch release, we're excited to deliver several new opt-in features alongside the usual bug fixes and improvements.
21+
22+
These features are disabled by default (where applicable) to maintain backward compatibility, allowing users to adopt them at their own pace.
23+
24+
<!--truncate-->
25+
## Kubernetes 1.31 Support
26+
The team have put huge efforts into completing the support for Kubernetes v1.31 across all KubeVela repositories.
27+
28+
Users can now confidently run KubeVela on Kubernetes 1.31 with all core functionality validated.
29+
30+
<!--truncate-->
31+
32+
## Resource Existence Validation
33+
KubeVela users can now validate that the resources being created by their definitions are present on the cluster ahead of deployment of the Application. This new feature will work across Component, Trait, Policy and WorkflowStep definitions to reduce runtime errors and improve the overall reliability of KubeVela deployments.
34+
35+
To get started, developers can set `ValidateResourcesExist` feature flag in their installations.
36+
37+
See [PR 6932](https://github.com/kubevela/kubevela/pull/6932) for more information.
38+
39+
<!--truncate-->
40+
41+
## Native Cue in Health Fields
42+
Developers writing workload definitions can now status attributes in native cue, rather than nested strings. Behind the scenes, the string and cue conversions happen automatically and include some new validations of the attribute types and the presence of required fields.
43+
44+
This feature is enabled by default; but you'll need to ensure to use the latest version of the KubeVela CLI to take advantage of cue formatting. String formatting is completely backwards compatible.
45+
46+
See [PR 6859](https://github.com/kubevela/kubevela/pull/6859) for more information.
47+
48+
<!--truncate-->
49+
50+
## Enhanced Status Reporting
51+
Applications had two primary means to communicate status - the [Health Check](https://kubevela.io/docs/next/platform-engineers/status/definition_health_status/#2-health-check---overall-health-indicator) and [Custom Message](https://kubevela.io/docs/next/platform-engineers/status/definition_health_status/#2-health-check---overall-health-indicator). Whilst these provide an insight into the overall health of the application and give a succinct human readable summary of current state - we had feedback from developers that they required a longer lived, more detailed way to capture information about managed resources.
52+
53+
Hence, we added the new [Status Details](https://kubevela.io/docs/next/platform-engineers/status/definition_health_status/#1-status-details---structured-diagnostic-information) field that can capture a map of any information developers feel is useful for reporting on, debugging or observing their components & traits.
54+
55+
It uses familiar cue syntax to extract information and has access to the full KubeVela context already accessible in Health Checks and Custom Messages.
56+
57+
For example, from the docs:
58+
59+
```
60+
attributes: status: details: {
61+
readyReplicas: context.output.status.readyReplicas
62+
totalReplicas: context.output.spec.replicas
63+
readyPercentage: (context.output.status.readyReplicas / context.output.spec.replicas) * 100
64+
deploymentMode: context.output.spec.strategy.type
65+
}
66+
```
67+
68+
will provide users with the following in their Application status, allowing for better abstraction from the underlying resource.
69+
```
70+
status:
71+
services:
72+
- name: my-service
73+
status:
74+
readyReplicas: "3"
75+
totalReplicas: "3"
76+
readyPercentage: "100"
77+
deploymentMode: "RollingUpdate"
78+
```
79+
80+
Better still - we've put work into unifying the various status evaluators. The fields captured in Status Details are made available in the Health Check and Custom Message (via `context.status.details`) so that logic can be better reused. See [How Status Evaluation Works](https://kubevela.io/docs/next/platform-engineers/status/definition_health_status/#how-status-evaluation-works) for full details of the changes.
81+
82+
See [PR 6828](https://github.com/kubevela/kubevela/pull/6828) or the [revised documentation](https://kubevela.io/docs/next/platform-engineers/status/definition_health_status) for more information.
83+
84+
<!--truncate-->
85+
86+
## Application Status Metrics
87+
As part of the fix in [PR 6824](https://github.com/kubevela/kubevela/pull/6824) we now ensures that Application health is continuously evaluated, even after the workflow succeeds.
88+
89+
To compliment this, we've added additional application level metrics so that operators can have simplified visibility into the status of their Applications.
90+
91+
These are the:
92+
- kubevela_application_health_status{app_name, namespace}
93+
- kubevela_application_phase{app_name, namespace}
94+
- kubevela_application_workflow_phase{app_name, namespace}
95+
96+
We've made efforts to ensure these are low cardinality through numeric phase mapping - so operators should be able to collect and monitor these cost effectively in their monitoring solutions.
97+
98+
To add more depth to monitoring capabilities, we've also added structured logging when Application changes occur. These logs capture the Application state in a high detail of detail to supplement the new metrics.
99+
100+
The full structure of these logs can be found [here](https://kubevela.io/docs/next/platform-engineers/status/application_health_status_metrics/#structured-logging)
101+
102+
To get started, users can enable the EnableApplicationStatusMetrics feature gate to activate both metrics and the new structured logging.
103+
104+
See [PR 6857](https://github.com/kubevela/kubevela/pull/6857) or the [documentation](https://kubevela.io/docs/next/platform-engineers/status/application_health_status_metrics/) for more information.
105+
106+
<!--truncate-->
107+
108+
## Dependency-Aware Workflows
109+
[Issue 6852](https://github.com/kubevela/kubevela/issues/6852) raised the issue with the confusion of DependsOn [within components](https://kubevela.io/docs/end-user/workflow/component-dependency-parameter/#dependency), and DependsOn [within workflows](https://kubevela.io/docs/end-user/workflow/dependency/#how-to-use) - and how workflows did not natively respect component dependencies.
110+
111+
KubeVela will now dynamically add workflow dependencies between steps according to the components dependencies; which is vastly simplified and much more in line with user expectations.
112+
113+
See [PR 6854](https://github.com/kubevela/kubevela/pull/6854) for more information.
114+
115+
<!--truncate-->
116+
117+
## Colorised Logging Support
118+
We've introduced opt-in support for colorised logging to improve the developer debugging experience.
119+
120+
For production and CI, this is disabled and existing log functionality is preserved. Developers can use the new `--dev-logs` to enable this for their console output.
121+
122+
The log formatting enhancements include:
123+
- Color-coded structured fields (cyan for keys, grey for values)
124+
- Emphasized primary message text in bright white
125+
- Enriched location information (file:method:line)
126+
- Spring Boot-inspired formatting style
127+
128+
<!--truncate-->
129+
<br />
130+
131+
# Full Release Details
132+
Of course this blog doesn't capture all of the great work that went into this release. Our contributors have made amazing progress on fixing bugs, handling chore work, bolstering our test suites, providing feedback & issue reports, and much more.
133+
134+
So a huge thank you due to everyone who contributed during this (and all!) release cycles. The full details of the release can be found at [v1.10.4](https://github.com/kubevela/kubevela/releases/tag/v1.10.4)
135+
136+
<!--truncate-->
137+
<br />
138+
139+
# Give Us Your Feedback
140+
141+
We are excited for the community to get their hands on these new features and encourage any feedback or contributions to keep improving KubeVela!
142+
143+
Slack: [#kubevela](https://cloud-native.slack.com/archives/C01BLQ3HTJA) (English)
144+
145+
Every week we host a [community meeting](https://github.com/kubevela/community?tab=readme-ov-file#community-meetings) to showcase new features, review upcoming milestones, and engage in a Q&A. All are welcome!

0 commit comments

Comments
 (0)