kduma / s3-satis
Extends composer/satis with S3 support
Installs: 0
Dependents: 0
Suggesters: 0
Security: 0
Stars: 2
Watchers: 1
Forks: 0
Open Issues: 1
Type:project
Requires
- php: ^8.2
- composer/satis: 3.0.x-dev
- laravel-zero/framework: ^10.3
- league/flysystem-aws-s3-v3: ^3.22
- nunomaduro/termwind: ^1.15.1
- olvlvl/composer-attribute-collector: ^2.0.1
Requires (Dev)
- laravel/pint: ^1.13.7
README
Tool to generate a Composer PHP packages repository (based on Satis - static Composer repository generator) and synchronize generated repository with a Amazon S3 (or compatible) bucket.
Check full documentation here: opensource.duma.sh/systems/serverless-satis/s3-satis
Setup
You can install s3-satis
tool in four ways:
- As a Docker container -using image ghcr.io/kduma-oss/s3-satis
- Global composer installation - tool will be available globally as
s3-satis
command - You can download phar executable file from GitHub Releases page
- Download source code form GitHub to run
Usage
First prepare a satis.json
file with your repository configuration.
This tool is based on Satis - static Composer repository generator{:target="_blank"},
so please check Satis documentation{:target="_blank"}
for configuration options.
{ "name": "my/repo", "homepage": "https://satis.example.com", "repositories": [ { "type": "vcs", "url": "https://github.com/laravel/framework" } ], "require-all": true }
Second, configure your environment variables (or .env
file) with your S3 bucket credentials:
S3_ACCESS_KEY_ID= S3_SECRET_ACCESS_KEY= S3_REGION=us-east-1 S3_BUCKET= S3_ENDPOINT= S3_USE_PATH_STYLE_ENDPOINT=false
Then run s3-satis
tool to generate repository and upload it to S3 bucket:
s3-satis build satis.json