{"library":"snakemake-storage-plugin-s3","title":"Snakemake S3 Storage Plugin","type":"library","description":"The `snakemake-storage-plugin-s3` library provides a Snakemake storage plugin for interacting with S3-compatible object storage systems, including AWS S3, MinIO, and others. It allows Snakemake workflows to read and write files directly from/to S3 buckets using `s3://` URIs. The project is actively maintained with frequent bug fix releases, typically every few months, ensuring compatibility and robustness.","language":"python","status":"active","last_verified":"Mon May 18","install":{"commands":["pip install snakemake-storage-plugin-s3"],"cli":null},"imports":["This plugin is automatically discovered by Snakemake when installed, and is used via 's3://' URIs in your Snakefile, not by direct Python import of a specific class for usage."],"auth":{"required":false,"env_vars":[]},"links":{"homepage":null,"github":"https://github.com/snakemake/snakemake-storage-plugin-s3","docs":"https://snakemake.github.io/snakemake-plugin-catalog/plugins/storage/s3.html","changelog":null,"pypi":"https://pypi.org/project/snakemake-storage-plugin-s3/","npm":null,"openapi_spec":null,"status_page":null,"smithery":null},"quickstart":{"code":"# file: Snakefile\n\n# Set S3 credentials via environment variables for a runnable example\n# export AWS_ACCESS_KEY_ID=\"YOUR_ACCESS_KEY\"\n# export AWS_SECRET_ACCESS_KEY=\"YOUR_SECRET_KEY\"\n# export AWS_ENDPOINT_URL=\"http://localhost:9000\" # Optional, for MinIO or other S3-compatible storages\n\nrule all:\n    input: \"s3://my-test-bucket/output.txt\"\n\nrule generate_s3_file:\n    output: \"s3://my-test-bucket/output.txt\"\n    shell:\n        \"echo 'Hello Snakemake S3!' > {output}\"\n\n# To run this example:\n# 1. Ensure snakemake and snakemake-storage-plugin-s3 are installed.\n# 2. Set your S3 credentials (AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_REGION, etc.)\n#    or AWS_ENDPOINT_URL for compatible S3 services.\n# 3. Create 'my-test-bucket' in your S3 service.\n# 4. Navigate to the directory containing this Snakefile and run: snakemake","lang":"python","description":"This quickstart demonstrates how to use the S3 storage plugin in a `Snakefile`. Snakemake automatically recognizes `s3://` prefixes for input and output files when the plugin is installed. Ensure your S3 credentials are configured in your environment or via standard `boto3` configuration methods (e.g., `~/.aws/credentials`). For S3-compatible services like MinIO, `AWS_ENDPOINT_URL` is typically required.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":{"tag":null,"tag_description":null,"last_tested":"2026-05-18","installed_version":"0.2.1","pypi_latest":"0.3.6","is_stale":true,"summary":{"python_range":"3.10–3.9","success_rate":100,"avg_install_s":4.8,"avg_import_s":null,"wheel_type":"wheel"},"results":[{"runtime":"python:3.10-alpine","python_version":"3.10","os_libc":"alpine (musl)","variant":"snakemake-storage-plugin-s3","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"broken","install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":"52.2M"},{"runtime":"python:3.10-slim","python_version":"3.10","os_libc":"slim (glibc)","variant":"snakemake-storage-plugin-s3","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"broken","install_time_s":5.3,"import_time_s":null,"mem_mb":null,"disk_size":"53M"},{"runtime":"python:3.11-alpine","python_version":"3.11","os_libc":"alpine (musl)","variant":"snakemake-storage-plugin-s3","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"broken","install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":"56.6M"},{"runtime":"python:3.11-slim","python_version":"3.11","os_libc":"slim (glibc)","variant":"snakemake-storage-plugin-s3","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"broken","install_time_s":4.6,"import_time_s":null,"mem_mb":null,"disk_size":"57M"},{"runtime":"python:3.12-alpine","python_version":"3.12","os_libc":"alpine (musl)","variant":"snakemake-storage-plugin-s3","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"broken","install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":"48.1M"},{"runtime":"python:3.12-slim","python_version":"3.12","os_libc":"slim (glibc)","variant":"snakemake-storage-plugin-s3","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"broken","install_time_s":4.4,"import_time_s":null,"mem_mb":null,"disk_size":"49M"},{"runtime":"python:3.13-alpine","python_version":"3.13","os_libc":"alpine (musl)","variant":"snakemake-storage-plugin-s3","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"broken","install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":"47.8M"},{"runtime":"python:3.13-slim","python_version":"3.13","os_libc":"slim (glibc)","variant":"snakemake-storage-plugin-s3","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"broken","install_time_s":3.7,"import_time_s":null,"mem_mb":null,"disk_size":"48M"},{"runtime":"python:3.9-alpine","python_version":"3.9","os_libc":"alpine (musl)","variant":"snakemake-storage-plugin-s3","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"broken","install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":"51.6M"},{"runtime":"python:3.9-slim","python_version":"3.9","os_libc":"slim (glibc)","variant":"snakemake-storage-plugin-s3","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"broken","install_time_s":5.8,"import_time_s":null,"mem_mb":null,"disk_size":"52M"}]}}