helm/internal/plugin
Scott Rigby 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
..
cache Move pkg/plugin -> internal/plugin 2025-08-16 22:58:54 -07:00
installer [HIP-0026] Plugin packaging, signing, and verification (#31176) 2025-08-30 13:25:28 -04:00
schema Plugin extism/v1 runtime 2025-08-26 17:29:21 -07:00
testdata code review + bug fixes 2025-08-27 08:31:02 -07:00
config.go Plugin extism/v1 runtime 2025-08-26 17:29:21 -07:00
descriptor.go [HIP-0026] Plugin runtime interface (#31145) 2025-08-22 16:12:49 -04:00
doc.go Plugin types and plugin apiVersion v1 2025-08-22 17:17:36 -04:00
error.go [HIP-0026] Plugin runtime interface (#31145) 2025-08-22 16:12:49 -04:00
loader.go Plugin extism/v1 runtime 2025-08-26 17:29:21 -07:00
loader_test.go Plugin types and plugin apiVersion v1 2025-08-22 17:17:36 -04:00
metadata.go Plugin extism/v1 runtime 2025-08-26 17:29:21 -07:00
metadata_legacy.go [HIP-0026] Plugin runtime interface (#31145) 2025-08-22 16:12:49 -04:00
metadata_test.go [HIP-0026] Plugin runtime interface (#31145) 2025-08-22 16:12:49 -04:00
metadata_v1.go Plugin types and plugin apiVersion v1 2025-08-22 17:17:36 -04:00
plugin.go [HIP-0026] Plugin runtime interface (#31145) 2025-08-22 16:12:49 -04:00
plugin_test.go Plugin types and plugin apiVersion v1 2025-08-22 17:17:36 -04:00
plugin_type_registry.go Plugin extism/v1 runtime 2025-08-26 17:29:21 -07:00
plugin_type_registry_test.go Plugin extism/v1 runtime 2025-08-26 17:29:21 -07:00
runtime.go Plugin extism/v1 runtime 2025-08-26 17:29:21 -07:00
runtime_extismv1.go fixup slog tmpDirInner 2025-08-27 10:13:27 -07:00
runtime_extismv1_test.go Plugin extism/v1 runtime 2025-08-26 17:29:21 -07:00
runtime_subprocess.go fix output message value 2025-08-27 10:21:16 -07:00
runtime_subprocess_getter.go fix output message value 2025-08-27 10:21:16 -07:00
runtime_subprocess_hooks.go [HIP-0026] Plugin runtime interface (#31145) 2025-08-22 16:12:49 -04:00
runtime_subprocess_test.go [HIP-0026] Plugin runtime interface (#31145) 2025-08-22 16:12:49 -04:00
runtime_test.go Plugin extism/v1 runtime 2025-08-26 17:29:21 -07:00
sign.go [HIP-0026] Plugin packaging, signing, and verification (#31176) 2025-08-30 13:25:28 -04:00
sign_test.go [HIP-0026] Plugin packaging, signing, and verification (#31176) 2025-08-30 13:25:28 -04:00
signing_info.go [HIP-0026] Plugin packaging, signing, and verification (#31176) 2025-08-30 13:25:28 -04:00
subprocess_commands.go [HIP-0026] Plugin runtime interface (#31145) 2025-08-22 16:12:49 -04:00
subprocess_commands_test.go Plugin types and plugin apiVersion v1 2025-08-22 17:17:36 -04:00
verify.go [HIP-0026] Plugin packaging, signing, and verification (#31176) 2025-08-30 13:25:28 -04:00
verify_test.go [HIP-0026] Plugin packaging, signing, and verification (#31176) 2025-08-30 13:25:28 -04:00