cli icon indicating copy to clipboard operation
cli copied to clipboard

FilePath does not take precedence over EnvVar

Open zc-devs opened this issue 1 year ago • 0 comments

My urfave/cli version is v2.27.1

Dependency Management

  • I am unsure of what my dependency management setup is.

Describe the bug

FilePath does not take precedence over EnvVar as described in documentation.

To reproduce

  1. Set some flag
&cli.StringFlag{
	EnvVars:  []string{"WOODPECKER_DATABASE_DATASOURCE"},
	Name:     "datasource",
	Usage:    "database driver configuration string",
	Value:    "woodpecker.sqlite",
	FilePath: os.Getenv("WOODPECKER_DATABASE_DATASOURCE_FILE"),
},
  1. Set EnvVar:
export WOODPECKER_DATABASE_DATASOURCE=/var/lib/woodpecker/woodpecker.sqlite
  1. Set FilePath variable:
export WOODPECKER_DATABASE_DATASOURCE_FILE=/run/secrets/woodpecker-datasource.conf
  1. Get /var/lib/woodpecker/woodpecker.sqlite instead /run/secrets/woodpecker-datasource.conf in datasource flag.

Observed behavior

Step 4.

Expected behavior

FilePath should take precedence over EnvVar. So, I should get /run/secrets/woodpecker-datasource.conf in datasource flag.

Additional context

https://github.com/woodpecker-ci/woodpecker/issues/3389

zc-devs avatar Feb 17 '24 10:02 zc-devs