Skip to content

"role=get_execution_role" throws region error #1303

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
purplexed opened this issue Feb 21, 2020 · 3 comments
Closed

"role=get_execution_role" throws region error #1303

purplexed opened this issue Feb 21, 2020 · 3 comments

Comments

@purplexed
Copy link

purplexed commented Feb 21, 2020

Describe the bug
Using this sdk within a codebuild job, I run the get_execution_role and I get the following error:

Traceback (most recent call last):
--
341 | File "xxx/xxx.py", line 23, in <module>
342 | role = get_execution_role()
343 | File "/usr/local/lib/python3.7/site-packages/sagemaker/session.py", line 3293, in get_execution_role
344 | arn = sagemaker_session.get_caller_identity_arn()
345 | File "/usr/local/lib/python3.7/site-packages/sagemaker/session.py", line 2891, in get_caller_identity_arn
346 | endpoint_url=sts_regional_endpoint(self.boto_region_name),
347 | File "/usr/local/lib/python3.7/site-packages/botocore/client.py", line 357, in _api_call
348 | return self._make_api_call(operation_name, kwargs)
349 | File "/usr/local/lib/python3.7/site-packages/botocore/client.py", line 661, in _make_api_call
350 | raise error_class(parsed_response, operation_name)
351 | botocore.exceptions.ClientError: An error occurred (SignatureDoesNotMatch) when calling the GetCallerIdentity operation: Credential should be scoped to a valid region, not 'eu-west-1'.

This only happens in the latest 1.50.14 version of sagemaker. 1.50.13 works fine.

To reproduce

  1. Create a codebuild job
  2. The buildspec should firstly install the requirements.txt installation, which should include the sagemaker 1.50.14 package
  3. The buildspec should run a python script that includes the following code:
from sagemaker import get_execution_role

role = get_execution_role()
print(role)

Expected behavior
Expected to get the sagemaker execution role for the notebook instance and run the script.

System information

  • Python 3.7:
  • sagemaker 1.50.14:
@laurenyu
Copy link
Contributor

hi @purplexed, I tried running get_execution_role in a Notebook Instance and was unable to reproduce the error. You mentioned that you're using CodeBuild in this as well - could you describe your use case in a little more detail?

The get_execution_role method is intended for use only in SageMaker Notebook Instances. We have an outstanding issue to work on improving that: #300

@purplexed
Copy link
Author

Hi @laurenyu, thanks for getting back!

I understand that the get_execution_role should be used in SageMaker Notebook instances, but I wouldn't want the data scientist bothered with the infrastructure side of things.

As for my use case, I use that command in a python script, which is being invoked by a codebuild job. Apologies for the initial lack of clarity. More specifically what I am trying to do and fails:

buildspec.yml

version: 0.2
phases:
  pre_build:
    commands:
      - pip install -r requirements.txt
  build:
    commands:
      - export VERSION=$(cat version.txt)
      - python sagemaker.py "${VERSION}"

sagemaker.py

from sagemaker import get_execution_role

modelName = xxx
s3_model_location = xxx
image_name = xxx
role = get_execution_role()
sess = sagemaker.Session()

model = sagemaker.model.Model ( name = modelName,
                                model_data = s3_model_location,
                                image = image_name,
                                role = role,
                                sagemaker_session = sess)

Let me know if there is anything more specific I could indicate.

@nadiaya
Copy link
Contributor

nadiaya commented Feb 26, 2020

As @laurenyu said get_execution_role() was never intended to work outside of SageMaker Notebook Instances.

Thank you so much for providing details about your use case. It will definitely help when #300 issue will get prioritized.

For running SageMaker in a codebuild job we could recommend doing something similar to what python-sdk does for integ tests and creating a "SageMakerRole" in the account you are running tests or by hardcoding the arn.

A few links about finding role that might be helpful:
https://docs.aws.amazon.com/cli/latest/reference/sts/get-caller-identity.html
https://stackoverflow.com/questions/47313778/find-role-being-used-on-server-from-aws-cli/52073848#52073848

Closing this issue in favor of #300.

