Skip to content

Commit 4879152

Browse files
committed
feat: update helm docs disable flag to cover enforcing doc generation
Just removing helm docs step is not enough to stop enforcement of helm doc generation. Add schema generation and check dirty steps as well for full coverage. Signed-off-by: Oguz Kilcan <oguz.kilcan@siderolabs.com>
1 parent b12955e commit 4879152

3 files changed

Lines changed: 12 additions & 18 deletions

File tree

internal/project/auto/helm.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ func (builder *builder) DetectHelm() (bool, error) {
6464
}
6565

6666
builder.meta.HelmTemplateFlags = flags
67-
builder.meta.HelmDocsDisabled = helm.DocsDisabled
67+
builder.meta.EnforceHelmDocs = !helm.DocsDisabled
6868

6969
return true, nil
7070
}

internal/project/helm/build.go

Lines changed: 9 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,6 @@ import (
1111
"slices"
1212
"strings"
1313

14-
"github.com/siderolabs/gen/xslices"
15-
1614
"github.com/siderolabs/kres/internal/config"
1715
"github.com/siderolabs/kres/internal/dag"
1816
"github.com/siderolabs/kres/internal/output/dockerfile"
@@ -259,22 +257,18 @@ func (helm *Build) CompileGitHubWorkflow(output *ghworkflow.Output) error {
259257
loginStep,
260258
lintStep,
261259
templateStep,
262-
unittestPluginInstallStep,
263-
unittestStep,
264-
schemaStep,
265-
docsStep,
266-
checkDirtyStep,
267-
helmLoginStep,
268-
helmReleaseStep,
269260
}
270261

271-
jobSteps = xslices.Filter(jobSteps, func(step *ghworkflow.JobStep) bool {
272-
if helm.meta.HelmDocsDisabled && step.Name == "Generate docs" {
273-
return false
274-
}
262+
// Add steps for unit tests
263+
jobSteps = append(jobSteps, []*ghworkflow.JobStep{unittestPluginInstallStep, unittestStep}...)
275264

276-
return true
277-
})
265+
// Add steps for schema generation and docs generation if enforced
266+
if helm.meta.EnforceHelmDocs {
267+
jobSteps = append(jobSteps, []*ghworkflow.JobStep{schemaStep, docsStep, checkDirtyStep}...)
268+
}
269+
270+
// Add final steps
271+
jobSteps = append(jobSteps, []*ghworkflow.JobStep{helmLoginStep, helmReleaseStep}...)
278272

279273
output.AddWorkflow("helm", &ghworkflow.Workflow{
280274
Name: "helm",

internal/project/meta/meta.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -110,8 +110,8 @@ type Options struct { //nolint:govet
110110
// SOPSEnabled indicates whether SOPS is enabled for the project.
111111
SOPSEnabled bool
112112

113-
// HelmDocsDisabled indicates whether Helm docs should be disabled.
114-
HelmDocsDisabled bool
113+
// EnforceHelmDocs indicates whether usage of helm docs should be enforced.
114+
EnforceHelmDocs bool
115115
}
116116

117117
// Command defines Golang executable build configuration.

0 commit comments

Comments
 (0)