57 Commits
Author SHA1 Message Date
Terry Howe 429ce93848 Merge pull request #31613 from aslafy-z/feat/getter-env
fix(getter): pass settings environment variables
2026-01-07 07:41:31 -07:00
Gergely Brautigam 138f730aac fix: typo in the function names
Signed-off-by: Gergely Brautigam <182850+Skarlso@users.noreply.github.com>
2025-12-31 07:46:52 +01:00
Mads Jensen a490bb3c20 Use errors.Is to check for io.EOF and gzip.ErrHeader
In GoLang, using the == operator to check for a certain error will not
unwrap the error chain, and therefore may hide the problem.

Signed-off-by: Mads Jensen <atombrella@users.noreply.github.com>
2025-12-14 08:54:11 +01:00
Terry Howe b52b6615f0 Merge pull request #31207 from zyfy29/delete-unused-var
chore: delete unused var in installer.go
2025-12-13 08:27:37 -07:00
Terry Howe d28853e206 Merge pull request #31624 from atombrella/feature/sloglint
Enable the `sloglint` linter
2025-12-12 08:04:45 -07:00
Terry Howe 642462e9fe Merge pull request #11991 from twz123/no-bash-in-testscripts
Make test scripts run without /bin/bash
2025-12-12 07:57:37 -07:00
Mads Jensen a18e59e465 Enable the sloglint linter
Signed-off-by: Mads Jensen <atombrella@users.noreply.github.com>
2025-12-09 08:24:36 +01:00
Zadkiel AHARONIAN 119341dca7 fix(getter): pass settings environment variables
Signed-off-by: Zadkiel AHARONIAN <hello@zadkiel.fr>
2025-12-07 17:08:29 +01:00
Scott Rigby 4d54bea5ff Merge pull request #31491 from benoittgt/31490-plugin-name-helper
feat: improve plugin name validation error messages and field name detection (v1)
2025-11-25 11:49:58 -05:00
Benoit Tigeot 71591ee63e style: linting
Signed-off-by: Benoit Tigeot <benoit.tigeot@lifen.fr>
2025-11-16 12:21:45 +01:00
Benoit Tigeot b296cbef6c test: split tests between valid and invalid
Signed-off-by: Benoit Tigeot <benoit.tigeot@lifen.fr>
2025-11-16 11:49:08 +01:00
Benoit Tigeot 9b242dd9ed test: convert tests to table drive tests
Signed-off-by: Benoit Tigeot <benoit.tigeot@lifen.fr>
2025-11-16 11:44:49 +01:00
Benoit Tigeot c81a09b89a test: refactor TestMetadataLegacyValidate to be more generic
Signed-off-by: Benoit Tigeot <benoit.tigeot@lifen.fr>
2025-11-16 11:37:18 +01:00
yxxhero 8c87024860 update tests
Signed-off-by: yxxhero <aiopsclub@163.com>
2025-11-16 10:05:27 +08:00
yxxhero 2d49f0cb4a Refactor environment variable expansion in PrepareCommands and update tests
Signed-off-by: yxxhero <aiopsclub@163.com>
2025-11-15 11:16:08 +08:00
Benoit Tigeot acf331a005 fix: improve plugin name validation err messages early via unmarshalling
- Add strict YAML unmarshalling for v1 plugins (d.KnownFields)
- Add comprehensive test coverage for validPluginName regex
- Maintain backwards compatibility for legacy plugins

Signed-off-by: Benoit Tigeot <benoit.tigeot@lifen.fr>
2025-11-14 16:21:37 +01:00
Benoit Tigeot 9e1e3d21c5 fix: Make invalid name error message more similar and move tests
Follow Scott comment\
https://github.com/helm/helm/pull/31491/files#r2524933784

Signed-off-by: Benoit Tigeot <benoit.tigeot@lifen.fr>
2025-11-14 16:13:23 +01:00
Benoit Tigeot cf077ceb27 fix: focus only on plugin name but give more info about what we get
And improve test

Follow Scott comment:
> here I would have a list of valid and invalid names based on pattern, with a check and intended outcome for each one so that we comprehensively cover the rules.

https://github.com/helm/helm/pull/31491/files#r2524820312

