gorgeous-winter-99296
11/13/2022, 2:38 PMraw_layer_digest = await Get(Digest, CreateArchive(snapshot, "image_bundle.tar", "tar"))
Where snapshot is:
Snapshot(digest=(6ef63a638db36f100b2a48fb7b1b497131ef2551d2d4c6251882fb631b458820, 82), dirs=(examples), files=(examples/example.pex))
On 2.13 this works fine, and on 2.14 it crashes with the following:
15:00:12.12 [ERROR] 1 Exception encountered:
Engine traceback:
in select
in pants.core.goals.package.package_asset
in pants_backend_oci.goals.package.package_oci_image (examples:oci)
in pants_backend_oci.util_rules.build_image_bundle.build_oci_bundle_package
in pants.core.util_rules.archive.create_archive
Traceback (no traceback):
<pants native internals>
Exception: Path `` was unexpectedly empty
Whatever the changes happened between 2.13.0 and 2.14.0rc0. It all works as expected if I set output_filename
to have a directory component. After digging a bit I believe this might be a Rust change somewhere; potentially from this line/change: https://github.com/pantsbuild/pants/pull/16648/files#diff-78b61c9a9b42b3895a2c71b90e31aceee5a5f38780edddbd4daec17ee4386d98R475.gorgeous-winter-99296
11/13/2022, 2:43 PMos.path.dirname
is valid.gorgeous-winter-99296
11/13/2022, 2:51 PMoutput_filename
quite strongly suggest a filename and not a path... 😛gorgeous-winter-99296
11/13/2022, 3:14 PMhappy-kitchen-89482
11/13/2022, 3:54 PMhappy-kitchen-89482
11/13/2022, 3:55 PM