Generate directory listings for S3 statically hosted content.
Project description
bucket-dir
bucket-dir is a utility for generating a browsable directory tree for an AWS S3 bucket.
It was built in order to host Maven and Ivy repositories in S3 and serve them via CloudFront, but it could meet other needs too.
DISCLAIMER: This utility is the product of a time boxed spike. It should not be considered production ready. Use at your own risk.
Installation
The bucket-dir wheel is not currently hosted anywhere. You'll need to clone the repository. You then have two options.
Build and install a wheel
In order to install, first run make build
to produce a .whl
package. It will be created within a dist
folder.
Once you have built the wheel, setup a virtual environment with a version of python newer than 3.8 and install with:
pip install /path/to/repo/dist/bucket_dir-0.1.2-py3-none-any.whl
Use the local bucket-dir script
Instead of building, you can use the provided bucket-dir
script from the root of the repo. Keep in mind that you'll need to provide a path, e.g. ./bucket-dir --help
.
Usage
Run bucket-dir
with the name of the bucket you wish to index as a parameter:
bucket-dir foo-bucket
Use bucket-dir --help
for all arguments.
Be sure to provide the command with credentials that allow it to perform ListBucket and PutObject calls against the bucket. E.g. with aws-vault:
aws-vault exec foo-profile -- bucket-dir foo-bucket
Development
See the Makefile
and run the appropriate rules.
License
This code is open source software licensed under the Apache 2.0 License.
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 bucket_dir-0.4.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2f78f8b37d68e4cd8b2ef6e6f79548e45e5a3b4ec71b44149df518c29581818e |
|
MD5 | a583226ef1ae57b40a147806cc2af082 |
|
BLAKE2b-256 | 406b31ece46d95d734cd93dcb6a276090ad0b4a371b451c8242c8665f15c4472 |