Created
February 13, 2015 18:54
-
-
Save fontenele/ed831f2febf5b88d5efd to your computer and use it in GitHub Desktop.
Como criar um servidor Composer privado para hospedar seus projetos/componentes
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Vamos criar um servidor Composer privado utilizando nossos repositórios svn como componentes/projetos. | |
Vamos usar como exemplo o caminho: /var/www/composer-server | |
URL do nosso server: http://composer.meuhost.com.br:4680 | |
E os componentes/projetos: | |
http://svn.meuhost.com.br/gerador-pdf/trunk | |
http://svn.meuhost.com.br/rest-client/trunk | |
https://github.com/Seldaek/monolog/ | |
################# | |
Primeiro vamos criar um diretório para hospedar nossos pacotes. Vamos usar como exemplo o diretório "/var/www/composer-server": | |
$ cd /var/www | |
$ mkdir composer-server | |
$ cd composer-server | |
Depois você deve baixar o Composer | |
$ curl -sS https://getcomposer.org/installer | php | |
Em seguida baixar e criar um projeto Satis | |
$ php composer.phar create-project composer/satis --stability=dev --keep-vcs | |
Após instalar o Satis, você deve criar um arquivo de configuração para seu repositório. | |
Mas antes, vamos em todos os nossos repositórios svn criar seus respectivos composer.json | |
Dentro de cada repositório (componente/projeto) svn que você deseja adicionar ao seu server, você deve criar um arquivo chamado composer.json com o seguinte conteúdo: | |
Dentro de http://svn.meuhost.com.br/gerador-pdf/trunk/composer.json: | |
{ | |
"name": "fontenele/gerador-pdf" | |
} | |
Dentro de http://svn.meuhost.com.br/rest-client/trunk/composer.json: | |
{ | |
"name": "fontenele/rest-client" | |
} | |
Agora já demos nomes aos nossos repositórios, vamos comitar os composer.json que editamos e vamos prosseguir. | |
Na raiz do seu servidor (/var/www/composer-server), criar um arquivo de config json para o Satis. | |
Vamos usar como exemplo o nome "fontenele-packages.json" com o seguinte conteúdo: | |
{ | |
"name": "Fontenele", | |
"homepage": "http://composer.meuhost.com.br:4680", | |
"repositories": [ | |
{ "type": "vcs", "url": "http://svn.meuhost.com.br/gerador-pdf/trunk/" }, | |
{ "type": "vcs", "url": "http://svn.meuhost.com.br/rest-client/trunk/" }, | |
{ "type": "vcs", "url": "https://github.com/Seldaek/monolog/" }, | |
], | |
"archive": { "directory": "dist" }, | |
"require": { | |
"fontenele/gerador-pdf": ">=dev-trunk", | |
"fontenele/rest-client": ">=dev-trunk", | |
"monolog/monolog": ">=1.12.0", | |
} | |
} | |
Agora vamos finalmente criar o projeto Satis com o seguinte comando: | |
$ mkdir projetos | |
$ php bin/satis build fontenele-packages.json projetos/fontenele | |
Por último vamos inicializar um virtualhost ou standalone | |
$ php -S composer.meuhost.com.br:4680 -t projetos/fontenele | |
Para ver se funcionou tente abrir no browser a URL "http://composer.meuhost.com.br:4680" | |
Se deu certo vai abrir uma página com os repositórios adicionados listados e um arquivo exemplo de um composer.json para criação de um projeto novo onde serão usados esses repositórios do seu novo server. | |
Para testar, em um novo diretório avulso, com o composer.phar dentro, crie o composer.json com o seguinte conteúdo: | |
{ | |
"repositories": [ | |
{ | |
"type": "composer", | |
"url": "http://composer.meuhost.com.br:4680" | |
} | |
], | |
"require": { | |
"fontenele/gerador-pdf": "dev-trunk", | |
"fontenele/rest-client": "dev-trunk" | |
} | |
} |
Muito bacana.
obrigado por compartilhar!
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Mandou bem Biba!
muito útil!