init start script
This commit is contained in:
@@ -0,0 +1,41 @@
|
||||
const MDBClient = require('mongodb').MongoClient
|
||||
|
||||
const url = process.env.MONGO_URL
|
||||
|
||||
if (
|
||||
!process.env.MONGO_URL ||
|
||||
!process.env.DB_NAME ||
|
||||
!process.env.COLLECTION_NAME ||
|
||||
!process.env.COMMAND ||
|
||||
!process.env.ARGUMENT
|
||||
) {
|
||||
throw new Error(`process.env.MONGO_URL ${process.env.MONGO_URL}
|
||||
process.env.DB_NAME ${process.env.DB_NAME}
|
||||
process.env.COLLECTION_NAME ${process.env.COLLECTION_NAME}
|
||||
process.env.COMMAND ${process.env.COMMAND}
|
||||
process.env.ARGUMENT ${process.env.ARGUMENT}
|
||||
|
||||
Данные переменные окружения должны быть заполнены`)
|
||||
}
|
||||
|
||||
const mongoDBConnect = async () => {
|
||||
try {
|
||||
const MongoClient = new MDBClient(url, {
|
||||
useUnifiedTopology: true,
|
||||
})
|
||||
return await MongoClient.connect()
|
||||
} catch (error) {
|
||||
console.error(error)
|
||||
}
|
||||
}
|
||||
mongoDBConnect().then(async (client) => {
|
||||
const db = await client.db(process.env.DB_NAME)
|
||||
const collection = await db.collection(process.env.COLLECTION_NAME)
|
||||
|
||||
const answer = await collection[process.env.COMMAND](JSON.parse(process.env.ARGUMENT))
|
||||
|
||||
await client.close();
|
||||
return answer.ops?.[0] ?? answer
|
||||
})
|
||||
.then(console.log)
|
||||
.catch(console.error)
|
||||
Reference in New Issue
Block a user