Skip to content

Add s3_upload tool for S3-compatible file uploads - #192

Draft
frival wants to merge 1 commit into
mainfrom
191-add-a-tool-to-upload-pcp-archive-plus-more-to-s3
Draft

Add s3_upload tool for S3-compatible file uploads#192
frival wants to merge 1 commit into
mainfrom
191-add-a-tool-to-upload-pcp-archive-plus-more-to-s3

Conversation

@frival

@frival frival commented Jun 5, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Adds s3_upload, a Python 3 tool (zero external dependencies) for uploading files to S3-compatible storage services (AWS S3, MinIO, Ceph, etc.)
  • Supports two mutually exclusive auth methods: username/password (AWS Signature V4) and access token (Bearer)
  • Credentials can be passed via CLI args or environment variables (S3_USERNAME, S3_PASSWORD, S3_ACCESS_TOKEN)
  • Outputs the uploaded file URL to stdout and logs timestamped entries to a configurable log file (/tmp/s3_upload.log by default) for use by subsequent tools
  • Updates README.md with full documentation and error_codes comment

Test plan

  • Verify --help displays usage information
  • Verify mutual exclusivity of --username and --access-token (CLI and env var)
  • Verify --password is required when --username is provided
  • Verify file-not-found error handling
  • Test upload to an S3-compatible endpoint (e.g. MinIO) with username/password
  • Test upload to an S3-compatible endpoint with access token
  • Verify uploaded file URL is printed to stdout
  • Verify log file is written with timestamp and URL
  • Verify environment variable fallback works when CLI args are omitted

🤖 Generated with Claude Code

Python 3 tool (no external dependencies) supporting AWS Signature V4
(username/password) and Bearer token authentication, with credential
input via CLI args or environment variables.

Assisted-by: Claude Code
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@frival frival linked an issue Jun 5, 2026 that may be closed by this pull request
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add a tool to upload PCP archive (plus more?) to S3

1 participant