diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..de625be --- /dev/null +++ b/.dockerignore @@ -0,0 +1,2 @@ +node_modules +npm-debug.log \ No newline at end of file diff --git a/.env b/.env index 4c24d8d..a5b5ed0 100644 --- a/.env +++ b/.env @@ -1,4 +1,5 @@ -PORT=2000 +PORT=3000 JWT_SECRET=askfeed1234 - +USER=santanrathore75209@gmail.com +PASS=*Saheb13* \ No newline at end of file diff --git a/.gitignore b/.gitignore index 3c3629e..1dcef2d 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ node_modules +.env \ No newline at end of file diff --git a/.scannerwork/.sonar_lock b/.scannerwork/.sonar_lock new file mode 100644 index 0000000..e69de29 diff --git a/.scannerwork/report-task.txt b/.scannerwork/report-task.txt new file mode 100644 index 0000000..b851003 --- /dev/null +++ b/.scannerwork/report-task.txt @@ -0,0 +1,6 @@ +projectKey=token +serverUrl=http://dev-sonarqube.springrole.com:9000 +serverVersion=8.9.1.44547 +dashboardUrl=http://dev-sonarqube.springrole.com:9000/dashboard?id=token +ceTaskId=AXoaL8nL8zulQfXeM_9Q +ceTaskUrl=http://dev-sonarqube.springrole.com:9000/api/ce/task?id=AXoaL8nL8zulQfXeM_9Q diff --git a/.vscode/launch.json b/.vscode/launch.json new file mode 100644 index 0000000..c519607 --- /dev/null +++ b/.vscode/launch.json @@ -0,0 +1,15 @@ +{ + "configurations": [ + { + "name": "Docker Node.js Launch", + "type": "docker", + "request": "launch", + "preLaunchTask": "docker-run: debug", + "platform": "node", + "node": { + "package": "${workspaceFolder}/node_modules/which-module/package.json", + "localRoot": "${workspaceFolder}/node_modules/which-module" + } + } + ] +} \ No newline at end of file diff --git a/.vscode/tasks.json b/.vscode/tasks.json new file mode 100644 index 0000000..4e04ed9 --- /dev/null +++ b/.vscode/tasks.json @@ -0,0 +1,46 @@ +{ + "version": "2.0.0", + "tasks": [ + { + "type": "docker-build", + "label": "docker-build", + "platform": "node", + "dockerBuild": { + "dockerfile": "${workspaceFolder}/node_modules/which-module/Dockerfile", + "context": "${workspaceFolder}/node_modules/which-module", + "pull": true + }, + "node": { + "package": "${workspaceFolder}/node_modules/which-module/package.json" + } + }, + { + "type": "docker-run", + "label": "docker-run: release", + "dependsOn": [ + "docker-build" + ], + "platform": "node", + "node": { + "package": "${workspaceFolder}/node_modules/which-module/package.json" + } + }, + { + "type": "docker-run", + "label": "docker-run: debug", + "dependsOn": [ + "docker-build" + ], + "dockerRun": { + "env": { + "DEBUG": "*", + "NODE_ENV": "development" + } + }, + "node": { + "package": "${workspaceFolder}/node_modules/which-module/package.json", + "enableDebugging": true + } + } + ] +} \ No newline at end of file diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..5a38c12 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,13 @@ +FROM node:14.16 + +WORKDIR /ask-feed + +COPY package.json /ask-feed/package.json + +RUN npm install + +COPY . /ask-feed + +EXPOSE 3000 + +CMD ["npm","start"] \ No newline at end of file diff --git a/app.js b/app.js index 426de16..5ee4bc8 100644 --- a/app.js +++ b/app.js @@ -4,6 +4,8 @@ const cors = require("cors"); const bcryptjs = require("bcryptjs"); require("dotenv").config(); require("./db/connectionDB"); +require("./models/user"); +require("./models/survey"); const authRoutes = require("./routes/auth"); const surveyRoutes = require("./routes/survey"); @@ -14,7 +16,10 @@ app.use(express.json()); app.use(cors()); app.use("/survey", surveyRoutes); app.use("/api", authRoutes); - -app.listen(process.env.PORT || 2000, () => { - console.log("server running on port 2000"); +app.get("/health", function (req, res) { + const message = "Running on port " + process.env.PORT; + return res.send(message); +}); +app.listen(process.env.PORT || 3000, () => { + console.log("server running on port 3000"); }); diff --git a/controllers/auth.js b/controllers/auth.js index a5b7317..fa09913 100644 --- a/controllers/auth.js +++ b/controllers/auth.js @@ -3,15 +3,10 @@ const nodemailer = require("nodemailer"); const bcryptjs = require("bcryptjs"); const jwt = require("jsonwebtoken"); -const transporter = nodemailer.createTransport({ - service: "gmail", - auth: { - user: "santanrathore75209@gmail.com", - pass: "*Saheb13*", - }, -}); +const { transporter } = require("../utils/transporter"); const signup = async (req, res) => { + try{ const { username, password, email, phoneNo } = req.body; const userexist = await User.findOne({ email }); if (!userexist) { @@ -26,16 +21,32 @@ const signup = async (req, res) => { phoneNo, token, }; - const user = await User.create(newUser); if (user) { const data = { from: "no-reply@gmail.com", to: email, - subject: "Account activation link", - html: `
http://localhost:2000/api/activate/${token}
- `, + subject: "This is your Email verification link", + html: `