diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 73474d7b6928fccda8cb431ad18df8409300690e..687993d0d37b049b05155d4ccbdc5a9338b23b8d 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -57,13 +57,13 @@ deploy-staging:
     - mkdir -p ~/.ssh
     - echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config
   script:
-    - npm run build
     - ssh -p22 sigma-dev@roued "mkdir -p /opt/sigma-back-dev"
     - ssh -p22 sigma-dev@roued "rm -rf /opt/sigma-back-dev/build"
     - ssh -p22 sigma-dev@roued "rm -rf /opt/sigma-back-dev/assets"
     - scp -p22 -r build/ sigma-dev@roued:/opt/sigma-back-dev/build
     - scp -p22 -r assets/ sigma-dev@roued:/opt/sigma-back-dev/assets
     - scp -p22 package.json "package-lock.json" ldap_config.json ldap_connexion_config.json sigma-back-dev.service sigma-dev@roued:/opt/sigma-back-dev/
+    - ssh -p22 sigma-dev@roued "systemctl restart sigma-back-dev.service"
   environment:
     name: staging
     url: http://129.104.210.10:3000
diff --git a/src/graphql/connectors/connectors.js b/src/graphql/connectors/connectors.js
index d2257cefcf377fbe76ef64991f3300841badeea0..c72eccc8aec69168db7a550b09e4e61474baa415 100644
--- a/src/graphql/connectors/connectors.js
+++ b/src/graphql/connectors/connectors.js
@@ -12,11 +12,6 @@ import ldap_bind_user from '../../../ldap_connexion_config.json';
 
 const utilisateur = new ldap.UtilisateurAnonyme();
 
-let result = utilisateur.listMembers("br").then(res => {
-    console.log("Got it");
-    return res;
-});
-
 export { utilisateur };
 
 /*
diff --git a/src/graphql/typeDefs/actions.js b/src/graphql/typeDefs/actions.js
index 42db227676777ea13a87c1420f52932e3b940a0a..6204df4e8e54f50cfb0cda08541bf631a51708ca 100644
--- a/src/graphql/typeDefs/actions.js
+++ b/src/graphql/typeDefs/actions.js
@@ -22,7 +22,7 @@ const RootTypes = `
         
         # user queries
 
-        user(uid: ID!) : User
+        user(uid: ID) : User
 
         searchTOL(
             givenName: String,
diff --git a/src/ldap/ldap_data.js b/src/ldap/ldap_data.js
index 27d0c56b14383b5da6ea2c644b167b6674a4fa56..c25d66a4cd56d292121bd45b43ef4ebd140a7e78 100644
--- a/src/ldap/ldap_data.js
+++ b/src/ldap/ldap_data.js
@@ -15,6 +15,7 @@ import path from 'path'; */
 
 /**/var ldap = require('ldapjs');
 var fs = require('fs');
+var assert = require('assert');
 var ldapEscape = require('ldap-escape');
 var path = require('path');
 
@@ -60,33 +61,37 @@ function rechercherLDAP(base, attributes, filter="(objectClass=*)") {
     return new Promise((resolve, reject) => {
         let vals=[];
         // Interrogation LDAP selon la configuration fournie en argument
-        client.search(base, {
-            "scope": "sub",
-            "filter": filter,
-            "attributes": attributes
-        }, 
-        function(err, res) {
-            // Gestion erreur
-            if (err) {
-                reject(err);
-            } else {
+        client.search(base,
+            {
+                "scope": "sub",
+                "filter": filter,
+                "attributes": attributes 
+            }, function(err, res) {
+                if (err) {
+                    reject(err);
+                } else {
                 // Dès que la recherche renvoie une entrée, on stocke les attributs qui nous intéressent
-                res.on('searchEntry', function(entry) {
+                    res.on('searchEntry', function(entry) {
                     // Cas un seul attribut où le résultat est une liste directement
-                    if (!Array.isArray(attributes)) { vals.push(entry.object[attributes]); }
-                    else if (attributes.length == 1) { vals.push(entry.object[attributes[0]]); }
-                    // Plusieurs attributs: le résultat est un dictionnaire
-                    else {
-                        vals.push({});
-                        attributes.forEach((attribute) => {
-                            vals.slice(-1)[0][attribute]=entry.object[attribute];
-                        });
-                    }
-                });
-                // Si la recherche est finie on se déconnecte et on renvoie la liste
-                res.on('end', function(res) { resolve(vals); });
-            }
-        });
+                        if (!Array.isArray(attributes)) { vals.push(entry.object[attributes]); }
+                        else if (attributes.length == 1) { vals.push(entry.object[attributes[0]]); }
+                        // Plusieurs attributs: le résultat est un dictionnaire
+                        else {
+                            vals.push({});
+                            attributes.forEach((attribute) => {
+                                vals.slice(-1)[0][attribute]=entry.object[attribute];
+                            });
+                        }
+                    });
+
+                    res.on('error', function(resErr) {
+                        reject(resErr);
+                    });
+
+                    // Si la recherche est finie on se déconnecte et on renvoie la liste
+                    res.on('end', function(res) { resolve(vals); });
+                }
+            });
     });
 }
 
@@ -257,9 +262,7 @@ function repliquerTOLModulable(data, return_attributes) {
  * @return {Promise(Object[])} Liste de dictionnaires de profils en cohérence avec l'input avec pour clés tous les attributs disponibles ou presque (voir config).
  */
 function repliquerTOL(data) {
-    return new Promise((resolve, reject) => {
-        repliquerTOLModulable(data, config.user.profil).then(res => resolve(res));
-    });
+    return repliquerTOLModulable(data, config.user.profil);
 }
 
 /**
@@ -447,9 +450,7 @@ class UtilisateurAnonyme {
      * voir `ldap_config.json`(..\..\ldap_config.json) pour les clés exactes.
      */
     getUser(uid) {
-        return new Promise((resolve, reject) => {
-            rechercherLDAP(ldapEscape.filter(config.key_id+"=${id},"+config.dn_users, {id : uid}), config.user.profil).then(res => resolve(res));
-        });
+        return rechercherLDAP(ldapEscape.filter(config.key_id+"=${id},"+config.dn_users, {id : uid}), config.user.profil);
     }
      
     /**