broker is a full repository proxy for composer. It takes a composer file, downloads all requirements and all dependencies, and then publishes a new repository with all these packages. Instead of packagist or satis, all packages, including dist and source filles will be served directly by broker.
Clone broker in a directory that is accessable by your webserver:
git clone git://github.com/researchgate/broker.git
Download composer inter broker's root directory:
cd broker
wget http://getcomposer.org/composer.phar
Install all dependecies of broker:
php composer.phar install
Currently broker has two cli commands available
-
With broker:add you can add a new repository based on a composer json file
php broker.php broker:add repository_name path/to/composer.json
-
With broker:remove you can remove an existing repository
php broker.php broker:remove repository_name
Broker also comes with a small web interface, that shows you all existing repositories and detailed information about the packages in it.
Just add the following repository reference to your project's composer.json file
"repositories":{
"packagist": false,
"repository_name": {
"composer": {
"url": "http://url/to/broker/repositories/repository_name"
}
}
},