Releases: KusionStack/kusion
v0.13.0-alpha.1
What's Changed
- fix: typo in destroy.go and destroy_test.go filenames by @EdenBW in #1251
- fix: deep copy release to update when destroy by @liu-hm19 in #1252
- feat: bump kpm to v0.9.5 and upgrade related dependencies by @liu-hm19 in #1257
- feat: bump kcl go version to v0.10.0-alpha.3 by @liu-hm19 in #1258
- feat: remove requirement to use imported resource when apply by @hoangndst in #1260
- feat: add a new command kusion release list by @ekjotsinghmakhija in #1235
- feat: Viettel Cloud secrets manager by @hoangndst in #1267
- feat: add kusion release show command by @hoangndst in #1265
- feat: add KCL based customized health check by @Yangyang96 in #1268
- fix: json patch allows empty path on add and remove by @liu-hm19 in #1274
- fix: add rpc tag for builds in goreleaser by @liu-hm19 in #1275
New Contributors
- @EdenBW made their first contribution in #1251
- @ekjotsinghmakhija made their first contribution in #1235
- @Yangyang96 made their first contribution in #1268
Full Changelog: v0.12.1...v0.13.0-alpha.1
v0.12.1
Features
Optimize Storage Backend Management
In this version, we add support for AWS S3 path-style
endpoint for Kusion backend storage, and provide the new kusion release unlock
command to unlock the latest Release
file of the current Stack
. @hoangndst @liu-hm19
Optimize the Display of Sensitive Information
In previous versions, the kusion preview
and kusion apply
command would directly expose the plaintext data
and stringData
when displaying Kubernetes Secret
resources, posing a risk of sensitive information leakage. In this version, we have optimized the preview of the sensitive information, and the data
and stringData
of Kubernetes Secret
resources will not be displayed in plaintext. @liu-hm19
Optimize Terraform Cloud Resource Management
In this version, Kusion provides the ability to import existing cloud resources, and for the imported resources, Kusion will skip their deletion during kusion destroy
, as there may be multiple applications sharing the same resources. Additionally, Kusion also supports concurrent operations on independent Terraform resources, thereby improving the operational efficiency. @liu-hm19 @hoangndst @SparkYuan
Support Runtime Configurations in Workspace
In this version, users can declare the Kubernetes cluster configs and Terraform Provider credentials as runtime configurations in the context
field in Workspace
. @liu-hm19
Support Using Spec for Preview and Apply
In this version, Kusion supports using the Spec
file as the input for the kusion preview
and kusion apply
command. Users can specify a Spec
file in the Stack
directory with the --spec-file
flag. @liu-hm19
Workload Modularization
In the version of v0.12.0
, we have decoupled the schema definitions of Service
and Job
workloads separately from the codes of Kusion. And in this version, we have completely modularized the Workload
, both of the schema definitions and module generator implementations for Service
and Job
workloads have been moved to the catalog repository. And users can also implement their own customized Workload
modules according to their needs. @SparkYuan
Bug Fixes
- Fix a bug of volume directory overwrite @vietanhtwdk
- Fix a bug of reusing cached Terraform providers @SparkYuan
- Fix a bug of
JsonPatch
error message exposure @Liuxingyu1111111
New Contributors
- @hoangndst made their first contribution in #1189
- @vietanhtwdk made their first contribution in #1214
Docker Images
kusionstack/kusion:v0.12.1
Full Changelog: v0.12.0...v0.12.1
v0.12.1-rc.3
Changelog
- b0e216e: chore(deps): bump github.com/docker/docker (#1242) (@dependabot[bot])
- f6d89bb: feat: modularize workload (#1236) (@SparkYuan)
- 2c24840: feat: optimize terminal ui for kusion apply (#1241) (@liu-hm19)
- da2fc28: feat: support imported resources (#1238) (@liu-hm19)
- c772aed: feat: workload is no longer mandatory in the AppConfig (#1246) (@SparkYuan)
- 0186e14: fix: a bug of getting kubeconfig client (#1234) (@liu-hm19)
- 1d59d71: fix: duplicate equal sign in mod push cmd comments (#1244) (@adohe)
- 1953b6e: fix: return more detailed error msg with JsonPatch (#1245) (@Liuxingyu1111111)
Docker Images
kusionstack/kusion:0.12.1-rc.3
Dependent version
- kcl-go: ``
- kcl-plugin: ``
v0.12.1-rc.2
v0.12.1-rc.1
What's Changed
- fix: goreleaser deprecation notices by @liu-hm19 in #1163
- test: uncomment e2e tests by @SparkYuan in #1164
- docs: update the Chinese readme and the Windows download command by @SparkYuan in #1172
- feat: move secret references replacement form generating to applying by @SparkYuan in #1173
- fix: skip replacing secret data without ref prefix by @liu-hm19 in #1175
- feat: replace secret references in the preview by @SparkYuan in #1180
- feat: add support for on-premises secret provider define in api.kusion.io by @Liuxingyu1111111 in #1179
- chore(deps): bump github.com/docker/docker from 25.0.3+incompatible to 25.0.5+incompatible by @dependabot in #1184
- chore(deps): bump github.com/go-jose/go-jose/v3 from 3.0.2 to 3.0.3 by @dependabot in #1183
- chore(deps): bump github.com/hashicorp/go-retryablehttp from 0.7.5 to 0.7.7 by @dependabot in #1182
- feat: support spec file as input of preview and apply by @liu-hm19 in #1185
- feat: support path-style of bucket for s3 storage backend by @hoangndst in #1189
- ci: check md links periodically by @SparkYuan in #1193
- feat: support terraform resource import by @liu-hm19 in #1186
- feat: support release unlock command by @liu-hm19 in #1191
- feat: mask secret data in preview result by @liu-hm19 in #1176
- test: add windows e2e test by @liu-hm19 in #1197
- feat: enable concurrent manipulation of TF resources since they are stored in different directories by @SparkYuan in #1194
- fix: a TF breaking change to enable reusing cached providers by @SparkYuan in #1199
- chore(deps): bump github.com/hashicorp/go-getter from 1.7.4 to 1.7.5 by @dependabot in #1207
- chore(deps): bump google.golang.org/grpc from 1.64.0 to 1.64.1 by @dependabot in #1212
- fix: the latter volume dirs overwrite the prior one by @vietanhtwdk in #1214
- feat: support runtime configurations in workspace by @liu-hm19 in #1211
- fix: locked release file caused by interruption by @liu-hm19 in #1219
New Contributors
- @hoangndst made their first contribution in #1189
- @vietanhtwdk made their first contribution in #1214
Full Changelog: v0.12.0-rc.4...v0.12.1-rc.1
v0.12.0
Features
Kusion Apply Enhancement
In the previous versions, kusion apply
by default only sends the apply request and does not wait for actual reconciliation of Kubernetes resources. In this version, the kusion apply
command has been enhanced with upgraded functionality and user experience, including the support of timeout settings, default watch and real-time display for resource reconciliation, along with a better terminal user interface. @liu-hm19
State Upgrades to Release
In the previous versions, a state file would be created or updated in the storage backend to record the resource status after applying or destroying a stack. In this version, we have upgraded the state into release, which now records both the spec and the state of a stack, as well as the operation phase, making it more suitable and convenient for team collaboration and audit management. @healthjyk
Kusion Module Management Upgrade
In this version, we added the kusion mod list
and kusion mod add
commands for developers to better manage the Kusion modules. kusion mod list
can help to obtain the name, version and URL of the available modules in a specific workspace. And kusion mod add
enables users to fetch module artifacts and add the corresponding dependency declarations in kcl.mod
. @SparkYuan
Workload Modularization
In the version of v0.11.1
, the Workload schema was tightly coupled with the AppConfiguration model. And in this version, we implemented the modularization of the Workload. The built-in definitions for the Service and Job modules have been moved to the catalog repository. Users can also implement customized Workload modules according to their own needs. @SparkYuan
Bug Fixes
- Fix a bug of customized namespace to correctly get Kubernetes namespace @adohe
- Fix a bug of secrets management @SparkYuan
- Fix some bugs of Kubernetes resource normalization and conversion @Liuxingyu1111111 @SparkYuan
- Fix some bugs of applying and destroying Terraform resources on the Windows system @SparkYuan
New Contributors
- @Liuxingyu1111111 made their first contribution in #1144
- @wolfcode111 made their first contribution in #1147
Docker Images
kusionstack/kusion:v0.12.0
v0.12.0-rc.4
Changelog
- 9dfb07a: fix: broken link of README.md (#1157) (@adohe)
- 0775e3d: fix: broken slack link of README.md (#1159) (@adohe)
- 982e263: fix: invalid dir when deleting tf resources (#1161) (@SparkYuan)
- 71c91ed: fix: tf resource directory name to comply with Windows directory naming conventions (#1160) (@SparkYuan)
- 7e50571: fix: the former module patchers are override by the latter one (#1158) (@SparkYuan)
- ebfe956: fix: update README.md remove legacy info (#1156) (@adohe)
Docker Images
kusionstack/kusion:0.12.0-rc.4
Dependent version
- kcl-go: ``
- kcl-plugin: ``
v0.12.0-rc.3
Changelog
- 2bda750: fix: os arch option for mod push (#1154) (@liu-hm19)
- 1df3c90: fix: reset $kusion.path ref to the original value when replace faild in the preview (#1155) (@SparkYuan)
Docker Images
kusionstack/kusion:0.12.0-rc.3
Dependent version
- kcl-go: ``
- kcl-plugin: ``
v0.12.0-rc.2
Changelog
- 6549a04: chore: delete redundant print msg (#1145) (@SparkYuan)
- 00af90c: chore: update init scaffold template (#1072) (@liu-hm19)
- 06a8570: feat: automatically download kusion modules in the
mod add
(#1150) (@SparkYuan) - db5886a: feat: update the init and stack create scaffolding templates (#1149) (@liu-hm19)
- 01e877d: fix: delete an empty line in mod list (#1146) (@SparkYuan)
- 1728745: fix: improved the documentation description (#1147) (@wolfcode111)
- 6c426ce: fix: init target project name (#1068) (@liu-hm19)
- c31e1f7: fix: probe type judgment in conversion from kusion probe to k8s probe (#1144) (@Liuxingyu1111111)
- ed07c4e: fix: secret store doesn't work (#1142) (@SparkYuan)
- 389d3ee: fix: set the release phase as failed when exit apply prompt (#1148) (@liu-hm19)
- 08b40e2: fix: watch context timeout and display text for apply (#1153) (@liu-hm19)
Docker Images
kusionstack/kusion:0.12.0-rc.2
Dependent version
- kcl-go: ``
- kcl-plugin: ``
v0.12.0-rc.1
Changelog
- 6da5948: chore: clean up the exposing of mysql table (#1108) (@healthjyk)
- f258f51: chore: optimize some err messages (#1141) (@SparkYuan)
- 5b8ef9f: feat: add Release type which is triggered by kusion apply (#1099) (@healthjyk)
- fc20b33: feat: add a command 'mod add' (#1136) (@SparkYuan)
- be37829: feat: add context in the module grpc (#1118) (@SparkYuan)
- 2bc1c28: feat: add context in the workspace (#1113) (@SparkYuan)
- 78cbbbd: feat: add pod labels/annotations in the workload patcher (#1123) (@SparkYuan)
- 2aa9fdb: feat: add release validation (#1122) (@healthjyk)
- 8ed1c20: feat: add the release storage interface (#1107) (@healthjyk)
- 6b08fab: feat: change workload type to adapt to the new module (#1110) (@SparkYuan)
- 272ee0d: feat: clean the usage of deprecated state and its storage (#1133) (@healthjyk)
- c7455b0: feat: do not support mysql backend anymore (#1100) (@healthjyk)
- 113ffdf: feat: expose the CopyDependentModules method (#1111) (@SparkYuan)
- 45336c8: feat: ignore workloads as modules when generating the spec (#1125) (@SparkYuan)
- f9c000c: feat: merge branch 0.12.0 (#1109) (@SparkYuan)
- 5ca1c82: feat: move internal.kusion.io to api.kusion.io (#1119) (@SparkYuan)
- ed65e3a: feat: no support of phase in the release metadata (#1135) (@healthjyk)
- aabbb5e: feat: optimize kusion apply with by default watching (#1139) (@liu-hm19)
- bd90c5a: feat: optimize platform module config logic (#1129) (@SparkYuan)
- a444589: feat: realize release storage of local, oss and s3 (#1112) (@healthjyk)
- 70e6c6a: feat: realize release storage using backend (#1120) (@healthjyk)
- 46465fc: feat: skip to move built-in workloads to KUSION_HOME during generating the Spec (#1128) (@SparkYuan)
- 7feee90: feat: support json patch in the module generate method (#1127) (@SparkYuan)
- e8b7124: feat: update kusion cli descriptions (#1103) (@liu-hm19)
- 7765bc1: feat: use release to update state usage in preview/apply/destroy (#1130) (@healthjyk)
- 519b8c3: feat: validate module path and version in the workspace (#1131) (@SparkYuan)
- 57dcede: fix: customize namespace issue to get correct k8s namespace name (#1132) (@adohe)
- 036e44a: fix: normalize the k8s workload to fix a deep-copy int error (#1138) (@SparkYuan)
Docker Images
kusionstack/kusion:0.12.0-rc.1
Dependent version
- kcl-go: ``
- kcl-plugin: ``