Quiero generar un archivo al comienzo de mi programa. Esto debe suceder antes de que se cargue el módulo, ya que el módulo intentará cargar ese archivo.
Aquí está mi código:
require('dotenv').config(); const fs = require('fs'); //if cert doesn't exist, create the file from an environment variable if (!fs.existsSync('./ca-certificate.crt')) { if (!process.env.MONGO_CERT) throw new Error('The mongo cert wasnt found as a file or in environment variables'); fs.writeFileSync('./ca-certificate.crt',process.env.MONGO_CERT); console.log('wrote MONGO_CERT to file'); } else console.log('Mongo cert file detected'); const http = require('http'); const path = require('path'); const glob = require('glob'); const cookieParser = require('cookie-parser'); const busboy = require('express-busboy'); const express = require('express'); const morgan = require('morgan'); const queue = require('./queue.js');y cola.js
require('dotenv').config(); const {MongoClient, Collection} = require('mongodb'); const client = new MongoClient(process.env.MONGO_URI); El problema es que la aplicación falla en module.js debido a que no puede encontrar el archivo. Creo que esto se debe a que el nodo eleva la definición del module antes de mi instrucción if, por lo que todo el módulo se ejecuta incluso antes de llegar a mi código.
¿Cómo evito esto?