class_docstr: Interact with Amazon SageMaker.
  
  Provide thick wrapper around
  :external+boto3:py:class:`boto3.client("sagemaker") <SageMaker.Client>`.
  
  Additional arguments (such as ``aws_conn_id``) may be specified and
  are passed down to the underlying AwsBaseHook.
  
  .. seealso::
      - :class:`airflow.providers.amazon.aws.hooks.base_aws.AwsBaseHook`
class_docstr_tok: ["Interact","with","Amazon","SageMaker",".","Provide","thick","wrapper","around",":","external+boto3",":","py",":","class",":","`","boto3.client","(","``","sagemaker","''",")","<","SageMaker.Client",">","`",".","Additional","arguments","(","such","as","``","aws_conn_id","``",")","may","be","specified","and","are","passed","down","to","the","underlying","AwsBaseHook",".","..","seealso",":",":","-",":","class",":","`","airflow.providers.amazon.aws.hooks.base_aws.AwsBaseHook","`"]
docstr: Extract the S3 operations from the configuration and execute them.
  
  :param config: config of SageMaker operation
code: def configure_s3_resources(self, config: dict) -> None:
      """Extract the S3 operations from the configuration and execute them.
  
      :param config: config of SageMaker operation
      """
      s3_operations = config.pop("S3Operations", None)
  
      if s3_operations is not None:
          create_bucket_ops = s3_operations.get("S3CreateBucket", [])
          upload_ops = s3_operations.get("S3Upload", [])
          for op in create_bucket_ops:
              self.s3_hook.create_bucket(bucket_name=op["Bucket"])
          for op in upload_ops:
              if op["Tar"]:
                  self.tar_and_s3_upload(
                      op["Path"], op["Key"], op["Bucket"]
                  )
              else:
                  self.s3_hook.load_file(
                      op["Path"], op["Key"], op["Bucket"]
                  )
  
imports: from __future__ import annotations
  import os
  import re
  import tarfile
  import tempfile
  import time
  import warnings
  from collections import Counter, namedtuple
  from datetime import datetime
  from functools import partial
  from typing import Any, Callable, Generator, cast
  from botocore.exceptions import ClientError
  from airflow.exceptions import AirflowException, AirflowProviderDeprecationWarning
  from airflow.providers.amazon.aws.hooks.base_aws import AwsBaseHook
  from airflow.providers.amazon.aws.hooks.logs import AwsLogsHook
  from airflow.providers.amazon.aws.hooks.s3 import S3Hook
  from airflow.providers.amazon.aws.utils.tags import format_tags
  from airflow.utils import timezone
label_desc: Use image node_id 3 for calling the SageMakerHook obj's underlying member method code with example usage: obj.configure_s3_resources(config) without return types