From c8c7fbe99ae94e1fed2279f36958d7094bfa687a Mon Sep 17 00:00:00 2001
From: ManifoldFR <wilson.jallet@gmail.com>
Date: Fri, 21 Sep 2018 13:50:35 +0200
Subject: [PATCH] Change NODE_ENV use to TARGET_ENV

new variable used for target environment (dev, staging, production)
---
 .gitlab-ci.yml    | 2 +-
 Dockerfile        | 2 +-
 db/knex_router.js | 3 ++-
 src/app.ts        | 1 -
 4 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 7b02c7e..57a4065 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -51,7 +51,7 @@ docker:build:
   script:
     - docker login -u gitlab-ci-token -p $CI_BUILD_TOKEN $CI_REGISTRY
     - echo "Building Dockerfile..."
-    - docker build --pull -t ${CI_APPLICATION_REPOSITORY}:${CI_APPLICATION_TAG} -t ${CI_APPLICATION_REPOSITORY}:latest .
+    - docker build --pull -t ${CI_APPLICATION_REPOSITORY}:${CI_APPLICATION_TAG} -t ${CI_APPLICATION_REPOSITORY}:latest --build-arg TARGET_ENV=staging .
     - echo "Pushing to GitLab Container registry $CI_APPLICATION_REPOSITORY with tags '${CI_APPLICATION_TAG}' and 'latest'"
     - docker push ${CI_APPLICATION_REPOSITORY}:${CI_APPLICATION_TAG}
     - docker push ${CI_APPLICATION_REPOSITORY}:latest
diff --git a/Dockerfile b/Dockerfile
index 99e0aa4..255cf42 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -10,7 +10,7 @@ COPY package*.json ./
 # Install app dependencies
 RUN npm install --only=production
 
-ENV NODE_ENV=staging
+ARG TARGET_ENV
 ENV LDAP_URI=http://frankiz.eleves.polytechnique.fr:389
 
 COPY . .
diff --git a/db/knex_router.js b/db/knex_router.js
index df46ff3..9f8a062 100644
--- a/db/knex_router.js
+++ b/db/knex_router.js
@@ -1,8 +1,9 @@
 /**
  * @file Charge la configuration knexjs adaptée à l'environnement (production ou développement) puis exporte un objet knex permettant les requêtes SQL
 */
+require('dotenv').config();
 
-const environment = process.env.NODE_ENV || 'development';
+const environment = process.env.TARGET_ENV || 'development';
 const config = require('../knexfile')[environment];
 
 console.log("Running Knex configuration '%s'", environment);
diff --git a/src/app.ts b/src/app.ts
index 395c0e4..8a1eb76 100644
--- a/src/app.ts
+++ b/src/app.ts
@@ -199,7 +199,6 @@ app.post('/login',
 /**
  * @desc API GraphQL
  */
-const environment = process.env.NODE_ENV || 'development';
 
 /**
  * @desc Define GraphQL request context object, through a callback, with authorization.
-- 
GitLab