Signed-off-by: Benoit Tigeot <benoit.tigeot@lifen.fr>
2025-11-14 16:13:23 +01:00
Benoit Tigeot f4b139a82c Make validation error similar and explicit for both metadatas
Signed-off-by: Benoit Tigeot <benoit.tigeot@lifen.fr>
2025-11-14 16:13:23 +01:00
Benoit Tigeot c04e18e452 fix: improve plugin name validation error messages
Signed-off-by: Benoit Tigeot <benoit.tigeot@lifen.fr>
2025-11-14 16:13:23 +01:00
Matt Farina a3db5f5667 Merge pull request #31408 from AndiDog/plugin-err-msg
Improve error message when plugin source cannot be determined or a non-directory is passed
2025-10-21 15:52:54 -04:00
Matt Farina 97ee09d935 Merge pull request #31365 from reddaisyy/main
refactor: use reflect.TypeFor
2025-10-21 15:43:07 -04:00
Andreas Sommer b05411506a Improve error message when plugin source cannot be determined or a non-directory is passed
Signed-off-by: Andreas Sommer <andreas.sommer87@googlemail.com>
2025-10-20 15:25:59 +02:00
wyrapeseed b9eadd3186 chore: fix some comment format
Signed-off-by: wyrapeseed <wyrapeseed@outlook.com>
2025-10-15 11:19:41 +08:00
reddaisyy e69a12dad3 refactor: use reflect.TypeFor
Signed-off-by: reddaisyy <reddaisy@outlook.jp>
2025-10-08 10:23:30 +08:00
George Jenkins a7a6a5e3b0 Merge pull request #31312 from gjenkins8/gjenkins/rm_plugin_schema_settings
Remove unused 'Settings' from plugin schema
2025-10-01 10:08:40 -07:00
George Jenkins 93c02523bb Merge pull request #31249 from banjoh/em/additional-logging
chore: add additional logging to plugin installer
2025-09-24 18:48:52 -07:00
George Jenkins 900cf2a93d Merge pull request #31320 from kosiew/sign-31181
provenance: allow RSA signing when ed25519 keys are present (switch to ProtonMail/go-crypto)
2025-09-24 18:31:08 -07:00
juejinyuxitu 69dbd6115e chore: fix some typos in comment
Signed-off-by: juejinyuxitu <juejinyuxitu@outlook.com>
2025-09-23 18:40:56 +08:00
Siew Kam Onn 7c9176ae35 Update dependencies and refactor crypto imports to use ProtonMail's go-crypto package
Signed-off-by: Siew Kam Onn <kosiew@gmail.com>
2025-09-23 16:00:45 +08:00
George Jenkins 6bc6231bcc Remove unused 'Settings' from plugin schema
Signed-off-by: George Jenkins <gvjenkins@gmail.com>
2025-09-21 07:53:41 -07:00
zyfy29 b24bfe4168 Merge branch 'main' into delete-unused-var
Signed-off-by: zyfy29 <wasuremono127@gmail.com>
2025-09-17 18:20:12 +09:00
Tom Wieczorek 6181e0a873 Make test scripts run without /bin/bash
The test scripts hardcoded #!/bin/bash while they are not really
requiring bash. Use the more portable #!/usr/bin/env sh instead, so that
they use the default shell.

