@@ -695,7 +695,7 @@ def pip_requirements_step(path, prefix=None, required=False, tmp_dir=None):
695
695
hash (requirements )
696
696
697
697
def poetry_install_step (
698
- path , poetry_export_extra_args = [], prefix = None , required = False
698
+ path , poetry_export_extra_args = [], prefix = None , required = False , tmp_dir = None
699
699
):
700
700
pyproject_file = path
701
701
if os .path .isdir (path ):
@@ -706,7 +706,7 @@ def poetry_install_step(
706
706
"poetry configuration not found: {}" .format (pyproject_file )
707
707
)
708
708
else :
709
- step ("poetry" , runtime , path , poetry_export_extra_args , prefix )
709
+ step ("poetry" , runtime , path , poetry_export_extra_args , prefix , tmp_dir )
710
710
hash (pyproject_file )
711
711
pyproject_path = os .path .dirname (pyproject_file )
712
712
poetry_lock_file = os .path .join (pyproject_path , "poetry.lock" )
@@ -840,6 +840,7 @@ def commands_step(path, commands):
840
840
prefix = prefix ,
841
841
poetry_export_extra_args = poetry_export_extra_args ,
842
842
required = True ,
843
+ tmp_dir = claim .get ("poetry_tmp_dir" )
843
844
)
844
845
845
846
if npm_requirements and runtime .startswith ("nodejs" ):
@@ -915,10 +916,11 @@ def execute(self, build_plan, zip_stream, query):
915
916
path ,
916
917
poetry_export_extra_args ,
917
918
prefix ,
919
+ tmp_dir
918
920
) = action [1 :]
919
921
log .info ("poetry_export_extra_args: %s" , poetry_export_extra_args )
920
922
with install_poetry_dependencies (
921
- query , path , poetry_export_extra_args
923
+ query , path , poetry_export_extra_args , tmp_dir
922
924
) as rd :
923
925
if rd :
924
926
if pf :
@@ -1114,7 +1116,7 @@ def install_pip_requirements(query, requirements_file, tmp_dir):
1114
1116
1115
1117
1116
1118
@contextmanager
1117
- def install_poetry_dependencies (query , path , poetry_export_extra_args ):
1119
+ def install_poetry_dependencies (query , path , poetry_export_extra_args , tmp_dir ):
1118
1120
# TODO:
1119
1121
# 1. Emit files instead of temp_dir
1120
1122
@@ -1168,7 +1170,7 @@ def install_poetry_dependencies(query, path, poetry_export_extra_args):
1168
1170
working_dir = os .getcwd ()
1169
1171
1170
1172
log .info ("Installing python dependencies with poetry & pip: %s" , poetry_lock_file )
1171
- with tempdir () as temp_dir :
1173
+ with tempdir (tmp_dir ) as temp_dir :
1172
1174
1173
1175
def copy_file_to_target (file , temp_dir ):
1174
1176
filename = os .path .basename (file )
0 commit comments