From 0c085a34ce6517853d37a91148882876b728132c Mon Sep 17 00:00:00 2001
From: FORESTIER Fabien <fabien.forestier@soprasteria.com>
Date: Tue, 26 Mar 2019 09:20:43 +0100
Subject: [PATCH] Add prefix to email subject

---
 .gitlab-ci.yml                      | 2 ++
 docker-compose.yml                  | 1 +
 src/configuration/config.service.ts | 1 +
 src/configuration/config.ts         | 1 +
 src/configuration/template.env      | 3 ++-
 src/email/email.service.ts          | 5 ++++-
 6 files changed, 11 insertions(+), 2 deletions(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 5c0bac7..4145f5b 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -42,6 +42,7 @@ deploy_development:
     - export MAIL_SERVICE_BIND_PORT=3001
     - export RABBITMQ_LISTENING_PORT=5672
     - export RABBITMQ_GUI_PORT=15672
+    - export MAIL_SUBJECT_PREFIX=alpha
     - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY
     - docker-compose pull
     - docker-compose --project-name service-email-${TAG} up -d --force-recreate
@@ -58,6 +59,7 @@ deploy_staging:
     - export MAIL_SERVICE_BIND_PORT=3101
     - export RABBITMQ_LISTENING_PORT=5673
     - export RABBITMQ_GUI_PORT=15673
+    - export MAIL_SUBJECT_PREFIX=alpha
     - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY
     - TAG=dev docker-compose pull
     - docker tag $CI_REGISTRY/refonte-data/service-email:dev $CI_REGISTRY/refonte-data/service-email:${TAG}
diff --git a/docker-compose.yml b/docker-compose.yml
index fff000d..8d66098 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -13,6 +13,7 @@ services:
       - RABBITMQ_PASSWORD=${RABBITMQ_PASSWORD}
       - GROUP_HEADER=x-consumer-groups
       - EMAIL_WRITER_GROUP_NAME=email-writer
+      - MAIL_SUBJECT_PREFIX=${MAIL_SUBJECT_PREFIX}
     restart: unless-stopped
 
   rabbitmq:
diff --git a/src/configuration/config.service.ts b/src/configuration/config.service.ts
index 31735ea..2b12b4a 100644
--- a/src/configuration/config.service.ts
+++ b/src/configuration/config.service.ts
@@ -23,6 +23,7 @@ export class ConfigService {
     this._config.userSupportMailbox = process.env.USER_SUPPORT_MAILBOX;
     this._config.groupNames.emailWriter = process.env.EMAIL_WRITER_GROUP_NAME;
     this._config.groupHeader = process.env.GROUP_HEADER;
+    this._config.mailSubjectPrefix = process.env.MAIL_SUBJECT_PREFIX;
   }
 
   get config() {
diff --git a/src/configuration/config.ts b/src/configuration/config.ts
index 8e8e0bf..dc11d00 100644
--- a/src/configuration/config.ts
+++ b/src/configuration/config.ts
@@ -12,4 +12,5 @@ export const config = {
     emailWriter: '',
   },
   groupHeader: '',
+  mailSubjectPrefix: '',
 };
\ No newline at end of file
diff --git a/src/configuration/template.env b/src/configuration/template.env
index 567beae..6621c6d 100644
--- a/src/configuration/template.env
+++ b/src/configuration/template.env
@@ -1,3 +1,4 @@
 RABBITMQ_USER=
 RABBITMQ_PASSWORD=
-USER_SUPPORT_MAILBOX=
\ No newline at end of file
+USER_SUPPORT_MAILBOX=
+MAIL_SUBJECT_PREFIX=
\ No newline at end of file
diff --git a/src/email/email.service.ts b/src/email/email.service.ts
index e998884..ae8cb1c 100644
--- a/src/email/email.service.ts
+++ b/src/email/email.service.ts
@@ -92,8 +92,11 @@ export class EmailService {
     email.from = this.config.userSupportMailbox;
     email = Object.assign(email, emailInfo);
 
+    if (this.config.emailSubjectPrefix) {
+      email.subject = `[${this.config.mailSubjectPrefix}] ${email.subject}`;
+    }
+
     Logger.log('[-] send method');
-    Logger.log(this.config);
     Logger.log(email);
 
     // Connect to rabbitmq
-- 
GitLab