Signed-off-by: Tom Wieczorek <twieczorek@mirantis.com>
2025-09-12 15:24:29 +02:00
yajianggroup cfaf30083a refactor: use strings.CutPrefix
Signed-off-by: yajianggroup <yajianggroup@outlook.com>
2025-09-12 19:03:54 +08:00
Evans Mungai 3d23230ef8 chore: add additional logging to plugin installer
Signed-off-by: Evans Mungai <mbuevans@gmail.com>
2025-09-05 10:00:35 +01:00
George Jenkins a8151ef4fe Cleanup plugin config
Signed-off-by: George Jenkins <gvjenkins@gmail.com>
2025-09-02 09:53:22 -07:00
George Jenkins 5926ec83dd Remove SetupPluginEnv
Signed-off-by: George Jenkins <gvjenkins@gmail.com>
2025-09-01 10:49:01 -07:00
George Jenkins 665c5a1fc9 Merge pull request #31224 from gjenkins8/gjenkins/postrenderer_plugin_message_value
fix: Adjust PostRenderer plugin output to value
2025-09-01 10:40:18 -07:00
George Jenkins d99d732542 fix: Adjust PostRenderer plugin output to value
Signed-off-by: George Jenkins <gvjenkins@gmail.com>
2025-09-01 09:39:38 -07:00
George Jenkins c35755a197 Remove legacy Command/Hooks from v1 Subprocess (#23)
Signed-off-by: George Jenkins <gvjenkins@gmail.com>
2025-08-31 22:24:31 -07:00
Scott Rigby 591d863df5 Move Postrenderer to a plugin type
Fix/add back postrenderer args unit tests

Signed-off-by: Scott Rigby <scott@r6by.com>
2025-08-31 19:03:34 -05:00
Scott Rigby e814ff3c38 Remove unnecessary file i/o operations from signing and verifying
Signed-off-by: Scott Rigby <scott@r6by.com>
2025-08-30 17:28:16 -05:00
9ea35da0d0 [HIP-0026] Plugin packaging, signing, and verification (#31176)
* Plugin packaging, signing and verification

Signed-off-by: Scott Rigby <scott@r6by.com>

* wrap keyring read error with more explicit message

Co-authored-by: Jesse Simpson <jesse.simpson36@gmail.com>
Signed-off-by: Scott Rigby <scott@r6by.com>

* skip unnecessary check

Co-authored-by: Evans Mungai <mbuevans@gmail.com>
Signed-off-by: Scott Rigby <scott@r6by.com>

* Change behavior for installing plugin with missing .prov file (now warns and continues instead of failing)

Signed-off-by: Scott Rigby <scott@r6by.com>

* Add comprehensive plugin verification tests

- Test missing .prov files (warns but continues)
- Test invalid .prov file formats (fails verification)
- Test hash mismatches in .prov files (fails verification)
- Test .prov file access errors (fails appropriately)
- Test directory plugins don't support verification
- Test installation without verification enabled (succeeds)
- Test with valid .prov files (fails on empty keyring as expected)

---------

Signed-off-by: Scott Rigby <scott@r6by.com>
Co-authored-by: Jesse Simpson <jesse.simpson36@gmail.com>
Co-authored-by: Evans Mungai <mbuevans@gmail.com>
2025-08-30 13:25:28 -04:00
zyfy29 8068578266 chore: delete unused var in installer.go
Signed-off-by: zyfy29 <wasuremono127@gmail.com>
2025-08-28 09:32:45 +09:00
George Jenkins 2658a00863 fix output message value
Signed-off-by: George Jenkins <gvjenkins@gmail.com>
2025-08-27 10:21:16 -07:00
George Jenkins e5b612626e fixup slog tmpDirInner
Signed-off-by: George Jenkins <gvjenkins@gmail.com>
2025-08-27 10:13:27 -07:00
George Jenkins b6545e903a code review + bug fixes
Signed-off-by: George Jenkins <gvjenkins@gmail.com>
2025-08-27 08:31:02 -07:00
George Jenkins c8e51b40c2 Plugin extism/v1 runtime
Signed-off-by: George Jenkins <gvjenkins@gmail.com>
2025-08-26 17:29:21 -07:00
Scott Rigby 3d30112468 Fix LocalInstaller Path() to strip version from tarball filenames
Override Path() method to use existing stripPluginName function for archives

Signed-off-by: Scott Rigby <scott@r6by.com>
2025-08-25 23:17:42 -04:00
Scott RigbyandJesse Simpson 16924a51db Fix: Removed unsafe umask manipulation in tests
Problem: Tests used syscall.Umask(0000) which could leave your shell creating
files with 777 permissions if interrupted.

Solution: Instead of changing umask, tests now detect the current umask and
calculate expected permissions after it's applied.

Result: Same test coverage, but safe from system-wide side effects.

Co-authored-by: Jesse Simpson <jesse.simpson36@gmail.com>
Signed-off-by: Scott Rigby <scott@r6by.com>
2025-08-25 23:17:42 -04:00