mirror of
https://code.forgejo.org/forgejo/runner.git
synced 2025-08-31 18:30:58 +00:00
fix: rewrite StepContext env (#832)
* fix: rewrite StepContext env step env from workflow should be last one to be written fixes https://github.com/nektos/act/issues/777 * test: verify env correctness * fix: move test into existing workflow
This commit is contained in:
parent
bd8f62b024
commit
c4a90aeef8
2 changed files with 6 additions and 3 deletions
|
@ -130,14 +130,13 @@ func (sc *StepContext) Executor() common.Executor {
|
|||
func (sc *StepContext) mergeEnv() map[string]string {
|
||||
rc := sc.RunContext
|
||||
job := rc.Run.Job()
|
||||
step := sc.Step
|
||||
|
||||
var env map[string]string
|
||||
c := job.Container()
|
||||
if c != nil {
|
||||
env = mergeMaps(rc.GetEnv(), c.Env, step.GetEnv())
|
||||
env = mergeMaps(rc.GetEnv(), c.Env)
|
||||
} else {
|
||||
env = mergeMaps(rc.GetEnv(), step.GetEnv())
|
||||
env = rc.GetEnv()
|
||||
}
|
||||
|
||||
if env["PATH"] == "" {
|
||||
|
@ -176,6 +175,7 @@ func (sc *StepContext) setupEnv(ctx context.Context) (ExpressionEvaluator, error
|
|||
return nil, err
|
||||
}
|
||||
}
|
||||
sc.Env = mergeMaps(sc.Env, sc.Step.GetEnv()) // step env should not be overwritten
|
||||
evaluator := sc.NewExpressionEvaluator()
|
||||
sc.interpolateEnv(evaluator)
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue