Can someone explain this behaviour to me as I don't understand how this works under the hood:
WithSecretVariable("GITHUB_TOKEN", client.Host().EnvVariable("GITHUB_TOKEN").Secret()).
WithExec([]string{"printenv"}). // will display the token and its value
WithExec([]string{"echo", "$GITHUB_TOKEN"}). // won't echo the token
WithExec([]string{"sh", "-c", "echo $GITHUB_TOKEN"}). // will echo the token
Stdout(ctx)
Why do I need to run the shell command myself to get a secret to be displayed in the terminal?