Skip to content

Gjenkins/hip chart defined plugins#432

Draft
gjenkins8 wants to merge 7 commits intohelm:mainfrom
gjenkins8:gjenkins/hip-chart-defined-plugins
Draft

Gjenkins/hip chart defined plugins#432
gjenkins8 wants to merge 7 commits intohelm:mainfrom
gjenkins8:gjenkins/hip-chart-defined-plugins

Conversation

@gjenkins8
Copy link
Member

No description provided.

Co-authored-by: George Jenkins <gvjenkins@gmail.com>

Signed-off-by: Scott Rigby <scott@r6by.com>
- Resolve open issues from implementation experience
- Document content cache at $HELM_CACHE_HOME/content/
- Add archive-based plugin loading details
- Add airgap support considerations (Open Issue helm#5)
- Clean up rejected ideas section

Signed-off-by: Scott Rigby <scott@r6by.com>
scottrigby and others added 5 commits February 24, 2026 23:04
- Fix storage locations table (remove incorrect install cache row)
- Add SDK considerations section for controller/platform use cases
- Add note about gotemplate plugin handling Template built-in
- Clarify helm plugin list --status=all shows separate rows
- Note --from-download flag as future enhancement

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

- Remove "Chart-defined extracted" row from storage locations table
- Update explanation: plugins loaded directly from tarball into memory
- Update plugin loading precedence: content cache is primary path
- Update --from-download example to show extraction (not symlink)
- Update implementation checklist to reflect content-addressable cache

The Wasm runtime (extism/v1) supports loading plugin binaries directly
from bytes via CreatePluginFromData, eliminating the need for disk
extraction to a versioned directory.

Signed-off-by: Scott Rigby <scott@r6by.com>
- Update Plugin Storage section to clarify no fallback between
  installed plugins and chart-defined plugins
- Add Plugin identity section explaining content hash identification
- Add rejected idea helm#6: fallback to installed plugins

Chart-defined plugins are identified by their SHA256 digest from
Chart.lock, ensuring deterministic builds. An installed plugin with
matching name/version cannot substitute because there's no way to
verify the content matches the locked digest.

Signed-off-by: Scott Rigby <scott@r6by.com>
Update the SDK API Requirements section to reflect the reference
implementation PluginRenderer struct:
- ContentCachePath (string path) instead of ContentCache interface
- PreloadedPlugins as raw bytes, not pre-compiled modules
- Add explicit requirements for non-writable filesystems

Signed-off-by: Scott Rigby <scott@r6by.com>
Signed-off-by: George Jenkins <gvjenkins@gmail.com>
@gjenkins8 gjenkins8 force-pushed the gjenkins/hip-chart-defined-plugins branch from 7027371 to 5f3986e Compare February 25, 2026 18:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants