:py:mod:`aws_codeseeder.services.s3` ==================================== .. py:module:: aws_codeseeder.services.s3 Module Contents --------------- Functions ~~~~~~~~~ .. autoapisummary:: aws_codeseeder.services.s3.copy_s3_object aws_codeseeder.services.s3.delete_bucket aws_codeseeder.services.s3.delete_bucket_by_prefix aws_codeseeder.services.s3.delete_objects aws_codeseeder.services.s3.is_bucket_empty aws_codeseeder.services.s3.list_keys aws_codeseeder.services.s3.list_s3_objects aws_codeseeder.services.s3.object_exists aws_codeseeder.services.s3.upload_file Attributes ~~~~~~~~~~ .. autoapisummary:: aws_codeseeder.services.s3.ChunkifyItemType .. py:function:: copy_s3_object(src_bucket: str, src_key: str, dest_bucket: str, dest_key: str, session: Optional[Union[Callable[[], boto3.Session], boto3.Session]] = None) -> None Copy an S3 Object to another bucket :param src_bucket: Source S3 Bucket :type src_bucket: str :param src_key: Source Key :type src_key: str :param dest_bucket: Destination S3 Bucket :type dest_bucket: str :param dest_key: Destination Key :type dest_key: str :param session: Optional Session or function returning a Session to use for all boto3 operations, by default None :type session: Optional[Union[Callable[[], Session], Session]], optional .. py:function:: delete_bucket(bucket: str, session: Optional[Union[Callable[[], boto3.Session], boto3.Session]] = None) -> None Delete an S3 Bucket :param bucket: S3 Bucket Name :type bucket: str :param session: Optional Session or function returning a Session to use for all boto3 operations, by default None :type session: Optional[Union[Callable[[], Session], Session]], optional :raises ex: If error other that NoSuchBucket .. py:function:: delete_bucket_by_prefix(prefix: str, session: Optional[Union[Callable[[], boto3.Session], boto3.Session]] = None) -> None Delete S3 Buckets whose name begins with a prefix :param prefix: Prefix to filter Buckets by :type prefix: str :param session: Optional Session or function returning a Session to use for all boto3 operations, by default None :type session: Optional[Union[Callable[[], Session], Session]], optional .. py:function:: delete_objects(bucket: str, keys: Optional[List[str]] = None, session: Optional[Union[Callable[[], boto3.Session], boto3.Session]] = None) -> None Delete objects from an S3 Bucket :param bucket: S3 Bucket name :type bucket: str :param keys: List of keys to delete, all if None, by default None :type keys: Optional[List[str]], optional :param session: Optional Session or function returning a Session to use for all boto3 operations, by default None :type session: Optional[Union[Callable[[], Session], Session]], optional .. py:function:: is_bucket_empty(bucket: str, folder: str, session: Optional[Union[Callable[[], boto3.Session], boto3.Session]] = None) -> bool Checks if there is any file in a specified folder within an S3 bucket. Parameters: - bucket: The name of the S3 bucket. - folder: The name of the folder inside the bucket. Returns: - False if the folder contains files, True otherwise. .. py:function:: list_keys(bucket: str, session: Optional[Union[Callable[[], boto3.Session], boto3.Session]] = None) -> List[Dict[str, str]] List the keys/objects in an S3 Buket :param bucket: S3 Bucket name :type bucket: str :param session: Optional Session or function returning a Session to use for all boto3 operations, by default None :type session: Optional[Union[Callable[[], Session], Session]], optional :returns: List of Keys and VersionIds :rtype: List[Dict[str, str]] .. py:function:: list_s3_objects(bucket: str, prefix: str, session: Optional[Union[Callable[[], boto3.Session], boto3.Session]] = None) -> Dict[str, Any] List S3 objects in a Bucket filtered to a prefix :param bucket: S3 Bucket name :type bucket: str :param prefix: Prefix filter :type prefix: str :param session: Optional Session or function returning a Session to use for all boto3 operations, by default None :type session: Optional[Union[Callable[[], Session], Session]], optional :returns: List of objects :rtype: Dict[str, Any] .. py:function:: object_exists(bucket: str, key: str, session: Optional[Union[Callable[[], boto3.Session], boto3.Session]] = None) -> bool Check for existence of an object in an S3 Bucket :param bucket: S3 Bucket name :type bucket: str :param key: Key to ckeck :type key: str :param session: Optional Session or function returning a Session to use for all boto3 operations, by default None :type session: Optional[Union[Callable[[], Session], Session]], optional :returns: Indicator of object existence :rtype: bool .. py:function:: upload_file(src: str, bucket: str, key: str, session: Optional[Union[Callable[[], boto3.Session], boto3.Session]] = None) -> None Upload file to S3 Bucket :param src: Local source file :type src: str :param bucket: S3 Bucket :type bucket: str :param key: Key name to upload to :type key: str :param session: Optional Session or function returning a Session to use for all boto3 operations, by default None :type session: Optional[Union[Callable[[], Session], Session]], optional .. py:data:: ChunkifyItemType