damp-quill-59187
12/12/2019, 6:16 PMpython_binary
. Thas a single 'main' python_library
, an entrypoint, and some other params
`publish_task`: this is similar to the existing publish, but uses twine.
All these steps work well individually. The issue here is getting them to play nicely with each other. What I'd like to do is call our deploy-job
goal with the job_target
as a target. This would then in turn call our publish goal, which calls setup.py.
The issue that I'm running into is that when setup.py is called, it fails with the error :
FAILURE: setup-py target(s) must provide an artifact.
I imagine this is because it is looking at the job_target
for a provides argument, which it doesn't have. What we're looking for is to somehow specify that the round_manager.require_data('python_dists')
line can inform setup.py libraries that this needs to be run against are the python_library deps of job_target
I've dabbled in the python_binary code to see how this is done, but couldn't exactly grab a hold. Happy to provide more details as welldamp-quill-59187
12/12/2019, 6:20 PMjob_target
looks roughly like this:
python_job(
name="my_job",
job_name="Job 1",
entrypoint="myjob.entrypoint',
dependencies=[
":lib",
],
)
where :lib
is a python library, specifically, the python library that we want to run a recursive setup.py command on.damp-quill-59187
12/12/2019, 6:44 PMdamp-quill-59187
12/12/2019, 7:04 PMprovides
blocks, but doesn't have one itself
2. run setup.py against that targetdamp-quill-59187
12/12/2019, 7:05 PMdamp-quill-59187
12/12/2019, 7:05 PMdamp-quill-59187
01/13/2020, 3:03 PM