We recently upgraded our docker-runners and noticed behavior we’d like some clarification on.
Previously we were able to restart a build and pass a specific parameter/env var but now it seems to keep the one in .drone.yml if it is in the pipeline.
So if we have:
kind: pipeline
type: docker
name: Test a Thing
platform:
os: linux
arch: amd64
trigger:
branch:
exclude:
- master
event:
- push
steps:
- name: test-env
image: alpine:latest
commands:- env | grep TEST
- echo $TEST
Now we run a build, TEST is blank, like we expect. If we then restart it with this command:
drone build restart githubrepo/test 02 --param=TEST=“parameter env passed by drone build restart”
Then our output is “parameter env passed by drone build restart” which we expect. So far so good.
But if in our pipeline we add to the test-env step something like:
environment:
TEST: “pipeline step env”
then the output will ALWAYS be “pipeline step env” - even when we run the same build command (such as drone build restart githubrepo/test 04 --param=TEST=“parameter env passed by drone build restart”) – this wasn’t the case before. What could be the cause of this?