This PR intends to move the loader api to
internal. Only the necessary methods which
are needed for the api have been put into
`pkg/loader.go`.
Signed-off-by: Varsha Prasad Narsing <varshaprasad96@gmail.com>
* change: components apply after all generator and transformer applied
* fix name for a test case
* add comment about when the components will be executed
* components are applied before transformer
* Move demandDirectoryRoot into kyaml/filesys
* Make root directory platform-agnostic
Support windows root directory. Dogfood own error package.
* Use cleaner windows support implementation
* Address feedback
* Address feedback x2
* Re-apply go.sum changes to avoid CI errors
The apimachinery code path, in its final marshalling
for output, calls Marshall
https://github.com/go-yaml/yaml/blob/v2/yaml.go#L199
This code path (via apimachinery Unstructured types)
has no JSON schema tags
https://yaml.org/spec/1.2/spec.html#id2803311
so it adds quotes to values that smell like
booleans and ints (e.g. `false` becomes `"false"`).
The kyaml code path, OTOH, uses such tags,
so generally does not quote ints and booleans.
This PR isolates this difference in behavior to
one set of tests (using data fields in configmaps
in api/krusty/configmaps_test.go) so that
they don't confuse other tests that cover
completely different behaviors.