Upload manager
Project description
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.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file upload_manager-1.3.0.tar.gz.
File metadata
- Download URL: upload_manager-1.3.0.tar.gz
- Upload date:
- Size: 147.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
559246af3f280aa71c92e4ee5dc20fc0fb2192fcd287111845bd3894a172343d
|
|
| MD5 |
9ff25c8dcbfe01bd0a2b4bb0325d9d93
|
|
| BLAKE2b-256 |
1ba06c77cf5266456c8747a9d2bb2349cea55922037859fbc89f83b8f34c5b5b
|
File details
Details for the file upload_manager-1.3.0-py3-none-any.whl.
File metadata
- Download URL: upload_manager-1.3.0-py3-none-any.whl
- Upload date:
- Size: 11.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ce26f0c6f94880ae2388b893cb80127323b832bab3d3b96d96f0aa9253169908
|
|
| MD5 |
201123df9648008e3b346f8698779f83
|
|
| BLAKE2b-256 |
a234228d0b7ce253d2df44ba005311b17593bbce8405ca0f6eabb7d787c7391a
|