diff --git a/backend/.env.template b/backend/.env.template index e905d1eb6..5bbf65e3b 100644 --- a/backend/.env.template +++ b/backend/.env.template @@ -5,6 +5,10 @@ GRAPHQL_PORT=4000 GRAPHQL_URI=http://localhost:4000 CLIENT_URI=http://localhost:3000 MOCKS=false +SMTP_HOST=localhost +SMTP_PORT=1025 +SMTP_USERNAME= +SMTP_PASSWORD= JWT_SECRET="b/&&7b78BF&fv/Vd" MAPBOX_TOKEN="pk.eyJ1IjoiaHVtYW4tY29ubmVjdGlvbiIsImEiOiJjajl0cnBubGoweTVlM3VwZ2lzNTNud3ZtIn0.KZ8KK9l70omjXbEkkbHGsQ" diff --git a/backend/src/config/index.js b/backend/src/config/index.js index 6931126e2..f0959ab53 100644 --- a/backend/src/config/index.js +++ b/backend/src/config/index.js @@ -28,6 +28,7 @@ export const serverConfigs = { } export const developmentConfigs = { + SEND_MAILS: process.env.SEND_MAILS || false, DEBUG: process.env.NODE_ENV !== 'production' && process.env.DEBUG === 'true', MOCKS: process.env.MOCKS === 'true', DISABLED_MIDDLEWARES: diff --git a/backend/src/schema/resolvers/passwordReset.js b/backend/src/schema/resolvers/passwordReset.js index fe37187b5..ed9ec7ea1 100644 --- a/backend/src/schema/resolvers/passwordReset.js +++ b/backend/src/schema/resolvers/passwordReset.js @@ -41,13 +41,15 @@ export default { requestPasswordReset: async (_, { email }, { driver }) => { const code = uuid().substring(0, 6) await createPasswordReset({ driver, code, email }) - await transporter().sendMail({ - from: '"Human Connection" ', // sender address - to: email, // list of receivers - subject: 'Password Reset', // Subject line - text: `Code is ${code}`, // plain text body - html: `Code is ${code}`, // plain text body - }) + if (CONFIG.SEND_MAILS) { + await transporter().sendMail({ + from: '"Human Connection" ', // sender address + to: email, // list of receivers + subject: 'Password Reset', // Subject line + text: `Code is ${code}`, // plain text body + html: `Code is ${code}`, // plain text body + }) + } return true }, diff --git a/docker-compose.override.yml b/docker-compose.override.yml index d7ee86bd6..9c82a8df5 100644 --- a/docker-compose.override.yml +++ b/docker-compose.override.yml @@ -5,6 +5,8 @@ services: image: djfarrelly/maildev ports: - 1080:80 + networks: + - hc-network webapp: build: context: webapp @@ -24,6 +26,10 @@ services: - backend_node_modules:/nitro-backend/node_modules - uploads:/nitro-backend/public/uploads command: yarn run dev + environment: + - SEND_MAILS=true + - SMTP_HOST=mailserver + - SMTP_PORT=25 neo4j: environment: - NEO4J_AUTH=none