Open-source S3 client library in python to support ObjectScales proprietary S3 extensions
Project description
objectscale-s3-client-python
ObjectScale S3 Client for Python (based on boto3)
Link to Project Management Software: https://app.clickup.com/14398002/v/l/7-14398002-1
Project summary
This is a library developed for Dell Technologies extending the boto3 Python library for metadata search calls.
The library takes existing S3 API calls designed for boto3 and implements new search indexes for metadata search functionality. It also generates new S3 API calls with metadata search functionality. A stretch goal for the project is implementation of client-side load balancing to improve preformance of the boto3 library.
Installation
The library will be accessible through PyPI. Project information can be seen here:
Prerequisites
Python is neccessary to have installed before using the library. The project will function with Python versions past Python 3.9. If the user wants to contribute to the project, Git will also be neccessary. As this library extends the existing boto3 and botocore libraries, these are also necessary prerequisites.
Installation Steps
The package can be installed through pip, which comes with the installation of Python. Installation of the package can be done by simply executing the following command:
pip install PyscaleS3
Functionality
High-level functionality described in summary info. As the product is being developed this section will be updated with more specific info.
TODO: Write usage instructions. Structuring it as a walkthrough can help structure this section, and showcase your features.
Known Problems
As the product is being developed, this section will be updated with known bugs.
TODO: Describe any known issues, bugs, odd behaviors or code smells. Provide steps to reproduce the problem and/or name a file or a function where the problem lives.
Contributing
Contributions to the project are welcomed. Outline of steps for contributions are given below:
- Create a new GitHub issue or find one to work on
- Assign the issue to yourself
- Fork project, make changes, get reviewed by Dell project maintainer
- DCO sign off
Additional details for these requirements can be found in the CONTRIBUTING.md
file in the project repository.
Additional Documentation
The documentation module Sphinx was used for documenting the code. This documentation can be accessed through the earlier linked github code.
How to Generate Documentation
The documentation can be generated using the following script.
git checkout gh-pages
git rm -rf .
git checkout main -- docs
make html
git add .
git commit -s -m "updated docs"
git push
The script checks out the orphan gh-pages branch, removes all existing files, then copies the updated docs in the main branch. "make html" generates the new documentation and the final commands push the updates to github.
License
This project uses the Apache License. The license can be viewed in the LICENSE
file in the project repository.
Finding Dependencies of package
- install objectscale python package using pip install
- install pipdeptree using pip install
- run command 'pipdeptree -p obs-s3-client'
- dependency tree should be displayed
Project details
Release history Release notifications | RSS feed
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
Hashes for objectscale_s3_client-1.0.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1223cb202d1fa9da5baf421aad5673822e785500431d84b2bfdc1c46607f26ed |
|
MD5 | 34f379bc6803cd4edda3081fb2469e17 |
|
BLAKE2b-256 | 8e7e39cb38f99dc614f0bec0cc92286df951371ddfc3e271a046fefce0e28444 |
Hashes for objectscale_s3_client-1.0.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7ec9b8b7545594de089d95bdad7475b6f66f43f5f65005ed78ef1e9a6bf059cc |
|
MD5 | d34d1cabc09db02012b3793ecb891b9a |
|
BLAKE2b-256 | 631e9800f11ac93b55050f3dcd89cb6801a3503a6f272bed898757c053e10949 |