Metadata-Version: 2.4
Name: s3-pypi-manager
Version: 1.0.0
Summary: A CLI tool to manage a PEP 503-compliant simple Python package repository hosted in AWS S3
Author-email: S3 PyPI Manager <admin@example.com>
License: MIT
Project-URL: Homepage, https://github.com/example/s3-pypi-manager
Project-URL: Repository, https://github.com/example/s3-pypi-manager
Project-URL: Issues, https://github.com/example/s3-pypi-manager/issues
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Requires-Python: >=3.9
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: boto3>=1.26.0
Requires-Dist: click>=8.0.0
Requires-Dist: jinja2>=3.1.0
Requires-Dist: packaging>=21.0
Provides-Extra: dev
Requires-Dist: pytest>=7.0.0; extra == "dev"
Requires-Dist: pytest-cov>=4.0.0; extra == "dev"
Requires-Dist: pytest-mock>=3.10.0; extra == "dev"
Requires-Dist: moto[s3]>=5.0.0; extra == "dev"
Requires-Dist: black>=23.0.0; extra == "dev"
Requires-Dist: flake8>=6.0.0; extra == "dev"
Requires-Dist: mypy>=1.0.0; extra == "dev"
Requires-Dist: ruff>=0.1.0; extra == "dev"
Requires-Dist: python-dotenv>=1.1.1; extra == "dev"
Provides-Extra: test
Requires-Dist: pytest>=7.0.0; extra == "test"
Requires-Dist: pytest-cov>=4.0.0; extra == "test"
Requires-Dist: pytest-mock>=3.10.0; extra == "test"
Requires-Dist: moto[s3]>=5.0.0; extra == "test"
Requires-Dist: python-dotenv>=1.1.1; extra == "test"
Dynamic: license-file

# S3 PyPI Manager

A command-line tool to manage a PEP 503-compliant simple Python package repository hosted in AWS S3.

## Installation

```bash
pip install s3-pypi-manager
```

## Usage

Set your S3 bucket parameters either via environment variable or command-line option:

```bash
export S3_PYPI_BUCKET=my-pypi-bucket
export S3_PYPI_AWS_ACCESS_SECRET_KEY=key
export S3_PYPI_AWS_KEY_ID=token
export S3_PYPI_AWS_REGION=region
```

### Initialize Repository

```bash
s3pypi init
# or
s3pypi --bucket my-pypi-bucket init
```

### Add Package

```bash
s3pypi add path/to/package.whl
s3pypi add path/to/package.tar.gz
```

### Yank Package

```bash
s3pypi yank package-name 1.0.0
```

### Rebuild Index

```bash
s3pypi rebuild-index
```

## Requirements

-   Python 3.9+
-   AWS credentials configured (via AWS CLI, environment variables, or IAM roles)
-   S3 bucket with appropriate permissions

## License

MIT License
