From 4880b091a2dbf0cffaf2064227094eea11e0619b Mon Sep 17 00:00:00 2001 From: achyrva Date: Mon, 9 Jun 2025 10:25:43 +0000 Subject: [PATCH] [RDNF #11] fix: skipped jobs have no result & fix: favor command-line over files & chore: fix some comments (#143) https://github.com/nektos/act/pull/2274 https://github.com/nektos/act/pull/2276 https://github.com/nektos/act/pull/2279 Co-authored-by: lvyaoting <166296299+lvyaoting@users.noreply.github.com> Co-authored-by: Josh Soref <2119212+jsoref@users.noreply.github.com> Co-authored-by: ChristopherHX Reviewed-on: https://code.forgejo.org/forgejo/act/pulls/143 Reviewed-by: earl-warren Co-authored-by: achyrva Co-committed-by: achyrva --- act/runner/hashfiles/index.js | 4 ++-- act/runner/run_context.go | 3 ++- act/runner/step_test.go | 2 +- cmd/root.go | 4 +++- 4 files changed, 8 insertions(+), 5 deletions(-) diff --git a/act/runner/hashfiles/index.js b/act/runner/hashfiles/index.js index c26f783f..f2bed371 100644 --- a/act/runner/hashfiles/index.js +++ b/act/runner/hashfiles/index.js @@ -853,7 +853,7 @@ class Summary { /** * If the summary buffer is empty * - * @returns {boolen} true if the buffer is empty + * @returns {boolean} true if the buffer is empty */ isEmptyBuffer() { return this._buffer.length === 0; @@ -1840,7 +1840,7 @@ class Pattern { // Normalize slashes itemPath = pathHelper.normalizeSeparators(itemPath); // Append a trailing slash. Otherwise Minimatch will not match the directory immediately - // preceeding the globstar. For example, given the pattern `/foo/**`, Minimatch returns + // preceding the globstar. For example, given the pattern `/foo/**`, Minimatch returns // false for `/foo` but returns true for `/foo/`. Append a trailing slash to handle that quirk. if (!itemPath.endsWith(path.sep)) { // Note, this is safe because the constructor ensures the pattern has an absolute root. diff --git a/act/runner/run_context.go b/act/runner/run_context.go index a70c3bf6..d726aa41 100644 --- a/act/runner/run_context.go +++ b/act/runner/run_context.go @@ -914,7 +914,8 @@ func (rc *RunContext) isEnabled(ctx context.Context) (bool, error) { } if !runJob { - l.WithField("jobResult", "skipped").Infof("Skipping job '%s' due to '%s'", job.Name, job.If.Value) + rc.result("skipped") + l.WithField("jobResult", "skipped").Debugf("Skipping job '%s' due to '%s'", job.Name, job.If.Value) return false, nil } diff --git a/act/runner/step_test.go b/act/runner/step_test.go index d08a1297..6fdbe716 100644 --- a/act/runner/step_test.go +++ b/act/runner/step_test.go @@ -314,7 +314,7 @@ func TestIsContinueOnError(t *testing.T) { assertObject.False(continueOnError) assertObject.Nil(err) - // explcit true + // explicit true step = createTestStep(t, "continue-on-error: true") continueOnError, err = isContinueOnError(context.Background(), step.getStepModel().RawContinueOnError, step, stepStageMain) assertObject.True(continueOnError) diff --git a/cmd/root.go b/cmd/root.go index 3c342cc7..ac370f0a 100644 --- a/cmd/root.go +++ b/cmd/root.go @@ -333,7 +333,9 @@ func readEnvs(path string, envs map[string]string) bool { log.Fatalf("Error loading from %s: %v", path, err) } for k, v := range env { - envs[k] = v + if _, ok := envs[k]; !ok { + envs[k] = v + } } return true }