Como agregar un repositorio privado de github a nuestro proyecto utilizando composer para manejar los repositorios usando el token oauth.
Hace poco que tengo algunos proyectos privados en GitHub ya que estaba bastante acostumbrado a usar Bitbucket para esto. La razón de la migración es que había tenido problemas con la carga de las librerías privadas usando Composer desde Bitbucket así que le di una oportunidad a GitHub.
Para los que no saben Composer es repositorio de librerías para php que maneja las dependencias de tus proyectos. Es bastante útil para no reusar código y manejar las actualizaciones de todas tus aplicaciones simplemente con un «Update».
De manera simple se crea un archivo composer.json en donde está la información básica del proyecto y sus dependencias.
Para poder agregar un repositorio privado necesitamos lo siguiente.
- Generar el Token para el acceso desde GitHub
- Crear el composer.json que usará el repositorio privado
- Agregar nuestro token.
- Installar las dependencias.
Generando el token de acceso.
Fuente : https://help.github.com/articles/creating-an-access-token-for-command-line-use/
- Una vez ingresado a tu dashboard de GitHub selecciona tu foto de perfil en la esquina superior derecha y en el menú que aparece haz click en Settings.
- Una vez en Settings hacemos click en «Personal Access Tokens»
- Creamos un nuevo token dándole el nombre y los permisos correspondientes.
- Guardamos el token recién creado.
Generando un composer.json mínimo.
{ "repositories": [ { "type": "vcs", "url": "[email protected]:NAITUSEIRL/NOMBRELIBRERIA.git" } ], "require": { "ctala/NOMBRELIBRERIA": "dev-master" } }
En el ejemplo anterior simplemente agregamos el repositorio privado que usaremos. Cuando se específica el tipo de repositorio VCS se hace para que se detecte automáticamente a que tipo de repositorio corresponde.
Es importante usar la notación de ssh (git@github) y no de https para la dirección del repositorio o este simplemente no funcionará.
Agregando el token a la configuración.
Agregar el token es bastante sencillo debido a que Composer ya tiene una herramienta que nos ayuda para esto. En este caso simplemente ejecutamos :
$ composer config -g github-oauth.github.com TOKENBASTANTELARGO
Esto permite que podamos acceder al repositorio privado agregado anteriormente con el access token.
Finalizando.
Ya teniendo todo en orden nos vamos a nuestra carpeta en donde tenemos nuestro composer.json y simplemente ejecutamos la instalación de las librerías.
$ composer install
Si todo salio bien se descargarán todas las librerías de dependencia incluyendo la privada que especificamos en el repositorio.