Skip to content

Releases: kubernetes-sigs/kustomize

kustomize/v3.8.1

16 Jul 01:33
0b359d0
Compare
Choose a tag to compare

v3.8.1 continues work to rebase kustomize on kyaml.

Kustomize transformers in the v3.8 branch don't depend on kubernetes/* modules. Such dependence exists in the v3.7 branch.

The i/o code in v3.8 still depends on kubernetes/*, but this dependence is being removed to allow reintegration with kubectl.

This release purports to fix an issue arising from the switchover.

This release includes allowing empty lists in resources to be
explicitly declared and retained as such.

So YAML like

  someList: []

won't be dropped in the course of transformation or formatting, as may happen to other empty fields.

Present but declaratively empty list (array) fields are handy as documentation and as
targets for array extension under the fine print of rfc6902.

It's likely going to be important to allow patches to add entries to list fields that are completely missing (creating such fields in the process, as long as openapi type declarations are respected), but that's a different issue.

partial Changelog

155411f Pin to kustomize/api v0.5.1
22ee7cb Pre v3.8.1; Add e2e tests pinned at v3.8.0

(Other changes in the kyaml module)

api/v0.5.1

16 Jul 00:56
699cc70
Compare
Choose a tag to compare

Changelog

a63a472 Pin To Kyaml/v0.4.1

kustomize/v3.8.0

05 Jul 14:29
6a50372
Compare
Choose a tag to compare

v3.8.0 has no new features, and no change in the API relative to v3.7.0, but the output will change.

The output may order fields within objects differently, and generally do a better job dropping empty fields. This should have no impact on cluster behavior, and no impact on object-to-object comparisons, but it may cause (text-based) YAML comparison tests to fail (in tests maintained outside the kustomize repository).

In v3.8.0, the transformations still (technically) depend on apimachinery, but by default won't use apimachinery code paths - they'll use kyaml instead. That's what changes the output.

If v3.8.0 causes problems for you, switch back to v3.7.0 for now, but please examine your tests, adjusting them to the new behavior, and file issues for anything that looks not just different, but incorrect.

This will help improve kyaml. kyaml, not apimachinery, is the backing library for k8s yaml manipulation going forward. This work is required to close #2506 (breaking dependence on apimachinery), which in turn blocks #1500.

There's no global flag to switch back to the old behavior. A global flag could have been introduced, but it would have been impractical. If the flag's default had been to use the old apimachinery code, nobody would have tried the new flag, thus nobody would have tried the new kyaml code. And switching flags in CD scripts is as annoying or more annoying than simply switching back to the 3.7.0 binary.

For those interested, a transformer in the 3.8.0 framework can use the old apimachinery code by using an explicit config containing the line

YAMLSupport = false

This option will, however, go away in the next release.

Post v3.8.0, all apimachery dependence will be removed. This will greatly simplify the code base and allow a new version of kustomize to be reintroduced to kubectl.

Changelog

5a02286 Switch kustomize to api/v0.5.0

api/v0.5.0

05 Jul 00:30
def0022
Compare
Choose a tag to compare

Changelog

d3a7335 Switch namespace and patch transformers to kyaml.

kustomize/v3.7.0

04 Jul 19:33
42d1f7b
Compare
Choose a tag to compare

A rollup of all bug fixes since v3.6.1 (2020 May 27), primarily fixes to the underlying yaml libraries.

Includes an initial (alpha) framework allowing kustomize to share functions with kpt.

api/v0.4.2

04 Jul 16:48
42d1f7b
Compare
Choose a tag to compare

Changelog

87c7a32 Drop grep invert-match shorthand flag to resolve conflict with log level verbosity
c12e95f Hide list-subst behind a flag
d4eb2c9 New cloud build scripts.
5fb238a Prep to release kustomize 3.7.0 on api v0.4.2
9567d7e Remove count field, convert error to warning
128e171 Sync everything to gopkg.in/yaml.v2 v2.3.0 via kyaml v0.3.4
622a121 Update build strategy.
42d1f7b Update cloudbuild.sh

kustomize/v3.6.1

27 May 21:03
c97fa94
Compare
Choose a tag to compare

v3.6.0 didn't work with go install because it had relative path replacements in the go.mod file; see #2462.
This release has that issue fixed, and includes #2537.

api/v0.4.1

27 May 20:33
dd4aafe
Compare
Choose a tag to compare

Changelog

5449dbc Fix git commit hash ignored
e5e4f33 Fix go-getter

kustomize/v3.6.0

27 May 19:59
adb56ab
Compare
Choose a tag to compare
kustomize/v3.6.0 Pre-release
Pre-release

This release works via binary download, but in its initial form did not work with go install because some relative path replacement directives were mistakenly left in place.

FWIW, go install works with

go clean --modcache; go clean --cache;
GOPROXY=direct GOSUBDB=off GO111MODULE=on go install sigs.k8s.io/kustomize/kustomize/v3

Feel free to skip this and go directly to v3.6.1

Changelog

def978b pin kustomize to cmd/kubectl_v0_1_0

api/v0.4.0

24 May 16:40
13eedd9
Compare
Choose a tag to compare

Two weeks from previous (3.5.5) release.

  • a few misc bug fixes and error message improvements.
    New tests to provide regression coverage for protection
    from an upcoming refactor.
  • now pinned to kyaml 0.0.11 and k8s v0.17.0 (kustomize lags k8s by one,
    and we plan to remove this dependency as it blocks kubectl re-integration).
  • bump in minor because of new builtin transformer:
    valueAdd.
    This is anticipated as one of several dedicated transformers that
    provide the functionality intended by IETF RFC 6902, with
    kubernetes specific extension like smart edits to file paths.
    The whole family would be add, replace, move, copy, maybe remove.
    For simple value addition or change, this transformer is
    already more powerful and easier to use than the existing patch
    transfomer. As yet, there's no dedicated kustomization.yaml file field
    for it, so one must follow the example and use it as a plugin.

Changelog

06174fb Add Cluster as not namespaceable kind
4d88032 Add comments
2b0b29a Add flag for running test
eba34f4 Add init as an alias to create
02184db Add logging.
650f111 Add release command
0b12f6c Add test
44f5093 Add tests
909bc25 Add tests for modulemeta and moduleversion
823847d Add tools package, tidy go mods
cd3b87e Basic structure of releasing program
557cd65 Finish pushing tag
28c9199 Fix cmd/config windows issues
1dced55 Improve branch existence check
32ed552 List latest versions
b4f9e9a Make plugin utils package.
589f274 Mark components example as WIP
2df3a7f Refactor
93bfb5b Release cmd/config
276270e Release kyaml
75d8492 Remove flakey test optimization.
a193129 Remove race in tests.
68d6b9a Remove testing
fd8c637 Simplify install
f63faca Test on windows and mac
847d415 Update examples versions
ffde2c4 Update execPluginGuidedExample.md
81da8f6 Update functions names
4b68425 Update readme for releasing
82a0573 kustomize api v0.4.0