ripe-gigabyte-88964
09/12/2023, 8:25 PMTargetGenerator
to generate some Dockerfiles which utilize the instructions
field as opposed to source
. However, when I try and publish these images I am getting the following error.
Engine traceback:
115
in select
116
..
117
in pants.vcs.changed.find_changed_owners
118
..
119
120
Traceback (most recent call last):
121
File "/home/runner/.cache/nce/260e9f180e257368873660af8dd93ef1ae670cb61bde99eea1fd914ad6e534bb/bindings/venvs/2.16.0/lib/python3.9/site-packages/pants/engine/internals/selectors.py", line 623, in native_engine_generator_send
122
res = rule.send(arg) if err is None else rule.throw(throw or err)
123
File "/home/runner/.cache/nce/260e9f180e257368873660af8dd93ef1ae670cb61bde99eea1fd914ad6e534bb/bindings/venvs/2.16.0/lib/python3.9/site-packages/pants/vcs/changed.py", line 75, in find_changed_owners
124
dependents = await Get(
125
File "/home/runner/.cache/nce/260e9f180e257368873660af8dd93ef1ae670cb61bde99eea1fd914ad6e534bb/bindings/venvs/2.16.0/lib/python3.9/site-packages/pants/engine/internals/selectors.py", line 118, in __await__
126
result = yield self
127
File "/home/runner/.cache/nce/260e9f180e257368873660af8dd93ef1ae670cb61bde99eea1fd914ad6e534bb/bindings/venvs/2.16.0/lib/python3.9/site-packages/pants/engine/internals/selectors.py", line 623, in native_engine_generator_send
128
res = rule.send(arg) if err is None else rule.throw(throw or err)
129
File "/home/runner/.cache/nce/260e9f180e257368873660af8dd93ef1ae670cb61bde99eea1fd914ad6e534bb/bindings/venvs/2.16.0/lib/python3.9/site-packages/pants/backend/project_info/dependents.py", line 27, in map_addresses_to_dependents
130
dependencies_per_target = await MultiGet(
131
File "/home/runner/.cache/nce/260e9f180e257368873660af8dd93ef1ae670cb61bde99eea1fd914ad6e534bb/bindings/venvs/2.16.0/lib/python3.9/site-packages/pants/engine/internals/selectors.py", line 358, in MultiGet
132
return await _MultiGet(tuple(__arg0))
133
File "/home/runner/.cache/nce/260e9f180e257368873660af8dd93ef1ae670cb61bde99eea1fd914ad6e534bb/bindings/venvs/2.16.0/lib/python3.9/site-packages/pants/engine/internals/selectors.py", line 165, in __await__
134
result = yield self.gets
135
File "/home/runner/.cache/nce/260e9f180e257368873660af8dd93ef1ae670cb61bde99eea1fd914ad6e534bb/bindings/venvs/2.16.0/lib/python3.9/site-packages/pants/engine/internals/selectors.py", line 623, in native_engine_generator_send
116
res = rule.send(arg) if err is None else rule.throw(throw or err)
117
File "/home/runner/.cache/nce/260e9f180e257368873660af8dd93ef1ae670cb61bde99eea1fd914ad6e534bb/bindings/venvs/2.16.0/lib/python3.9/site-packages/pants/engine/internals/graph.py", line 1193, in resolve_dependencies
118
inferred = await MultiGet(
119
File "/home/runner/.cache/nce/260e9f180e257368873660af8dd93ef1ae670cb61bde99eea1fd914ad6e534bb/bindings/venvs/2.16.0/lib/python3.9/site-packages/pants/engine/internals/selectors.py", line 358, in MultiGet
120
return await _MultiGet(tuple(__arg0))
121
File "/home/runner/.cache/nce/260e9f180e257368873660af8dd93ef1ae670cb61bde99eea1fd914ad6e534bb/bindings/venvs/2.16.0/lib/python3.9/site-packages/pants/engine/internals/selectors.py", line 165, in __await__
122
result = yield self.gets
123
File "/home/runner/.cache/nce/260e9f180e257368873660af8dd93ef1ae670cb61bde99eea1fd914ad6e534bb/bindings/venvs/2.16.0/lib/python3.9/site-packages/pants/engine/internals/selectors.py", line 623, in native_engine_generator_send
124
res = rule.send(arg) if err is None else rule.throw(throw or err)
125
File "/home/runner/.cache/nce/260e9f180e257368873660af8dd93ef1ae670cb61bde99eea1fd914ad6e534bb/bindings/venvs/2.16.0/lib/python3.9/site-packages/pants/backend/docker/util_rules/dependencies.py", line 39, in infer_docker_dependencies
126
dockerfile_info = await Get(DockerfileInfo, DockerfileInfoRequest(request.field_set.address))
127
File "/home/runner/.cache/nce/260e9f180e257368873660af8dd93ef1ae670cb61bde99eea1fd914ad6e534bb/bindings/venvs/2.16.0/lib/python3.9/site-packages/pants/engine/internals/selectors.py", line 118, in __await__
128
result = yield self
129
File "/home/runner/.cache/nce/260e9f180e257368873660af8dd93ef1ae670cb61bde99eea1fd914ad6e534bb/bindings/venvs/2.16.0/lib/python3.9/site-packages/pants/engine/internals/selectors.py", line 623, in native_engine_generator_send
130
res = rule.send(arg) if err is None else rule.throw(throw or err)
131
File "/home/runner/.cache/nce/260e9f180e257368873660af8dd93ef1ae670cb61bde99eea1fd914ad6e534bb/bindings/venvs/2.16.0/lib/python3.9/site-packages/pants/backend/docker/subsystems/dockerfile_parser.py", line 161, in parse_dockerfile
132
assert len(dockerfiles) == 1, (
133
AssertionError: Internal error: Expected a single source file to Dockerfile parse request DockerfileInfoRequest(address=Address(myproject:my_image)), got: ().
To me, this looks like it's trying to do dependency inference on the image but only looks for the source
field and not at instructions
but maybe somebody has dealt with this before?curved-television-6568
09/12/2023, 8:29 PMsource=None
in your plugin when you provide instructions=…
?ripe-gigabyte-88964
09/12/2023, 8:34 PMcurved-television-6568
09/12/2023, 11:39 PMdocker_image
targets that uses the instructions
field and use it to publish images with, so I know this works.. but I don't have access to that plugin for the time being.. 🤔curved-television-6568
09/12/2023, 11:41 PMcurved-television-6568
09/12/2023, 11:42 PMripe-gigabyte-88964
09/13/2023, 1:14 PMHydratedSources
as opposed to a request for GeneratedSources
provided here.curved-television-6568
09/13/2023, 2:22 PMenable_codegen=True
there, and the GeneratedSources
is invoked by the rule resolving the HydratedSources
https://github.com/pantsbuild/pants/blob/9bd3a3019567800692b109563ccd3d65bc921772/src/python/pants/engine/internals/graph.py#L1057-L1061ripe-gigabyte-88964
09/13/2023, 2:22 PMripe-gigabyte-88964
09/13/2023, 4:24 PMripe-gigabyte-88964
09/13/2023, 4:25 PM--changed-since
flagripe-gigabyte-88964
09/13/2023, 4:29 PMAddress
in the request refers to my target generator.ripe-gigabyte-88964
09/13/2023, 4:33 PMBUILD
file?curved-television-6568
09/13/2023, 6:03 PMenv()
curved-television-6568
09/13/2023, 6:04 PMripe-gigabyte-88964
09/13/2023, 6:13 PMbuild_file_alias
that will load my content using pkgutil