Commit Graph
230 Commits
Author SHA1 Message Date
Matt Farina ca8eae9361 Reproducible chart archive builds
Building the same chart into an archive multiple times will have
the same sha256 hash.

Perviously, the time in the headers for a file was time.Now() which
changed each time. The time is now collected from the operating
system when the file is loaded and this time is used.

Fixes: #3612

Signed-off-by: Matt Farina <matt.farina@suse.com>
2025-10-29 11:49:22 -04:00
wyrapeseed b9eadd3186 chore: fix some comment format
Signed-off-by: wyrapeseed <wyrapeseed@outlook.com>
2025-10-15 11:19:41 +08:00
Matt Farina 90a91e097f Merge pull request #31198 from TerryHowe/fix-pkg-engine-error-parsing
fix: replace pkg/engine regular expressions with parser
2025-09-16 13:57:40 -06:00
reddaisyy 1c67fbf108 refactor: use strings.builder
Signed-off-by: reddaisyy <reddaisy@outlook.jp>
2025-09-15 17:13:58 +08:00
Terry HoweandGeorge Jenkins b2870379c8 Update pkg/engine/engine.go
Co-authored-by: George Jenkins <gvjenkins@gmail.com>
Signed-off-by: Terry Howe <terrylhowe@gmail.com>
2025-09-12 14:27:00 -06:00
Terry HoweandGeorge Jenkins 91a65234ac Update pkg/engine/engine.go
Co-authored-by: George Jenkins <gvjenkins@gmail.com>
Signed-off-by: Terry Howe <terrylhowe@gmail.com>
2025-09-12 14:26:53 -06:00
Terry HoweandGeorge Jenkins 9112687a7e Update pkg/engine/engine.go
Co-authored-by: George Jenkins <gvjenkins@gmail.com>
Signed-off-by: Terry Howe <terrylhowe@gmail.com>
2025-09-12 14:12:23 -06:00
bennsimon db50c37eda remove metadata output on helm template
Signed-off-by: bennsimon <bennsimonotieno@gmail.com>
2025-09-12 13:21:07 +03:00
Jesse Simpson 712cde4624 test: passes now
Signed-off-by: Jesse Simpson <jesse.simpson36@gmail.com>
2025-09-07 10:42:24 -04:00
Jesse Simpson b060911075 refactor: break out into functions and draft tests
Signed-off-by: Jesse Simpson <jesse.simpson36@gmail.com>
2025-09-06 11:36:39 -04:00
Matt Farina 9dcc49cbd5 Move lint pkg to be part of each chart version
Linting is specific to the chart versions. A v2 and v3 chart will
lint differently.

To accomplish this, packages like engine need to be able to handle
different chart versions. This was accomplished by some changes:

1. The introduction of a Charter interface for charts
2. The ChartAccessor which is able to accept a chart and then
   provide access to its data via an interface. There is an
   interface, factory, and implementation for each version of
   chart.
3. Common packages were moved to a common and util packages.
   Due to some package loops, there are 2 packages which may
   get some consolidation in the future.

The new interfaces provide the foundation to move the actions
and cmd packages to be able to handle multiple apiVersions of
charts.

