]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/commitdiff
do not crash if SMTP server is down
authorGirish Ramakrishnan <girish@cloudron.io>
Fri, 11 Dec 2020 20:02:32 +0000 (12:02 -0800)
committerChocobozzz <chocobozzz@cpy.re>
Sat, 12 Dec 2020 07:50:59 +0000 (08:50 +0100)
just log a warning if the SMTP server is down on startup time

fixes #3457

server.ts
server/lib/emailer.ts

index 8a762a9054ccb7628b8503dfc45b2b9462f3c8f6..edfbab3d7f34a982aa3a623ffd65baca8ea594eb 100644 (file)
--- a/server.ts
+++ b/server.ts
@@ -249,7 +249,7 @@ async function startApplication () {
   Emailer.Instance.init()
 
   await Promise.all([
-    Emailer.Instance.checkConnectionOrDie(),
+    Emailer.Instance.checkConnection(),
     JobQueue.Instance.init()
   ])
 
index 650a3c090948b2a19e533b4ea89b550ddaf7a56b..e4e093fbc57a547e317cdd9990e0fb6ae92c110f 100644 (file)
@@ -107,18 +107,18 @@ class Emailer {
     }
   }
 
-  async checkConnectionOrDie () {
+  async checkConnection () {
     if (!this.transporter || CONFIG.SMTP.TRANSPORT !== 'smtp') return
 
     logger.info('Testing SMTP server...')
 
     try {
       const success = await this.transporter.verify()
-      if (success !== true) this.dieOnConnectionFailure()
+      if (success !== true) this.warnOnConnectionFailure()
 
       logger.info('Successfully connected to SMTP server.')
     } catch (err) {
-      this.dieOnConnectionFailure(err)
+      this.warnOnConnectionFailure(err)
     }
   }
 
@@ -636,9 +636,8 @@ class Emailer {
     }
   }
 
-  private dieOnConnectionFailure (err?: Error) {
+  private warnOnConnectionFailure (err?: Error) {
     logger.error('Failed to connect to SMTP %s:%d.', CONFIG.SMTP.HOSTNAME, CONFIG.SMTP.PORT, { err })
-    process.exit(-1)
   }
 
   static get Instance () {