@nadiaya nadiaya closed this as completed Feb 26, 2020
benieric added a commit that referenced this issue Nov 29, 2023
Co-authored-by: Raymond Liu <[email protected]>
Co-authored-by: Ruilian Gao <[email protected]>
Co-authored-by: John Barboza <[email protected]>
Co-authored-by: Gary Wang <[email protected]>
Co-authored-by: Malav Shastri <[email protected]>
Co-authored-by: Keshav Chandak <[email protected]>
Co-authored-by: Zuoyuan Huang <[email protected]>
Co-authored-by: Ao Guo <[email protected]>
Co-authored-by: Mufaddal Rohawala <[email protected]>
Co-authored-by: Mike Schneider <[email protected]>
Co-authored-by: Bhupendra Singh <[email protected]>
Co-authored-by: ci <ci>
Co-authored-by: Malav Shastri <[email protected]>
Co-authored-by: evakravi <[email protected]>
Co-authored-by: Keshav Chandak <[email protected]>
Co-authored-by: Alexander Pivovarov <[email protected]>
Co-authored-by: qidewenwhen <[email protected]>
Co-authored-by: mariumof <[email protected]>
Co-authored-by: matherit <[email protected]>
Co-authored-by: amzn-choeric <[email protected]>
Co-authored-by: Ao Guo <[email protected]>
Co-authored-by: Sally Seok <[email protected]>
Co-authored-by: Erick Benitez-Ramos <[email protected]>
Co-authored-by: Qingzi-Lan <[email protected]>
Co-authored-by: Sally Seok <[email protected]>
Co-authored-by: Manu Seth <[email protected]>
Co-authored-by: Miyoung <[email protected]>
Co-authored-by: Sarah Castillo <[email protected]>
Co-authored-by: EC2 Default User <[email protected]>
Co-authored-by: EC2 Default User <[email protected]>
Co-authored-by: EC2 Default User <[email protected]>
Co-authored-by: Xin Wang <[email protected]>
Co-authored-by: stacicho <[email protected]>
Co-authored-by: martinRenou <[email protected]>
Co-authored-by: jiapinw <[email protected]>
Co-authored-by: Akash Goel <[email protected]>
Co-authored-by: Joseph Zhang <[email protected]>
Co-authored-by: Harsha Reddy <[email protected]>
Co-authored-by: Haixin Wang <[email protected]>
Co-authored-by: Kalyani Nikure <[email protected]>
Co-authored-by: Xin Wang <[email protected]>
Co-authored-by: Gili Nachum <[email protected]>
Co-authored-by: Jose Pena <[email protected]>
Co-authored-by: cansun <[email protected]>
Co-authored-by: AWS-pratab <[email protected]>
Co-authored-by: shenlongtang <[email protected]>
Co-authored-by: Zach Kimberg <[email protected]>
Co-authored-by: chrivtho-github <[email protected]>
Co-authored-by: Justin <[email protected]>
Co-authored-by: Duc Trung Le <[email protected]>
Co-authored-by: HappyAmazonian <[email protected]>
Co-authored-by: cj-zhang <[email protected]>
Co-authored-by: Matthew <[email protected]>
Co-authored-by: Zach Kimberg <[email protected]>
Co-authored-by: Rohith Nadimpally <[email protected]>
Co-authored-by: rohithn1 <[email protected]>
Co-authored-by: Victor Zhu <[email protected]>
Co-authored-by: Gary Wang <[email protected]>
Co-authored-by: SSRraymond <[email protected]>
Co-authored-by: jbarz1 <[email protected]>
Co-authored-by: Mohan Gandhi <[email protected]>
Co-authored-by: Mohan Gandhi <[email protected]>
Co-authored-by: Barboza <[email protected]>
Co-authored-by: ruiliann666 <[email protected]>
Co-authored-by: Rohan Gujarathi <[email protected]>
Co-authored-by: svia3 <[email protected]>
Co-authored-by: Zhankui Lu <[email protected]>
Co-authored-by: Dewen Qi <[email protected]>
Co-authored-by: Edward Sun <[email protected]>
Co-authored-by: Stephen Via <[email protected]>
Co-authored-by: Namrata Madan <[email protected]>
Co-authored-by: Stacia Choe <[email protected]>
Co-authored-by: Edward Sun <[email protected]>
Co-authored-by: Edward Sun <[email protected]>
Co-authored-by: Rohan Gujarathi <[email protected]>
Co-authored-by: JohnaAtAWS <[email protected]>
Co-authored-by: Vera Yu <[email protected]>
Co-authored-by: bhaoz <[email protected]>
Co-authored-by: Qing Lan <[email protected]>
Co-authored-by: Namrata Madan <[email protected]>
Co-authored-by: Sirut Buasai <[email protected]>
Co-authored-by: wayneyao <[email protected]>
Co-authored-by: Jacky Lee <[email protected]>
Co-authored-by: haNa-meister <[email protected]>
Co-authored-by: Shailav <[email protected]>
Fix unit tests (#1018)
Fix happy hf test (#1026)
fix logic setup (#1034)
fixes (#1045)
Fix flake error in init (#1050)
fix (#1053)
fix: skip tensorflow local mode notebook test (#4060)
fix: tags for jumpstart model package models (#4061)
fix: pipeline variable kms key (#4065)
fix: jumpstart cache using sagemaker session s3 client (#4051)
fix: gated models unsupported region (#4069)
fix: pipeline upsert failed to pass parallelism_config to update (#4066)
fix: temporarily skip kmeans notebook (#4092)
fixes (#1051)
Fix missing absolute import error (#1057)
Fix flake8 error in unit test (#1058)
fixes (#1056)
Fix flake8 error in integ test (#1060)
Fix black format error in test_pickle_dependencies (#1062)
Fix docstyle error under serve (#1065)
Fix docstyle error in builder failure (#1066)
fix black and flake8 formatting (#1069)
Fix format error (#1070)
Fix integ test (#1074)
fix: HuggingFaceProcessor parameterized instance_type when image_uri is absent (#4072)
fix: log message when sdk defaults not applied (#4104)
fix: handle bad jumpstart default session (#4109)
Fix the version information, whl and flake8 (#1085)
Fix JSON serializer error (#1088)
Fix unit test (#1091)
fix format (#1103)
Fix local mode predictor (#1107)
Fix DJLPredictor (#1108)
Fix modelbuilder unit tests (#1118)
fixes (#1136)
fixes (#1165)
fixes (#1166)
fix: auto ml integ tests and add flaky test markers (#4136)
fix model data for JumpStartModel (#4135)
fix: transform step  unit test (#4151)
fix: Update pipeline.py and selective_execution_config.py with small fixes (#1099)
fix: Fixed bug in _create_training_details (#4141)
fix: use correct line endings and s3 uris on windows (#4118)
fix: js tagging s3 prefix (#4167)
fix: Update Ec2 instance type to g5.4xlarge in test_huggingface_torch_distributed.py (#4181)
fix: import error in unsupported js regions (#4188)
fix: update local mode schema (#4185)
fix: fix flaky Inference Recommender integration tests (#4156)
fix: clone distribution in validate_distribution (#4205)
Fix hyperlinks in feature_processor.scheduler parameter descriptions (#4208)
Fix master merge formatting (#1186)
Fix master unit tests (#1203)
Fix djl unit tests (#1204)
Fix merge conflicts (#1217)
fix: fix URL links (#4217)
fix: bump urllib3 version (#4223)
fix: relax upper bound on urllib in local mode requirements (#4219)
fixes (#1224)
fix formatting (#1233)
fix byoc unit tests (#1235)
fix byoc unit tests (#1236)
Fixed Modelpackage's deploy calling  model's deploy (#1155)
fix: jumpstart unit-test (#1265)
fixes (#963)
Fix TorchTensorSer/Deser (#969)
fix (#971)
fix local container mode (#972)
Fix auto detect (#979)
Fix routing fn (#981)
fix local container serialization (#989)
fix custom serialiazation with local container. Also remove a  lot of unused code (#994)
Fix custom serialization for local container mode (#1000)
fix pytorch version (#1001)
Fix unit test (#990)
fix: Multiple bug fixes including removing unsupported feature. (#1105)
Fix some problems with pipeline compilation (#1125)
fix: Refactor JsonGet s3 URI and add serialize_output_to_json flag (#1164)
fix: invoke_function circular import (#1262)
fix: pylint (#1264)
fix: Add logging for docker build failures (#1267)
Fix session bug when provided in ModelBuilder (#1288)
fixes (#1313)
fix: Gated content bucket env var override (#1280)
fix: Change the library used in pytorch test causing cloudpickle version conflict (#1287)
fix: HMAC signing for ModelBuilder Triton python backend (#1282)
fix: do not delete temp folder generated by sdist (#1291)
fix: Do not require model_server if provided image_uri is a 1p image. (#1303)
fix: check image type vs instance type (#1307)
fix: unit test (#1315)
fix: Fixed model builder's register unable to deploy (#1323)
fix: missing `self._framework` in `InferenceSpec` path (#1325)
fix: enable xgboost integ test in our own pipeline (#1326)
fix: skip py310 (#1328)
fix: Update autodetect dlc logic (#1329)
Fix secret key in the Model object (#1334)
fix: improve error message (#1333)
Fix unit testing (#1340)
fix: Typing and formatting (#1341)
fix: WaiterError on failed pipeline execution. results() (#1337)
Fix tox identified errors (#1344)
Fix issue when the user runs in Python 3.11 (#1345)
fixes (#1346)
fix: use copy instead of move in bootstrap script (#1339)
Resolve keynote3 conflicts (#1351)
Resolve keynote3 conflicts v2 (#1353)
Fix conflicts (#1354)
Fix conflicts v3 (#1355)
fix: get whl from local to run integ tests (#1357)
fix: enable triton pt tests (#1358)
fix: integ test (#1362)
Fix Python 3.11 issue with dataclass decorator (#1345)
fix: remote function include_local_workdir default value (#1342)
fix: error message (#1373)
fixes (#1372)
fix: Remvoe PickleSerializer (#1378)
benieric added a commit that referenced this issue Nov 29, 2023
Co-authored-by: Raymond Liu <[email protected]>
Co-authored-by: Ruilian Gao <[email protected]>
Co-authored-by: John Barboza <[email protected]>
Co-authored-by: Gary Wang <[email protected]>
Co-authored-by: Malav Shastri <[email protected]>
Co-authored-by: Keshav Chandak <[email protected]>
Co-authored-by: Zuoyuan Huang <[email protected]>
Co-authored-by: Ao Guo <[email protected]>
Co-authored-by: Mufaddal Rohawala <[email protected]>
Co-authored-by: Mike Schneider <[email protected]>
Co-authored-by: Bhupendra Singh <[email protected]>
Co-authored-by: ci <ci>
Co-authored-by: Malav Shastri <[email protected]>
Co-authored-by: evakravi <[email protected]>
Co-authored-by: Keshav Chandak <[email protected]>
Co-authored-by: Alexander Pivovarov <[email protected]>
Co-authored-by: qidewenwhen <[email protected]>
Co-authored-by: mariumof <[email protected]>
Co-authored-by: matherit <[email protected]>
Co-authored-by: amzn-choeric <[email protected]>
Co-authored-by: Ao Guo <[email protected]>
Co-authored-by: Sally Seok <[email protected]>
Co-authored-by: Erick Benitez-Ramos <[email protected]>
Co-authored-by: Qingzi-Lan <[email protected]>
Co-authored-by: Sally Seok <[email protected]>
Co-authored-by: Manu Seth <[email protected]>
Co-authored-by: Miyoung <[email protected]>
Co-authored-by: Sarah Castillo <[email protected]>
Co-authored-by: EC2 Default User <[email protected]>
Co-authored-by: EC2 Default User <[email protected]>
Co-authored-by: EC2 Default User <[email protected]>
Co-authored-by: Xin Wang <[email protected]>
Co-authored-by: stacicho <[email protected]>
Co-authored-by: martinRenou <[email protected]>
Co-authored-by: jiapinw <[email protected]>
Co-authored-by: Akash Goel <[email protected]>
Co-authored-by: Joseph Zhang <[email protected]>
Co-authored-by: Harsha Reddy <[email protected]>
Co-authored-by: Haixin Wang <[email protected]>
Co-authored-by: Kalyani Nikure <[email protected]>
Co-authored-by: Xin Wang <[email protected]>
Co-authored-by: Gili Nachum <[email protected]>
Co-authored-by: Jose Pena <[email protected]>
Co-authored-by: cansun <[email protected]>
Co-authored-by: AWS-pratab <[email protected]>
Co-authored-by: shenlongtang <[email protected]>
Co-authored-by: Zach Kimberg <[email protected]>
Co-authored-by: chrivtho-github <[email protected]>
Co-authored-by: Justin <[email protected]>
Co-authored-by: Duc Trung Le <[email protected]>
Co-authored-by: HappyAmazonian <[email protected]>
Co-authored-by: cj-zhang <[email protected]>
Co-authored-by: Matthew <[email protected]>
Co-authored-by: Zach Kimberg <[email protected]>
Co-authored-by: Rohith Nadimpally <[email protected]>
Co-authored-by: rohithn1 <[email protected]>
Co-authored-by: Victor Zhu <[email protected]>
Co-authored-by: Gary Wang <[email protected]>
Co-authored-by: SSRraymond <[email protected]>
Co-authored-by: jbarz1 <[email protected]>
Co-authored-by: Mohan Gandhi <[email protected]>
Co-authored-by: Mohan Gandhi <[email protected]>
Co-authored-by: Barboza <[email protected]>
Co-authored-by: ruiliann666 <[email protected]>
Co-authored-by: Rohan Gujarathi <[email protected]>
Co-authored-by: svia3 <[email protected]>
Co-authored-by: Zhankui Lu <[email protected]>
Co-authored-by: Dewen Qi <[email protected]>
Co-authored-by: Edward Sun <[email protected]>
Co-authored-by: Stephen Via <[email protected]>
Co-authored-by: Namrata Madan <[email protected]>
Co-authored-by: Stacia Choe <[email protected]>
Co-authored-by: Edward Sun <[email protected]>
Co-authored-by: Edward Sun <[email protected]>
Co-authored-by: Rohan Gujarathi <[email protected]>
Co-authored-by: JohnaAtAWS <[email protected]>
Co-authored-by: Vera Yu <[email protected]>
Co-authored-by: bhaoz <[email protected]>
Co-authored-by: Qing Lan <[email protected]>
Co-authored-by: Namrata Madan <[email protected]>
Co-authored-by: Sirut Buasai <[email protected]>
Co-authored-by: wayneyao <[email protected]>
Co-authored-by: Jacky Lee <[email protected]>
Co-authored-by: haNa-meister <[email protected]>
Co-authored-by: Shailav <[email protected]>
Fix unit tests (#1018)
Fix happy hf test (#1026)
fix logic setup (#1034)
fixes (#1045)
Fix flake error in init (#1050)
fix (#1053)
fix: skip tensorflow local mode notebook test (#4060)
fix: tags for jumpstart model package models (#4061)
fix: pipeline variable kms key (#4065)
fix: jumpstart cache using sagemaker session s3 client (#4051)
fix: gated models unsupported region (#4069)
fix: pipeline upsert failed to pass parallelism_config to update (#4066)
fix: temporarily skip kmeans notebook (#4092)
fixes (#1051)
Fix missing absolute import error (#1057)
Fix flake8 error in unit test (#1058)
fixes (#1056)
Fix flake8 error in integ test (#1060)
Fix black format error in test_pickle_dependencies (#1062)
Fix docstyle error under serve (#1065)
Fix docstyle error in builder failure (#1066)
fix black and flake8 formatting (#1069)
Fix format error (#1070)
Fix integ test (#1074)
fix: HuggingFaceProcessor parameterized instance_type when image_uri is absent (#4072)
fix: log message when sdk defaults not applied (#4104)
fix: handle bad jumpstart default session (#4109)
Fix the version information, whl and flake8 (#1085)
Fix JSON serializer error (#1088)
Fix unit test (#1091)
fix format (#1103)
Fix local mode predictor (#1107)
Fix DJLPredictor (#1108)
Fix modelbuilder unit tests (#1118)
fixes (#1136)
fixes (#1165)
fixes (#1166)
fix: auto ml integ tests and add flaky test markers (#4136)
fix model data for JumpStartModel (#4135)
fix: transform step  unit test (#4151)
fix: Update pipeline.py and selective_execution_config.py with small fixes (#1099)
fix: Fixed bug in _create_training_details (#4141)
fix: use correct line endings and s3 uris on windows (#4118)
fix: js tagging s3 prefix (#4167)
fix: Update Ec2 instance type to g5.4xlarge in test_huggingface_torch_distributed.py (#4181)
fix: import error in unsupported js regions (#4188)
fix: update local mode schema (#4185)
fix: fix flaky Inference Recommender integration tests (#4156)
fix: clone distribution in validate_distribution (#4205)
Fix hyperlinks in feature_processor.scheduler parameter descriptions (#4208)
Fix master merge formatting (#1186)
Fix master unit tests (#1203)
Fix djl unit tests (#1204)
Fix merge conflicts (#1217)
fix: fix URL links (#4217)
fix: bump urllib3 version (#4223)
fix: relax upper bound on urllib in local mode requirements (#4219)
fixes (#1224)
fix formatting (#1233)
fix byoc unit tests (#1235)
fix byoc unit tests (#1236)
Fixed Modelpackage's deploy calling  model's deploy (#1155)
fix: jumpstart unit-test (#1265)
fixes (#963)
Fix TorchTensorSer/Deser (#969)
fix (#971)
fix local container mode (#972)
Fix auto detect (#979)
Fix routing fn (#981)
fix local container serialization (#989)
fix custom serialiazation with local container. Also remove a  lot of unused code (#994)
Fix custom serialization for local container mode (#1000)
fix pytorch version (#1001)
Fix unit test (#990)
fix: Multiple bug fixes including removing unsupported feature. (#1105)
Fix some problems with pipeline compilation (#1125)
fix: Refactor JsonGet s3 URI and add serialize_output_to_json flag (#1164)
fix: invoke_function circular import (#1262)
fix: pylint (#1264)
fix: Add logging for docker build failures (#1267)
Fix session bug when provided in ModelBuilder (#1288)
fixes (#1313)
fix: Gated content bucket env var override (#1280)
fix: Change the library used in pytorch test causing cloudpickle version conflict (#1287)
fix: HMAC signing for ModelBuilder Triton python backend (#1282)
fix: do not delete temp folder generated by sdist (#1291)
fix: Do not require model_server if provided image_uri is a 1p image. (#1303)
fix: check image type vs instance type (#1307)
fix: unit test (#1315)
fix: Fixed model builder's register unable to deploy (#1323)
fix: missing `self._framework` in `InferenceSpec` path (#1325)
fix: enable xgboost integ test in our own pipeline (#1326)
fix: skip py310 (#1328)
fix: Update autodetect dlc logic (#1329)
Fix secret key in the Model object (#1334)
fix: improve error message (#1333)
Fix unit testing (#1340)
fix: Typing and formatting (#1341)
fix: WaiterError on failed pipeline execution. results() (#1337)
Fix tox identified errors (#1344)
Fix issue when the user runs in Python 3.11 (#1345)
fixes (#1346)
fix: use copy instead of move in bootstrap script (#1339)
Resolve keynote3 conflicts (#1351)
Resolve keynote3 conflicts v2 (#1353)
Fix conflicts (#1354)
Fix conflicts v3 (#1355)
fix: get whl from local to run integ tests (#1357)
fix: enable triton pt tests (#1358)
fix: integ test (#1362)
Fix Python 3.11 issue with dataclass decorator (#1345)
fix: remote function include_local_workdir default value (#1342)
fix: error message (#1373)
fixes (#1372)
fix: Remvoe PickleSerializer (#1378)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants