Skip to main content

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:

  1. Create a new GitHub issue or find one to work on
  2. Assign the issue to yourself
  3. Fork project, make changes, get reviewed by Dell project maintainer
  4. 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

  1. install objectscale python package using pip install
  2. install pipdeptree using pip install
  3. run command 'pipdeptree -p obs-s3-client'
  4. dependency tree should be displayed

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

objectscale_s3_client-1.0.0.tar.gz (12.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

objectscale_s3_client-1.0.0-py3-none-any.whl (11.9 kB view details)

Uploaded Python 3

File details

Details for the file objectscale_s3_client-1.0.0.tar.gz.

File metadata

  • Download URL: objectscale_s3_client-1.0.0.tar.gz
  • Upload date:
  • Size: 12.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.7

File hashes

Hashes for objectscale_s3_client-1.0.0.tar.gz
Algorithm Hash digest
SHA256 1223cb202d1fa9da5baf421aad5673822e785500431d84b2bfdc1c46607f26ed
MD5 34f379bc6803cd4edda3081fb2469e17
BLAKE2b-256 8e7e39cb38f99dc614f0bec0cc92286df951371ddfc3e271a046fefce0e28444

See more details on using hashes here.

File details

Details for the file objectscale_s3_client-1.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for objectscale_s3_client-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 7ec9b8b7545594de089d95bdad7475b6f66f43f5f65005ed78ef1e9a6bf059cc
MD5 d34d1cabc09db02012b3793ecb891b9a
BLAKE2b-256 631e9800f11ac93b55050f3dcd89cb6801a3503a6f272bed898757c053e10949

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page