Commit Graph

582 Commits

Author SHA1 Message Date
Anna Song
fb294921f5 Localize helm fields (#4978)
* Localize helm fields

* Address readability feedback

* Handle edge cases

* Improve readability

Split copyChartHome and use existence to prevent repeated copying.
2023-01-26 12:56:26 -08:00
Kubernetes Prow Robot
af9a13111b Merge pull request #4944 from ephesused/optimize-getannotations-2
Refactor mapping node traversal and optimize RNode.GetAnnotations and RNode.GetLabels
2023-01-26 12:18:25 -08:00
Katrina Verey
8b21844b10 Do not use filepath.Separator for splitting URLs 2023-01-24 18:10:34 -05:00
Anna Song
298b87a223 Fix master
Fix RepoSpec build errors as result of merging 2 RepoSpec PRs in parallel
2023-01-23 13:21:55 -08:00
Kubernetes Prow Robot
a69092c4b7 Merge pull request #4986 from KnVerey/repospec_custom_usernames
repospec: support ssh urls with ssh certificates
2023-01-20 13:23:54 -08:00
Kubernetes Prow Robot
0a1aa7c2cb Merge pull request #4985 from KnVerey/repospec-git-suffix
Proposal: Remove RepoSpec manipulation of .git suffix
2023-01-20 13:16:01 -08:00
Katrina Verey
2405da65d2 repospec: support ssh urls with ssh certificates 2023-01-17 23:25:07 -05:00
Katrina Verey
7e000aa820 Remove manipulation of .git suffix, which is just a conventional part of the directory name 2023-01-17 23:04:16 -05:00
Kubernetes Prow Robot
dbc11a43a8 Merge pull request #4983 from KnVerey/repospec_separators
Refactor parseGitURL
2023-01-17 17:22:34 -08:00
Anna Song
7899b80a00 Localize patch, ReplacementTransformer (#4943)
* Localize PatchStrategicMergeTransformer, ReplacementTransformer

* Improve readability
2023-01-17 12:28:34 -08:00
Katrina Verey
00208394d6 Refactor parseGitURL to consolidate code paths, improve error handling 2023-01-16 20:36:19 -05:00
Cailyn
8ab4b8d167 remove direct dependency on github/pkg/errors (#4970) 2023-01-13 10:52:25 -08:00
Katrina Verey
2b38c12c83 Add uncommitted plugin change and missing makefile dep 2023-01-13 12:53:35 -05:00
Katrina Verey
3134e9b0c2 Better SCP colon-must-be-after-slash test 2023-01-10 16:14:54 -05:00
Katrina Verey
c2885642d6 Remove unused param 2023-01-10 15:01:29 -05:00
Katrina Verey
a885ee12c6 Add test for behaviour of scp-like non-github that incorrectly uses slash 2023-01-09 17:32:29 -05:00
Katrina Verey
1a201ab913 do not validate against http+usernames after all 2023-01-09 17:25:10 -05:00
Katrina Verey
240282fc6f Allow file paths that look like usernames 2023-01-09 17:15:40 -05:00
Katrina Verey
ddf14ea688 Deprecate git:: stripping 2023-01-09 13:18:11 -05:00
Katrina Verey
64d2366e87 Naming changes from rebase 2023-01-09 13:15:26 -05:00
Katrina Verey
06999462e7 Make Github less special 2023-01-09 13:13:28 -05:00
Katrina Verey
2591303430 Add test case from github docs 2023-01-09 13:13:28 -05:00
Katrina Verey
150134758f Show change vs master on accepted but invalid ssh-like urls 2023-01-09 13:13:28 -05:00
Katrina Verey
43d96ba91b Address feedback on correctness of SCP/username validations 2023-01-09 13:13:28 -05:00
Katrina Verey
4821259f01 Stop handling mysterious gh: prefix in remote URLs 2023-01-09 13:13:27 -05:00
Katrina Verey
7e6cc7aafb Review feedback 2023-01-09 13:13:27 -05:00
Katrina Verey
dc05fa153f Additional repospec refactoring 2023-01-09 13:13:27 -05:00
Anna Song
fbb94584dc Refactor parseHostSpec
Fix ssh parsing in issue 4847
2023-01-09 13:13:25 -05:00
Kishore Jagannath
772fafa892 Rename Orgrepo and Path (#4922)
* initial changes to rename OrgRepo to RepoPath

* changes to rename Path to KustRootPath

* addressed review comments

* addressed review comments

* docs: Add documentation for namespace transformer

Add a short description of the namespace transformer and example
usage to examples/transformerconfigs/README.md.

References: #629
Signed-off-by: Lars Kellogg-Stedman <lars@oddbit.com>

* Localize patchesJson6902, patchesStrategicMerge, replacements (#4904)

* Localize patchesJson6902, patchesStrategicMerge, replacements

* Address code review feedback

* Improve readability
* Remove deprecation warning check

* Load legacy kustomization fields for `localize` (#4918)

* Load legacy kustomization

* Expose loadKustFile in kusttarget

* remove FixKustomizationPreUnmarshalling

* remove deprecated cfg and fn commands (#4930)

* remove deprecated cfg and fn commands

* fix lint error

* run gofmt

* Localize PatchTransformer, PatchJson6902Transformer (#4920)

* Localize patches, patchesJson6902 custom transformers

* Improve readability

* Localize fields: openapi, configurations, crds (#4907)

* Localize openapi, configurations, crds

* Add integration test

* Move krusty test

* Address code review feedback

* Implement locRootPath (#4909)

* Implement locRootPath, and include userinfo, port in locFilePath

* Strip userinfo, port

* Improve readability

* Localize legacy fields

* Localize resources (#4912)

* Localize resources

* Improve readability

* Add integration tests

* Group test helper functions

* Remove Functionality that Pulls Env Variables from Empty Keys

* Update api/kv/kv.go

Co-authored-by: Katrina Verey <kn.verey@gmail.com>

* refactor Unmarshal Kustomization struct code

* improve error messages

* Run go mod tidy on all modules before update

* Update sigs.k8s.io/yaml to 1.3.0

* fixed test failure because of latest commits

Signed-off-by: Lars Kellogg-Stedman <lars@oddbit.com>
Co-authored-by: Lars Kellogg-Stedman <lars@oddbit.com>
Co-authored-by: Anna Song <annasong@google.com>
Co-authored-by: yugo kobayashi <kobdotsh@gmail.com>
Co-authored-by: Natasha Sarkar <natashasarkar@google.com>
Co-authored-by: Cailyn Edwards <cailyn.edwards@shopify.com>
Co-authored-by: Cailyn <cailyn.s.e@gmail.com>
Co-authored-by: Katrina Verey <kn.verey@gmail.com>
Co-authored-by: Katrina Verey <katrina.verey@shopify.com>
2023-01-09 08:45:29 -08:00
Kubernetes Prow Robot
c6ca3ff799 Merge pull request #4929 from koba1t/refactor/cleanup_Unmarshal_kustomization
Error on duplicate fields in Kustomization
2023-01-06 10:37:59 -08:00
koba1t
6489e35b7c improve error messages 2023-01-07 03:30:16 +09:00
Anna Song
06da3b96a2 Localize resources (#4912)
* Localize resources

* Improve readability

* Add integration tests

* Group test helper functions
2023-01-05 08:47:59 -08:00
Anna Song
3022dd2931 Localize legacy fields 2022-12-22 17:21:16 -05:00
Anna Song
aec35009ed Implement locRootPath (#4909)
* Implement locRootPath, and include userinfo, port in locFilePath

* Strip userinfo, port

* Improve readability
2022-12-22 12:15:26 -08:00
Anna Song
de6162625f Localize fields: openapi, configurations, crds (#4907)
* Localize openapi, configurations, crds

* Add integration test

* Move krusty test

* Address code review feedback
2022-12-22 12:07:26 -08:00
Ed Overton
20b0d3c7ce perf: optimize RNode GetAnnotations and GetLabels
This commit optimizes in three ways:

1. For heavily used functions, allocate memory to avoid overhead
   associated with map and array re-sizing.
2. Where appropriate, limit annotation and label retrievals to only the
   desired keys.
3. Adjust annotation and label retrieval to avoid unnecessary temporary
   object creation.
2022-12-20 17:24:35 -05:00
Anna Song
a1bfab382a Localize PatchTransformer, PatchJson6902Transformer (#4920)
* Localize patches, patchesJson6902 custom transformers

* Improve readability
2022-12-16 09:52:17 -08:00
yugo kobayashi
5fed0f76c8 refactor Unmarshal Kustomization struct code 2022-12-13 21:04:50 +00:00
yugo kobayashi
faddb49c89 remove FixKustomizationPreUnmarshalling 2022-12-13 18:50:25 +00:00
Anna Song
4cccb838ce Load legacy kustomization fields for localize (#4918)
* Load legacy kustomization

* Expose loadKustFile in kusttarget
2022-12-13 08:19:34 -08:00
Anna Song
292d18983d Localize patchesJson6902, patchesStrategicMerge, replacements (#4904)
* Localize patchesJson6902, patchesStrategicMerge, replacements

* Address code review feedback

* Improve readability
* Remove deprecation warning check
2022-12-12 10:41:33 -08:00
Christopher Fry
8a6602db94 Allow name suffix transformer configuration to be overridden 2022-12-08 20:10:05 +00:00
Natasha Sarkar
2db573b6a0 drop support for legacy patches (#4911)
* drop support for legacy patches

* fix CI
2022-12-07 18:06:24 -08:00
Kubernetes Prow Robot
8a869f6045 Merge pull request #4882 from ChristopherFry/cfry/user-config-priority
Add test ensuring user configuration overrides default configuration
2022-12-06 22:46:38 -08:00
Christopher Fry
570865baae Address peer review 2022-12-05 23:06:50 +00:00
Anna Song
71eb865cea Localize configMapGenerator, secretGenerator fields (#4894)
* Localize configMapGenerator, secretGenerator fields

* Improve readability

* Expose kv parseFileSource

* Add localizeGenerator to Localizer

* Improve and test ParseFileSource error messages
2022-12-02 15:31:53 -08:00
Yannis Zarkadas
a502717460 Make ordering configurable (#4019)
* api: Add new types for customizeable resource ordering

Signed-off-by: Yannis Zarkadas <yanniszark@arrikto.com>

* plugins: Implement SortOrderTransformer plugin

Implement the SortOrderTransformer plugin. This plugin allows the user
to customize the order that kustomize will output resources in.

The API for the plugin is the following:

sortOptions:
  order: legacy | fifo
  legacySortOptions:
    orderFirst:
    - {GVK}
    orderLast:
    - {GVK}

Signed-off-by: Yannis Zarkadas <yanniszark@arrikto.com>

* plugins: Add boilerplate and generate code for new SortOrderTransformer

Signed-off-by: Yannis Zarkadas <yanniszark@arrikto.com>

* build: Add option to denote if the reorder flag was set by the user

We want to take different actions if the reorder flag was set by the
user or filled by the default value. Thus, we propagate this information
from build to the krusty options.

Signed-off-by: Yannis Zarkadas <yanniszark@gmail.com>

* api/krusty: Ensure sort ordering works with CLI flag and kustomization

Sort order can be defined in two places:
- (new) kustomization file
- (old) CLI flag
We want the kustomization file to take precedence over the CLI flag.

Eventually, we may want to move away from having a CLI flag altogether:
https://github.com/kubernetes-sigs/kustomize/issues/3947

Case 1: Sort order set in kustomization file AND in CLI flag.
Print a warning and let the kustomization file take precedence.

Case 2: Sort order set in CLI flag only or not at all.
Follow the CLI flag (defaults to legacy) and reorder at the end.

Case 3: Sort order set in kustomization file only.
Simply build the kustomization.

Signed-off-by: Yannis Zarkadas <yanniszark@gmail.com>

* krusty: Add e2e test for SortOrderTransformer

Signed-off-by: Yannis Zarkadas <yanniszark@arrikto.com>

* plugins: Purge LegacyOrderTransformer

Signed-off-by: Yannis Zarkadas <yanniszark@gmail.com>

* Update go.work.sum

Signed-off-by: Yannis Zarkadas <yanniszark@gmail.com>

* review: Make review changes

Signed-off-by: Yannis Zarkadas <yanniszark@gmail.com>

Signed-off-by: Yannis Zarkadas <yanniszark@arrikto.com>
Signed-off-by: Yannis Zarkadas <yanniszark@gmail.com>
2022-12-02 13:59:53 -08:00
Kishore Jagannath
1e2e7bbc0b Refactor 7 return values in parseGitUrl to RepoSpec(issue 4866, Task1) (#4900)
* initial commit to refactor 7 return values in parseGitUrl to RepoSpec

* fix review comments
2022-12-02 10:01:53 -08:00
Anna Song
e34d5b5608 Localize components (#4867) 2022-12-02 09:33:53 -08:00
Kubernetes Prow Robot
0f4f978956 Merge pull request #4895 from KnVerey/remove-local-last
Remove local-only resources at the last minute
2022-12-01 13:20:00 -08:00