Note: this project is not actively maintained anymore. Since satis supports a similar functionality now, you should use satis instead.
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 files will be served directly by broker.
Clone broker in a directory that is accessible by your webserver:
git clone git://github.com/researchgate/broker.git
Download composer into broker's root directory:
cd broker
wget http://getcomposer.org/composer.phar
Install all dependencies 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
},
{
"type": "composer",
"url": "http://url/to/broker/repositories/repository_name"
}
],