This is the last commit in yaml.v3 before
ae27a74434
which changed the indentation of sequence.
That change has has large downstream impact on tests in the kustomize
repo. To upgrade beyond this point in yaml.v3 means many changes to
indentation in "expected" values in tests. That should be done in a
PR dedicated to that purpose, after specific consideration the change.
ALLOW_MODULE_SPAN
While it is possible to use a kustomizeconfig.yml for this, with a
custom namereference, this functionality should probably be built-in.
This is similar to previous PRs, like this one:
https://github.com/kubernetes-sigs/kustomize/pull/592
This PR
- defines a patch conflict detector interface,
- extracts implementations of the interface from the
merginator code, making the merginator code
independent of --enable_kyaml.
- injects those implementations into kustomize
as a function of --enable_kyaml.
So, instead of using different merginators to combine
resmaps, this pr allows the use of a single patch merge
code path that uses different conflict detectors.
So instead of debating how to merge, we're now only
considering whether to warn on conflict detection
in one transformer.
This PR is in service of #3304, eliminating seven
instances where --enable_kyaml was consulted. These
were cases where conflict detection wasn't an issue
(but merging patches was).
Currently, we always fetch the default branch with an initial git clone
and then fetch the ref after if it's specified. This changes it to only
make one fetch instead of two if a ref is specified.
The implementations in WNode are supposed to be thin,
as it will be removed once #2506 closes.
The change also makes some addjustments for the
upcoming flip of the enable_kyaml flag, pointing to
issue #3271.