Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
A full proxy for composer repositories
PHP JavaScript
Branch: master

Merge pull request #23 from njam/issue-23

Deprecated method used: getLocalDevRepository
latest commit 32687e6986
@bashofmann bashofmann authored
Failed to load latest commit information.
assets initial commit
cache performance optimization: reuse the sources + prefer dists
src/rg/broker Replace deprecated `getLocalRepositories` with getLocalRepository`
.gitignore performance optimization: reuse the sources + prefer dists
.htaccess
LICENSE license information, updates for newest composer version
README.md
autoload.php
broker fixed bugs
broker.php added broker.php as a binary to composer.json + made autoloader more …
composer.json Update composer.json
config.php license information, updates for newest composer version
index.php Compatible with PHP built-in web server from now

README.md

broker

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.

Installation

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

Commands

Currently broker has two cli commands available

  • broker:add

    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
    
  • broker:remove

    With broker:remove you can remove an existing repository

      php broker.php broker:remove repository_name
    

Web Interface

Broker also comes with a small web interface, that shows you all existing repositories and detailed information about the packages in it.

Using a broker repository in your project

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"
    }
],
Something went wrong with that request. Please try again.