terminated - Error al implementar con firebase en npm--prefix $ RESOURCE_DIR run lint
npm-- prefix resource_dir run lint error (8)
Está funcionando, mi función en la nube se implementa con éxito
"functions": {
"predeploy": [
"npm --prefix /"%RESOURCE_DIR%/" run lint",
"npm --prefix /"%RESOURCE_DIR%/" run build"
],`enter code here`
"source": "functions"
Tengo una nueva instalación de herramientas firebase (siguiendo este tutorial ) y estoy tratando de cargar mi primera función firebase. Me sale este problema con el ejemplo de hello-world que se inicializan cuando ejecutas firebase init (solo configura la función CLI de funciones durante el init)
Si reemplazo
$RESOURCE_DIR
en
firebase.json
con mi carpeta de funciones, funciona, pero, por supuesto, es una mala práctica y me gustaría encontrar un reemplazo adecuado de
$RESOURCE_DIR
que funcione.
PS D:/workspace/firebase-functions> firebase deploy
=== Deploying to ''newagent-5221d''...
i deploying functions
Running command: npm --prefix $RESOURCE_DIR run lint
npm ERR! path D:/workspace/firebase-functions/$RESOURCE_DIR/package.json
npm ERR! code ENOENT
npm ERR! errno -4058
npm ERR! syscall open
npm ERR! enoent ENOENT: no such file or directory, open ''D:/workspace/firebase-functions/$RESOURCE_DIR/package.json''
npm ERR! enoent This is related to npm not being able to find a file.
npm ERR! enoent
npm ERR! A complete log of this run can be found in:
npm ERR! C:/Users/dtlut/AppData/Roaming/npm-cache/_logs/2018-01-19T15_57_22_990Z-debug.log
Error: functions predeploy error: Command terminated with non-zero exit code4294963238
Intente reemplazar $ RESOURCE_DIR con% RESOURCE_DIR% en su archivo
firebase.json
.
Modifique en firebase.json de "
npm --prefix $RESOURCE_DIR run lint
" a "
npm --prefix %RESOURCE_DIR% run lint
"
Quiere limitar sus funciones en la nube, lo que significa que verificará su código en busca de errores obvios, como un lenguaje compilado arrojaría errores en el momento de la compilación.
No es necesario, siempre puede eliminarlo yendo a firebase.json y actualizando functions.predeploy para que sea una matriz vacía.
"functions": {
"predeploy": [],
"source": "functions"
}
busque el archivo firebase.json y luego cambie estas líneas
"npm --prefix /"$RESOURCE_DIR/" run lint",
"npm --prefix /"$RESOURCE_DIR/" run build"
a
"npm --prefix /"%RESOURCE_DIR%/" run lint",
"npm --prefix /"%RESOURCE_DIR%/" run build"
funcionará
simplemente puede hacer su archivo firebase.json así:
{
"functions": {
"predeploy": [
"npm --prefix ./functions/ run lint",
"npm --prefix ./functions/ run build"
]
}
}
lo que estoy haciendo es reemplazar $ RESOURCE_DIR con la ruta codificada de la carpeta de funciones, está funcionando bien para mí
Este debería resolver el problema sin solución
npm install -g git://github.com/firebase/firebase-tools#master
intente esta instalación nuevamente en su carpeta de proyecto, debería resolver el problema.
RESUMEN
-
Instale ESLint localmente para agregar "devDependencies" a package.json . Correr:
`npm install eslint --save-dev`
-
Solución para Windows como se indicó anteriormente. Cambiar firebase.json :
`npm --prefix $RESOURCE_DIR run lint` to `npm --prefix %RESOURCE_DIR% run lint`
-
Opcionalmente, agregue lo siguiente a package.json :
"scripts": { "lint": "eslint"} or "scripts": { "lint": "eslint.js"}