pants: List typed config values can not be merged between multiple config files (PANTS_CONFIG_FILES)

Describe the bug Originally asked in https://pantsbuild.slack.com/archives/C046T6T9U/p1646199988870439

No matter the syntax I am unable to get docker build args list merging to work.

Pants version 2.9.0

OS Linux

Additional info

pants.toml:

...
[docker]
build_args.add = [
    "BASE_PYTHON_IMAGE=foo",
]

pants.ci.toml:

...
[docker]
# Expose aws auth to docker.
build_args.add = [
    "AWS_DEFAULT_REGION",
    "AWS_ACCESS_KEY_ID",
    "AWS_SECRET_ACCESS_KEY",
    "AWS_SESSION_TOKEN",
]

Dockerfile:

ARG BASE_PYTHON_IMAGE
FROM ${BASE_PYTHON_IMAGE}
...

Running in CI:

$ export PANTS_CONFIG_FILES=pants.ci.toml
$ ./pants package docker/image:target
...
  failed to solve with frontend dockerfile.v0: failed to create LLB definition: base name (${BASE_PYTHON_IMAGE}) should not be blank
...

About this issue

  • Original URL
  • State: closed
  • Created 2 years ago
  • Comments: 18 (12 by maintainers)

Commits related to this issue

Most upvoted comments

It builds on a bunch of other changes, so it might be complicated to cherry-pick

Unassigning myself, due to

It appears to be a bug in the options system (!) not specifically in the docker subsystem.