Signed-off-by: Matt Farina <matt.farina@suse.com>
2025-09-02 12:14:37 -04:00
Terry Howe 284bd980b6 fix: replace pkg/engine regular expressions with parser
Signed-off-by: Terry Howe <terrylhowe@gmail.com>
2025-08-27 10:44:56 -06:00
Scott Rigby 069b525332 Merge pull request #13586 from jessesimpson36/cleaner-stacktraces
fix: add formatting for errors to make multiline stacktraces in helm templates
2025-06-03 21:37:54 -04:00
yetyear 03448d1d79 refactor: use maps.Copy for cleaner map handling
Signed-off-by: yetyear <flite@outlook.com>
2025-05-09 14:33:25 +08:00
George Jenkins a1f8802de9 Merge pull request #30553 from Zhanweelee/add_mustToYaml_support
feat: Add mustToYaml and mustToJson template functions
2025-05-06 20:56:40 -07:00
Jesse Simpson e0a67b1028 test: use more realistic unit-test scenario by not relying on Release.Name
Signed-off-by: Jesse Simpson <jesse.simpson36@gmail.com>
2025-04-24 19:20:27 -04:00
Jesse Simpson d10c5f6429 style: trim space from formatted error messages
Signed-off-by: Jesse Simpson <jesse.simpson36@gmail.com>
2025-04-24 19:20:27 -04:00
Jesse Simpson 0e0a8cc765 fix: address no-template-associated type of error
Signed-off-by: Jesse Simpson <jesse.simpson36@gmail.com>
2025-04-24 19:20:26 -04:00
Jesse Simpson 013f27c294 fix: use errors.New instead of fmt.Errorf
Signed-off-by: Jesse Simpson <jesse.simpson36@gmail.com>
2025-04-24 19:17:28 -04:00
Jesse Simpson 868cdc261f refactor: reduce flow-control operations
Signed-off-by: Jesse Simpson <jesse.simpson36@gmail.com>
2025-04-24 19:17:28 -04:00
Jesse Simpson 48922e21d1 refactor: use struct equality instead of comparing each composition
Signed-off-by: Jesse Simpson <jesse.simpson36@gmail.com>
2025-04-24 19:17:28 -04:00
Jesse Simpson ac98e977c3 refactor: switch to while loop instead of for to reduce unnecessary variables
Signed-off-by: Jesse Simpson <jesse.simpson36@gmail.com>
2025-04-24 19:17:28 -04:00
Jesse Simpson 65084371c9 refactor: replace if MatchString with FindStringSubMatch
Signed-off-by: Jesse Simpson <jesse.simpson36@gmail.com>
2025-04-24 19:17:28 -04:00
Jesse Simpson 782f6c6409 refactor: shorten regex subexp syntax
Signed-off-by: Jesse Simpson <jesse.simpson36@gmail.com>
2025-04-24 19:17:28 -04:00
Jesse Simpson 4b9a9ecaf6 refactor: rename function and add doc-string
Signed-off-by: Jesse Simpson <jesse.simpson36@gmail.com>
2025-04-24 19:17:28 -04:00
Jesse Simpson 4f63c73353 refactor: remove impractical safety check
Signed-off-by: Jesse Simpson <jesse.simpson36@gmail.com>
2025-04-24 19:17:28 -04:00
Jesse Simpson 5202820f2f refactor: define regexs at package scope
Signed-off-by: Jesse Simpson <jesse.simpson36@gmail.com>
2025-04-24 19:17:28 -04:00
Jesse Simpson cbdc22128e refactor: use strings.Builder instead of string concatenation
Signed-off-by: Jesse Simpson <jesse.simpson36@gmail.com>
2025-04-24 19:17:28 -04:00
Jesse Simpson cdcf1bc601 style: remove unnecessary break
Signed-off-by: Jesse Simpson <jesse.simpson36@gmail.com>
2025-04-24 19:17:28 -04:00
Jesse Simpson 3cc4cb60ba refactor: prevent duplicates being inserted rather than post-filtering
Signed-off-by: Jesse Simpson <jesse.simpson36@gmail.com>
2025-04-24 19:17:28 -04:00
Jesse Simpson deea4a0d0e refactor: remove more unnecessary format calls
Signed-off-by: Jesse Simpson <jesse.simpson36@gmail.com>
2025-04-24 19:17:28 -04:00
Jesse Simpson 13b232e061 refactor: make use of regexs for err parsing
Signed-off-by: Jesse Simpson <jesse.simpson36@gmail.com>
2025-04-24 19:17:28 -04:00
Jesse Simpson daf4c34879 fix: use originalErr instead of formatting original error
Signed-off-by: Jesse Simpson <jesse.simpson36@gmail.com>
2025-04-24 19:17:28 -04:00
Jesse Simpson 98da3e28b6 fix: add some index checking and fixed a test that relied on type-checking
Signed-off-by: Jesse Simpson <jesse.simpson36@gmail.com>
2025-04-24 19:17:28 -04:00
Jesse Simpson 80d7a1b33f style: make format
Signed-off-by: Jesse Simpson <jesse.simpson36@gmail.com>
2025-04-24 19:17:28 -04:00
Jesse Simpson 487f72b822 fix: added protection against while-true condition in unbounded for loop
Signed-off-by: Jesse Simpson <jesse.simpson36@gmail.com>
2025-04-24 19:17:28 -04:00
Jesse Simpson 6bb836374b test: adjusted to make it more meaningful and to pass
Signed-off-by: Jesse Simpson <jesse.simpson36@gmail.com>
2025-04-24 19:17:28 -04:00
Jesse Simpson 383a758aec fix: add quality checks to ensure formatted error doesnt remove important info
Signed-off-by: Jesse Simpson <jesse.simpson36@gmail.com>
2025-04-24 19:17:28 -04:00
Jesse Simpson d8bec4e30f fix: remove comparison from old error message to new
Signed-off-by: Jesse Simpson <jesse.simpson36@gmail.com>
2025-04-24 19:17:28 -04:00
Jesse Simpson c481470985 style: renamed i variable for consistency
Signed-off-by: Jesse Simpson <jesse.simpson36@gmail.com>
2025-04-24 19:17:28 -04:00
Jesse Simpson 2e3f6dce28 fix: save to fileLocation rather than fileLocations[i] which gets overwritten
Signed-off-by: Jesse Simpson <jesse.simpson36@gmail.com>
2025-04-24 19:17:28 -04:00
Jesse Simpson f09bbb8ab8 style: consolidate for loops
Signed-off-by: Jesse Simpson <jesse.simpson36@gmail.com>
2025-04-24 19:17:28 -04:00
Jesse Simpson 1357db4db1 style: removed variable only used once
Signed-off-by: Jesse Simpson <jesse.simpson36@gmail.com>
2025-04-24 19:17:28 -04:00
Jesse Simpson a56daca82b style: use interface functions instead of inline logic
Signed-off-by: Jesse Simpson <jesse.simpson36@gmail.com>
2025-04-24 19:17:28 -04:00
Jesse Simpson 87f9e2dc45 style: create String function for TraceableError representing one chunk of a stacktrace
Signed-off-by: Jesse Simpson <jesse.simpson36@gmail.com>
2025-04-24 19:17:28 -04:00
Jesse Simpson 6cd0c0082a fix: split up the multiline errors to be more vertical
Signed-off-by: Jesse Simpson <jesse.simpson36@gmail.com>
2025-04-24 19:17:28 -04:00
Jesse Simpson cc477e9f79 fix: adjust test to not require external chart
Signed-off-by: Jesse Simpson <jesse.simpson36@gmail.com>
2025-04-24 19:17:26 -04:00
Jesse Simpson 14f902c245 wip: draft at making cleaner stacktraces
Signed-off-by: Jesse Simpson <jesse.simpson36@gmail.com>
2025-04-24 19:16:09 -04:00
Justen Stall 280a9ddbdb Merge branch 'main' into stdlib-errors-2
Signed-off-by: Justen Stall <39888103+justenstall@users.noreply.github.com>
2025-04-21 12:13:10 -04:00
Scott Rigby eb6e240cfe Merge pull request #30734 from ipaqsa/feature/add-custom-template-funcs
feat(pkg/engine): add support for custom template funcs
2025-04-21 11:13:12 -04:00