Fix default client env when var is set (#2128)
Signed-off-by: Helder Correia <174525+helderco@users.noreply.github.com>
This commit is contained in:
parent
80ae63928b
commit
defb4642cd
@ -62,7 +62,7 @@ func (t clientEnvTask) getEnv(envvar string, v *compiler.Value, pctx *plancontex
|
|||||||
return secret.MarshalCUE(), nil
|
return secret.MarshalCUE(), nil
|
||||||
}
|
}
|
||||||
|
|
||||||
if val.IsConcrete() {
|
if !hasDefault && val.IsConcrete() {
|
||||||
return nil, fmt.Errorf("%s: unexpected concrete value, please use a type or set a default", envvar)
|
return nil, fmt.Errorf("%s: unexpected concrete value, please use a type or set a default", envvar)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -183,6 +183,16 @@ setup() {
|
|||||||
export TEST_SECRET="bar"
|
export TEST_SECRET="bar"
|
||||||
|
|
||||||
"$DAGGER" "do" -p ./plan/client/env/usage.cue test
|
"$DAGGER" "do" -p ./plan/client/env/usage.cue test
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@test "plan/client/env default" {
|
||||||
|
cd "${TESTDIR}"
|
||||||
|
|
||||||
|
export TEST_DEFAULT="hello universe"
|
||||||
|
|
||||||
|
"$DAGGER" "do" -p ./plan/client/env/default.cue test
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@test "plan/client/env not exists" {
|
@test "plan/client/env not exists" {
|
||||||
|
19
tests/plan/client/env/default.cue
vendored
Normal file
19
tests/plan/client/env/default.cue
vendored
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
package main
|
||||||
|
|
||||||
|
import (
|
||||||
|
"dagger.io/dagger"
|
||||||
|
"dagger.io/dagger/core"
|
||||||
|
)
|
||||||
|
|
||||||
|
dagger.#Plan & {
|
||||||
|
client: env: TEST_DEFAULT: string | *"hello world"
|
||||||
|
actions: {
|
||||||
|
image: core.#Pull & {
|
||||||
|
source: "alpine:3.15.0@sha256:e7d88de73db3d3fd9b2d63aa7f447a10fd0220b7cbf39803c803f2af9ba256b3"
|
||||||
|
}
|
||||||
|
test: core.#Exec & {
|
||||||
|
input: image.output
|
||||||
|
args: ["test", client.env.TEST_DEFAULT, "=", "hello universe"]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
Reference in New Issue
Block a user