1- # Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
1+ # Copyright 2018-2019 Amazon.com, Inc. or its affiliates. All Rights Reserved.
22#
33# Licensed under the Apache License, Version 2.0 (the "License").
44# You may not use this file except in compliance with the License.
3333
3434
3535def pytest_addoption (parser ):
36- parser .addoption ('--docker-base-name' , default = 'preprod -tensorflow' )
36+ parser .addoption ('--docker-base-name' , default = 'sagemaker -tensorflow-scriptmode ' )
3737 parser .addoption ('--tag' , default = None )
3838 parser .addoption ('--region' , default = 'us-west-2' )
3939 parser .addoption ('--framework-version' , default = TensorFlow .LATEST_VERSION )
40- parser .addoption ('--processor' , default = 'cpu' , choices = ['gpu' , 'cpu' ])
41- parser .addoption ('--py-version' , default = '3' , choices = ['2' , '3' ])
40+ parser .addoption ('--processor' , default = 'cpu' , choices = ['cpu' , ' gpu' , 'cpu,gpu ' ])
41+ parser .addoption ('--py-version' , default = '3' , choices = ['2' , '3' , '2,3' ])
4242 parser .addoption ('--account-id' , default = '142577830533' )
4343 parser .addoption ('--instance-type' , default = None )
4444
4545
46- @ pytest . fixture ( scope = 'session' )
47- def docker_base_name ( request ):
48- return request . config .getoption ('--docker-base-name ' )
46+ def pytest_configure ( config ):
47+ os . environ [ 'TEST_PY_VERSIONS' ] = config . getoption ( '--py-version' )
48+ os . environ [ 'TEST_PROCESSORS' ] = config .getoption ('--processor ' )
4949
5050
5151@pytest .fixture (scope = 'session' )
52- def processor (request ):
53- return request .config .getoption ('--processor ' )
52+ def docker_base_name (request ):
53+ return request .config .getoption ('--docker-base-name ' )
5454
5555
5656@pytest .fixture (scope = 'session' )
5757def region (request ):
5858 return request .config .getoption ('--region' )
5959
6060
61- @pytest .fixture (scope = 'session' )
62- def py_version (request ):
63- return request .config .getoption ('--py-version' )
64-
65-
6661@pytest .fixture (scope = 'session' )
6762def framework_version (request ):
6863 return request .config .getoption ('--framework-version' )
6964
7065
71- @pytest .fixture ( scope = 'session' )
66+ @pytest .fixture
7267def tag (request , framework_version , processor , py_version ):
7368 provided_tag = request .config .getoption ('--tag' )
7469 default_tag = '{}-{}-py{}' .format (framework_version , processor , py_version )
@@ -90,7 +85,7 @@ def account_id(request):
9085 return request .config .getoption ('--account-id' )
9186
9287
93- @pytest .fixture ( scope = 'session' )
88+ @pytest .fixture
9489def instance_type (request , processor ):
9590 provided_instance_type = request .config .getoption ('--instance-type' )
9691 default_instance_type = 'ml.c4.xlarge' if processor == 'cpu' else 'ml.p2.xlarge'
@@ -112,12 +107,12 @@ def skip_gpu_instance_restricted_regions(region, instance_type):
112107 pytest .skip ('Skipping GPU test in region {}' .format (region ))
113108
114109
115- @pytest .fixture ( scope = 'session' )
110+ @pytest .fixture
116111def docker_image (docker_base_name , tag ):
117112 return '{}:{}' .format (docker_base_name , tag )
118113
119114
120- @pytest .fixture ( scope = 'session' )
115+ @pytest .fixture
121116def ecr_image (account_id , docker_base_name , tag , region ):
122117 return '{}.dkr.ecr.{}.amazonaws.com/{}:{}' .format (
123118 account_id , region , docker_base_name , tag )
0 commit comments