1.0.0 • Published 5 years ago

pausa-user2csv v1.0.0

Weekly downloads
1
License
ISC
Repository
-
Last release
5 years ago

USERS2CSV

Este pequeño script de javascript facilitará la generación de reportes en formato csv de todos los usuarios de la aplicación, transforma las amplias solicitudes a firebase a través de una paginación interna y lo parsea a un json que pueda ser manejado por la librería json2csv.

INSTALACIÓN

Para instalar esta utilidad es necesario que lo agregues como una dependencia global a través de NPM.

# Instalación como dependencia global
$ npm install -g pausa-users2csv -s 

Algunas de nuestras dependencias requiren Node v6 o superior, pero el codigo de el proyecto solo ha sido probado bajo Node v10.

CLI

users2csv esta programado solo para ser usado desde la consola de comandos

Uso: users2csv [options]

Options:
  -V, --version            output the version number
  -c --credentials <path>  Path and name of the json file of credentials for firebase-admin SDK (Service Account Key)
  -d --database <url>      Url of the firebase database for the connection
  -r --reference <path>    Path to the reference that you want to pull (default: "users")
  -p --pages <limit>       Define the max amount of pages to iterate (default: null)
  -q --quantity <size>     Define the amount of results per page in the iteration (default: 5)
  -o --output <path>       Define the path of the output file to write the csv in (default: "users.csv")
  -s --separator <char>    Defines the separator for the values of the csv file (default: ",")
  -h, --help               output usage information

Antes de empezar asegurate de descargar el Service Account Key en formato JSON de la cuenta de firebase e indica el path a este archivo con la opción -c. Si no se especifica una cantidad de paginas máxima con -p, por defecto se recorreran todas las páginas que existan dentro de la base de datos.

Uso

# Uso sencillo
$ users2csv -c local/service.json -d database.firebaseio.com

# Modifica el archivo de salida y el separador (para compatibilidad con windows Excel por ejemplo)
$ users2csv -c local/service.json -d database.firebaseio.com -o desktop/myusersreport.csv -s ;

# Establece un limite de paginas a recorrer
$ users2csv -c local/service.json -d database.firebaseio.com -p 5
# También puedes modificar cuantos registros se solicitaran por pagina. Selecciona una cantidad 
# razonable que haga el proceso más rapido pero sin teniendo en cuanto las limitaciones de el equipo
# en donde se ejecuta el script.
$ users2csv -c local/service.json -d database.firebaseio.com -p 5 -q 2000

# Si es necesario en algún momento modificar la referencia de la base de datos a la que apuntan las
# consultas puedes hacerlo con la opción -r
$ users2csv -c local/service.json -d database.firebaseio.com -r usersnuevos
# NOTA: ten en cuenta que estas referencias se intentarán parsear por lo que los registros debe poseer
# una estructura compatible con la estructura de usuarios esperada.