mirror of
https://github.com/helm/helm.git
synced 2026-05-28 04:35:48 -04:00
Merge branch 'helm:main' into main
This commit is contained in:
commit
4ede1c9c37
6 changed files with 22 additions and 3 deletions
6
.github/workflows/codeql-analysis.yml
vendored
6
.github/workflows/codeql-analysis.yml
vendored
|
|
@ -39,7 +39,7 @@ jobs:
|
|||
|
||||
# Initializes the CodeQL tools for scanning.
|
||||
- name: Initialize CodeQL
|
||||
uses: github/codeql-action/init@0b21cf2492b6b02c465a3e5d7c473717ad7721ba # pinv3.23.1
|
||||
uses: github/codeql-action/init@47b3d888fe66b639e431abf22ebca059152f1eea # pinv3.24.5
|
||||
with:
|
||||
languages: ${{ matrix.language }}
|
||||
# If you wish to specify custom queries, you can do so here or in a config file.
|
||||
|
|
@ -50,7 +50,7 @@ jobs:
|
|||
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
|
||||
# If this step fails, then you should remove it and run the build manually (see below)
|
||||
- name: Autobuild
|
||||
uses: github/codeql-action/autobuild@0b21cf2492b6b02c465a3e5d7c473717ad7721ba # pinv3.23.1
|
||||
uses: github/codeql-action/autobuild@47b3d888fe66b639e431abf22ebca059152f1eea # pinv3.24.5
|
||||
|
||||
# ℹ️ Command-line programs to run using the OS shell.
|
||||
# 📚 https://git.io/JvXDl
|
||||
|
|
@ -64,4 +64,4 @@ jobs:
|
|||
# make release
|
||||
|
||||
- name: Perform CodeQL Analysis
|
||||
uses: github/codeql-action/analyze@0b21cf2492b6b02c465a3e5d7c473717ad7721ba # pinv3.23.1
|
||||
uses: github/codeql-action/analyze@47b3d888fe66b639e431abf22ebca059152f1eea # pinv3.24.5
|
||||
|
|
|
|||
1
.gitignore
vendored
1
.gitignore
vendored
|
|
@ -5,6 +5,7 @@
|
|||
.idea/
|
||||
.vimrc
|
||||
.vscode/
|
||||
.devcontainer/
|
||||
_dist/
|
||||
_dist_versions/
|
||||
bin/
|
||||
|
|
|
|||
|
|
@ -175,6 +175,10 @@ var validPluginName = regexp.MustCompile("^[A-Za-z0-9_-]+$")
|
|||
|
||||
// validatePluginData validates a plugin's YAML data.
|
||||
func validatePluginData(plug *Plugin, filepath string) error {
|
||||
// When metadata section missing, initialize with no data
|
||||
if plug.Metadata == nil {
|
||||
plug.Metadata = &Metadata{}
|
||||
}
|
||||
if !validPluginName.MatchString(plug.Metadata.Name) {
|
||||
return fmt.Errorf("invalid plugin name at %q", filepath)
|
||||
}
|
||||
|
|
|
|||
|
|
@ -353,6 +353,11 @@ func TestSetupEnvWithSpace(t *testing.T) {
|
|||
}
|
||||
|
||||
func TestValidatePluginData(t *testing.T) {
|
||||
// A mock plugin missing any metadata.
|
||||
mockMissingMeta := &Plugin{
|
||||
Dir: "no-such-dir",
|
||||
}
|
||||
|
||||
for i, item := range []struct {
|
||||
pass bool
|
||||
plug *Plugin
|
||||
|
|
@ -363,6 +368,7 @@ func TestValidatePluginData(t *testing.T) {
|
|||
{false, mockPlugin("$foo -bar")}, // Test leading chars
|
||||
{false, mockPlugin("foo -bar ")}, // Test trailing chars
|
||||
{false, mockPlugin("foo\nbar")}, // Test newline
|
||||
{false, mockMissingMeta}, // Test if the metadata section missing
|
||||
} {
|
||||
err := validatePluginData(item.plug, fmt.Sprintf("test-%d", i))
|
||||
if item.pass && err != nil {
|
||||
|
|
|
|||
|
|
@ -359,6 +359,10 @@ func loadIndex(data []byte, source string) (*IndexFile, error) {
|
|||
log.Printf("skipping loading invalid entry for chart %q from %s: empty entry", name, source)
|
||||
continue
|
||||
}
|
||||
// When metadata section missing, initialize with no data
|
||||
if cvs[idx].Metadata == nil {
|
||||
cvs[idx].Metadata = &chart.Metadata{}
|
||||
}
|
||||
if cvs[idx].APIVersion == "" {
|
||||
cvs[idx].APIVersion = chart.APIVersionV1
|
||||
}
|
||||
|
|
|
|||
|
|
@ -70,6 +70,10 @@ entries:
|
|||
name: grafana
|
||||
foo:
|
||||
-
|
||||
bar:
|
||||
- digest: "sha256:1234567890abcdef"
|
||||
urls:
|
||||
- https://charts.helm.sh/stable/alpine-1.0.0.tgz
|
||||
`
|
||||
)
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue