An abstraction architecture for supporting multiple object-storage systems within HySDS
Osaka is an object storage abstraction system allowing a user to push generic file objects to various backend storage systems. It was designed to abstract the technological specifics of supporting multiple object stores for the HySDS ecosystem. These different backends are selected based on the scheme element of the URI for the file object, thus can be enacted automatically. As a minimum requirement, Osaka must have one endpoint that exists on a local file system.
- Push ability to multiple object-storage systems
- Compatibility with HySDS
- [INSERT LIST OF FEATURES IMPORTANT TO YOUR USERS HERE]
Schemes | Push Implemented | Pull Implemented | Tested | Notes: |
---|---|---|---|---|
file:// , none |
Yes | Yes | Yes | |
s3:// , s3s:// |
Yes | Yes | Yes | |
dav:// , davs:// |
Yes | Yes | Yes | |
http:// , https:// |
Yes | Yes | Yes | |
azure:// , azures:// |
Yes | Yes | Yes | Experimental version by NVG |
ftp:// , sftp:// |
No | No | No | Needs re-implementation |
rsync:// |
No | No | No | Not a backend, but a transfer mechanism |
- Python 3
- Access to an object-storage system (e.g. Amazon AWS S3)
- [INSERT LIST OF REQUIREMENTS HERE]
- [INSERT STEP-BY-STEP SETUP INSTRUCTIONS HERE]
- [INSERT STEP-BY-STEP RUN INSTRUCTIONS HERE, WITH OPTIONAL SCREENSHOTS]
- [INSERT LIST OF COMMON USAGE EXAMPLES HERE, WITH OPTIONAL SCREENSHOTS]
Osaka has test scripts available here
- [INSERT STEP-BY-STEP TEST INSTRUCTIONS HERE, WITH OPTIONAL SCREENSHOTS]
See our releases page for our key versioned releases.
No questions yet. Propose a question to be added here by reaching out to our contributors! See support section below.
- Create an GitHub issue ticket describing what changes you need (e.g. issue-1)
- Fork this repo
- Make your modifications in your own fork
- Make a pull-request in this repo with the code in your fork and tag the repo owner / largest contributor as a reviewer
Working on your first pull request? See guide: How to Contribute to an Open Source Project on GitHub
See our: LICENSE
See our: contributors
Key points of contact are: @pymonger