fix: don't overwrite with empty cmd/entrypoint (#1076)
Co-authored-by: ChristopherHX <christopher.homberger@web.de> Signed-off-by: Ryan <me@hackerc.at> Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
This commit is contained in:
parent
5f673cbb6d
commit
24422bf4e4
|
@ -327,14 +327,20 @@ func (cr *containerReference) create(capAdd []string, capDrop []string) common.E
|
|||
|
||||
config := &container.Config{
|
||||
Image: input.Image,
|
||||
Cmd: input.Cmd,
|
||||
Entrypoint: input.Entrypoint,
|
||||
WorkingDir: input.WorkingDir,
|
||||
Env: input.Env,
|
||||
Tty: isTerminal,
|
||||
Hostname: input.Hostname,
|
||||
}
|
||||
|
||||
if len(input.Cmd) != 0 {
|
||||
config.Cmd = input.Cmd
|
||||
}
|
||||
|
||||
if len(input.Entrypoint) != 0 {
|
||||
config.Entrypoint = input.Entrypoint
|
||||
}
|
||||
|
||||
mounts := make([]mount.Mount, 0)
|
||||
for mountSource, mountTarget := range input.Mounts {
|
||||
mounts = append(mounts, mount.Mount{
|
||||
|
|
|
@ -58,7 +58,12 @@ func (sd *stepDocker) runUsesContainer() common.Executor {
|
|||
if err != nil {
|
||||
return err
|
||||
}
|
||||
entrypoint := strings.Fields(eval.Interpolate(step.With["entrypoint"]))
|
||||
|
||||
var entrypoint []string
|
||||
if entry := eval.Interpolate(step.With["entrypoint"]); entry != "" {
|
||||
entrypoint = []string{entry}
|
||||
}
|
||||
|
||||
stepContainer := sd.newStepContainer(ctx, image, cmd, entrypoint)
|
||||
|
||||
return common.NewPipelineExecutor(
|
||||
|
|
|
@ -9,3 +9,15 @@ jobs:
|
|||
with:
|
||||
somekey: somevalue
|
||||
args: echo ${INPUT_SOMEKEY} | grep somevalue
|
||||
- uses: docker://node:16-buster-slim
|
||||
with:
|
||||
args: -v
|
||||
- uses: docker://node:16-buster-slim
|
||||
with:
|
||||
entrypoint: /bin/sh
|
||||
args: -c -- uname -a
|
||||
- uses: docker://node:16-buster-slim
|
||||
with:
|
||||
entrypoint: /bin/sh
|
||||
args: -c 'uname -a'
|
||||
|
||||
|
|
Loading…
Reference in New Issue