gitbook-start-heroku-P8-josue-nayra
v0.1.2
Published
Plugin that lets users to deploy a gitbook in Heroku
Downloads
6
Readme
Práctica 8. Sistemas y Tecnologías Web
Passport-y-localstrategy-josue-nayra
El servidor proveído por el plugin (sea iaas o heroku) deberá autenticar que el lector del libro pertenece a una organización dada de GitHub (por ejemplo ULL-ESIT-SYTW-1617). Si es el caso que pertenece podrá seguir leyendo el libro, sino será redirigido a la ruta de autenticación.
Pasos a seguir para la utilización de los plugins
1- Descargar el paquete inicial: gitbook-start-josue-nayra
$ npm install -g gitbook-start-josue-nayra
2- Crear el libro mediante el comando:
$ gitbook-start -d <directorio> --autor <autor> --name <nombre_libro> --url <url_repo>
Se construye así la estructura inicial por gitbook-start, es decir, la jerarquía de directorios conteniendo los scripts y ficheros markdown para el libro.
3- Colocarse en la carpeta que contiene el libro.
$ cd <directorio en el que se ha desplegado el libro>
4- Instalar las dependencias necesarias mediante el comando:
$ npm install
5- Instalar el plugin requerido como dependendecia con la opción --save, como por ejemplo: gitbook-start-heroku-ull-es-josue-nayra para el despliegue en Heroku.
$ npm install --save gitbook-start-heroku-P8-josue-nayra
6- Es necesario tener el repositorio remoto actualizado. Para ello podemos ejecutar una de las tareas descritas en el gulpfile: gulp push --mensaje .
7- Nos logueamos en Heroku a través del siguiente comando:
$ heroku login
8- Ahora debemos asignarle un nombre a la aplicación de Heroku que se creará en el siguiente paso. Para ello accedemos al package.json y rellenamos la sección de Heroku:
"Heroku":{
"nombre_app": "nombre de la aplicación"
}
9- Para construir el libro disponemos de una tarea en el gulpfile denominada "build".
$ gulp build
10- Subir a Dropbox el archivo con nuestra base de datos con la siguiente estructura en formato JSON:
{
"users":[
{"username":"Josue", "password":"cacatua", "displayName":"Josue Toledo"},
//...
{"username":"Nayra", "password":"loro", "displayName":"Nayra Rodríguez"}
]
}
NOTA: En el caso de que por cualquier razón cambiemos nuestra base de datos en Dropbox, debemos modificar el link asociado al fichero de BD en Dropbox en nuestro archivo local '.secret.json' (sólo en el caso de que anteriormente hayamos hecho un "$gitbook-start --deploy heroku" y por lo tanto nuestro fichero ya tendrá variables de configuración, entre ellas el link de la BD.).
11- Una vez que hemos instalado el plugin de Heroku, ejecutamos el deploy:
$ gitbook-start --deploy heroku
Una vez ejecutado el comando anterior, se pedirá automáticamente por pantalla lo siguiente:
Token Dropbox. Introducir su token de Dropbox. En el siguiente enlace podemos obtener un token. Generar Token
Link Base de Datos. En la siguiente imagen se aprecia cómo se copia el enlace del fichero de BD en su Dropbox.
- Si se requiere autenticación.
12- Realizar el despliegue. Ahora el usuario podrá ejecutar el siguiente comando y se le actualizarán los cambios en el Gitbook desplegado en Heroku:
$ gulp deploy-heroku
Tareas Gulp
- push
Tarea habilitada para que el usuario pueda actualizar el repositorio que contiene el gitbook. Está disponible una opción --mensaje para especificar el mensaje del commit.
$ gulp push --mensaje <mensaje del commit>
- instalar_recursos
Tarea que permite al usuario instalar plugins y dependencias necesarias para su gitbook.
$ gulp instalar_recursos
- build
Tarea para la construcción del libro.
$ gulp build
- deploy
Tarea deploy genérica que actualiza las gh-pages del gitbook.
$ gulp deploy
- deploy-heroku
Tarea generada posteriormente a la realización y ejecución del comando gitbook-start --deploy, que permite al usuario realizar posteriores despliegues y actualizaciones de su gitbook en Heroku con gulp. Por ejemplo, en el caso de que el usuario despliegue en Heroku, después de haber desplegado con la opción gitbook-start --deploy heroku, en el gulpfile se generará una tarea con el nombre deploy-heroku.
$ gulp deploy-heroku
Enlaces
Referencias
Integrantes
- Josué Toledo Castro Github personal
- María Nayra Rodríguez Pérez Github personal