Skip to main content

bbuploadmanager

bbuploadmanager is an easy python library which manages all uploading, downloading, state management functionality and multiple scenarios of our Uploads & Processing of you project.

Features

  • Uploading file to AWS S3
  • Reading uploaded file content from AWS S3
  • Upload Processing state management
  • Upload Manager Dashboard
  • Upload tracking

Installation

pip install https://github.com/Bigbasket/bbuploadmanager

OR

pip install upload-manager

Prerequisite

  • Python 3 and above
  • Django 2.1 and above

Environment

AWS_STORAGE_BUCKET_NAME

  • variable need to be set in environment to specify aws bucket.

AWS_ACCESS_KEY_ID & AWS_SECRET_ACCESS_KEY

  • variable need to be set in environment, Only if I Am Role is not enabled on the machine.

Sample Code

# Library Plugin code to be added in settings.py
INSTALLED_APPS = ["upload_manager.apps.UploadManagerConfig"]

# Below code to be implementation in your application.py\
# imports
from upload_manager.service import UploadManagerService

# file upload example
upload_service = UploadManagerService(<upload_name>, <username>, <S3_bucket_path>, files=[<file_obj>,])
upload_obj = upload_service.start_upload()

# reading uploaded file data in async thread
file_data = UploadManagerService.get_upload_content_for_id(upload_obj.id)

# writing response file example
upload_service.file_content = [("OrderId", "Status", "Message"),(11020304, "Success", "")]
upload_service.update_response_for_upload(upload_obj_id)

# updating upload status example
UploadManagerService.change_upload_status_to_inprocess(upload_obj.id)
UploadManagerService.change_upload_status_to_complete(upload_obj.id)
UploadManagerService.change_upload_status_to_failed(upload_obj.id)`

Dashboard View

Above image shows dashboard view, how the uploads can be viewed and tracked in django Admin.

  • Request File - Column contains a hyperlink to the uploaded file which was uploaded as part of start upload
  • Response File - Column contains a hyperlink to the uploaded response file was uploaded after the processing.

Release files for upload-manager 1.3.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for upload-manager 1.3.0
File Size Uploaded
upload_manager-1.3.0.tar.gz 147.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for upload-manager 1.3.0
File Interpreter ABI Platform
upload_manager-1.3.0-py3-none-any.whl Python 3 none any Details

Total release size: 159.2 kB

Release files / upload_manager-1.3.0.tar.gz

Download URL upload_manager-1.3.0.tar.gz
Size 147.3 kB
Tags Source
SHA-256 checksum
How to use checksums
559246af3f280aa71c92e4ee5dc20fc0fb2192fcd287111845bd3894a172343d
BLAKE2b-256 checksum
How to use checksums
1ba06c77cf5266456c8747a9d2bb2349cea55922037859fbc89f83b8f34c5b5b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.4

Release files / upload_manager-1.3.0-py3-none-any.whl

Download URL upload_manager-1.3.0-py3-none-any.whl
Size 11.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ce26f0c6f94880ae2388b893cb80127323b832bab3d3b96d96f0aa9253169908
BLAKE2b-256 checksum
How to use checksums
a234228d0b7ce253d2df44ba005311b17593bbce8405ca0f6eabb7d787c7391a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.4

Release history Release notifications | RSS feed

This release

1.3.0 This release

2 release files

1.2.0

1 release file

1.1.1

2 release files

1.1.0

2 release files

1.0.0

2 release files

0.0.2

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page