1818import boto3
1919import numpy
2020import pytest
21- import tests .integ .local_mode_utils as local_mode_utils
21+ import tempfile
22+
23+ import tests .integ .lock as lock
2224from tests .integ import DATA_DIR , PYTHON_VERSION
2325from tests .integ .timeout import timeout
2426
2527from sagemaker .local import LocalSession , LocalSagemakerRuntimeClient , LocalSagemakerClient
2628from sagemaker .mxnet import MXNet
2729from sagemaker .tensorflow import TensorFlow
2830
31+ LOCK_PATH = os .path .join (tempfile .gettempdir (), 'sagemaker_test_local_mode_lock' )
2932DATA_PATH = os .path .join (DATA_DIR , 'iris' , 'data' )
3033DEFAULT_REGION = 'us-west-2'
3134
@@ -101,7 +104,7 @@ def test_tf_local_mode(tf_full_version, sagemaker_local_session):
101104 print ('job succeeded: {}' .format (estimator .latest_training_job .name ))
102105
103106 endpoint_name = estimator .latest_training_job .name
104- with local_mode_utils .lock ():
107+ with lock .lock (LOCK_PATH ):
105108 try :
106109 json_predictor = estimator .deploy (initial_instance_count = 1 ,
107110 instance_type = 'local' ,
@@ -140,7 +143,7 @@ def test_tf_distributed_local_mode(sagemaker_local_session):
140143
141144 endpoint_name = estimator .latest_training_job .name
142145
143- with local_mode_utils .lock ():
146+ with lock .lock (LOCK_PATH ):
144147 try :
145148 json_predictor = estimator .deploy (initial_instance_count = 1 ,
146149 instance_type = 'local' ,
@@ -178,7 +181,7 @@ def test_tf_local_data(sagemaker_local_session):
178181 print ('job succeeded: {}' .format (estimator .latest_training_job .name ))
179182
180183 endpoint_name = estimator .latest_training_job .name
181- with local_mode_utils .lock ():
184+ with lock .lock (LOCK_PATH ):
182185 try :
183186 json_predictor = estimator .deploy (initial_instance_count = 1 ,
184187 instance_type = 'local' ,
@@ -217,7 +220,7 @@ def test_tf_local_data_local_script():
217220 print ('job succeeded: {}' .format (estimator .latest_training_job .name ))
218221
219222 endpoint_name = estimator .latest_training_job .name
220- with local_mode_utils .lock ():
223+ with lock .lock (LOCK_PATH ):
221224 try :
222225 json_predictor = estimator .deploy (initial_instance_count = 1 ,
223226 instance_type = 'local' ,
@@ -241,7 +244,7 @@ def test_local_mode_serving_from_s3_model(sagemaker_local_session, mxnet_model,
241244 s3_model .sagemaker_session = sagemaker_local_session
242245
243246 predictor = None
244- with local_mode_utils .lock ():
247+ with lock .lock (LOCK_PATH ):
245248 try :
246249 predictor = s3_model .deploy (initial_instance_count = 1 , instance_type = 'local' )
247250 data = numpy .zeros (shape = (1 , 1 , 28 , 28 ))
@@ -255,7 +258,7 @@ def test_local_mode_serving_from_s3_model(sagemaker_local_session, mxnet_model,
255258def test_local_mode_serving_from_local_model (tmpdir , sagemaker_local_session , mxnet_model ):
256259 predictor = None
257260
258- with local_mode_utils .lock ():
261+ with lock .lock (LOCK_PATH ):
259262 try :
260263 path = 'file://%s' % (str (tmpdir ))
261264 model = mxnet_model (path )
@@ -285,7 +288,7 @@ def test_mxnet_local_mode(sagemaker_local_session, mxnet_full_version):
285288 mx .fit ({'train' : train_input , 'test' : test_input })
286289 endpoint_name = mx .latest_training_job .name
287290
288- with local_mode_utils .lock ():
291+ with lock .lock (LOCK_PATH ):
289292 try :
290293 predictor = mx .deploy (1 , 'local' , endpoint_name = endpoint_name )
291294 data = numpy .zeros (shape = (1 , 1 , 28 , 28 ))
@@ -310,7 +313,7 @@ def test_mxnet_local_data_local_script(mxnet_full_version):
310313 mx .fit ({'train' : train_input , 'test' : test_input })
311314 endpoint_name = mx .latest_training_job .name
312315
313- with local_mode_utils .lock ():
316+ with lock .lock (LOCK_PATH ):
314317 try :
315318 predictor = mx .deploy (1 , 'local' , endpoint_name = endpoint_name )
316319 data = numpy .zeros (shape = (1 , 1 , 28 , 28 ))
@@ -365,7 +368,7 @@ def test_local_transform_mxnet(sagemaker_local_session, tmpdir, mxnet_full_versi
365368 transformer = mx .transformer (1 , 'local' , assemble_with = 'Line' , max_payload = 1 ,
366369 strategy = 'SingleRecord' , output_path = output_path )
367370
368- with local_mode_utils .lock ():
371+ with lock .lock (LOCK_PATH ):
369372 transformer .transform (transform_input , content_type = 'text/csv' , split_type = 'Line' )
370373 transformer .wait ()
371374
0 commit comments