Comparaison des versions

Légende

  • Ces lignes ont été ajoutées. Ce mot a été ajouté.
  • Ces lignes ont été supprimées. Ce mot a été supprimé.
  • La mise en forme a été modifiée.

...

Tout ces attributs peuvent être indiquer en variable d'environnement en les mettant en majuscules et en prefixant le nom avec GLDGDD_

Les variables d'environnement sont prioritaires sur le fichier de configuration

Exemple : GLD GDD_RABBITMQ_HOST

L'environnement utilisé est défini par la variable d'environnement GORGGOOGLE_LDAPDIRECTORY_DAEMON_ENV et à pour valeur "development" par défaut

La variable d'environnement LOGGER_LEVEL logger_level permet de définir la verbosité des logs. Les valeurs autorisées sont :

  • DEBUG - valeur par défaut
  • INFO
  • WARN
  • ERROR
  • FATAL

Pour fonctionner les API google on besoin d'un json appelé client_secret.json.

Ce fichier est stocké dans le dossier secrets/

Il est également possible de stocker le JSON dans la variable d'environnement GDD_GOOGLE_CLIENT_SECRET

Si la variable d'environnement REDIS_URL est définie l'appli stockera les token de connexion dans le Redis, sinon ils  seront stocké dans secrets/tokens.yaml

Arret / Démarage

Sur Heroku :

...

Clé de routageQuand ?Contenu du messageExemple de contenu
notify.googleapps.user.createdQuand la création d'un compte et de ses alias ne retourne aucune erreur

uuid : l'uuid du compte

google_id : id du compte google créé

Bloc de code
themeEclipse
languagejavascript
{
	"quoiuuid": "Objet contenu dans l'attribut 'data' du message",
    "format": "JSON4fa874db-7730-4105-b550-8ea991907240",
    "google_id": "123465789123034"
}
notify.googleapps.user.updated 

uuid : l'uuid du compte

google_id : id du compte google créé

Bloc de code
themeEclipse
languagejavascript
{
	"uuid": "4fa874db-7730-4105-b550-8ea991907240",
    "google_id": "123465789123034"
}
notify.googleapps.user.deletedQuand un compte est supprimé avec succés

key : id du compte google supprimé

Bloc de code
themeEclipse
languagejavascript
{
	"key": "4fa874db-7730-4105-b550-8ea991907240"
}
Astuce

N'oubliez pas de mettre à jour la propriétés "Clés de routage émises" de la page avec les nouvelles routing keys

...

Clé de routageActions effectuéesContenu du messageExemple de contenu
request.googleapps.user.create

Crée un compte google apps et ses alias.

Récupère le mots de passe depuis le GrAM

Met à jour l'id google dans le GrAM si le compte est créé avec succès.

Bloc de code
titleSCHEMA JSON
{  
   "$schema":"http://json-schema.org/draft-04/schema#",
   "title":"Create Google Account message schema",
   "type":"object",
   "properties":{  
      "gram_account_uuid":{  
         "type":"string",
         "description":"The unique identifier of linked GrAM Account",
         "pattern":"[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}"
      },
      "primary_email":{  
         "type":"string",
         "description":"Primary email address used to create google account"
      },
      "aliases":{  
         "type":"array",
         "description":"Google account email aliases",
         "items":{  
            "type":"string"
         }
      }
   },
   "additionalProperties":true,
   "required":[  
      "gram_account_uuid",
      "primary_email"
   ]
}
Bloc de code
themeEclipse
languagejavascript
{
	"quoi": "Objet contenu dans l'attribut 'data' du message",
    "format": "JSON
  "gram_account_uuid":"36a7e016-a300-4f52-85f4-6804dede6c6b",
  "primary_email":"[email protected]",
  "aliases":[]
}
request.googleapps.user.update

Met à jour le compte

Récupère le mots de passe depuis le GrAM

Bloc de code
titleSCHEMA JSON
{  
   "$schema":"http://json-schema.org/draft-04/schema#",
   "title":"Update Google Account message schema",
   "type":"object",
   "properties":{  
      "gram_account_uuid":{  
         "type":"string",
         "description":"The unique identifier of linked GrAM Account",
         "pattern":"[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}"
      },
      "primary_email":{  
         "type":"string",
         "description":"Primary email address uof google account"
      },
      "aliases":{  
         "type":"array",
         "description":"Google account email aliases",
         "items":{  
            "type":"string"
         }
      }
   },
   "additionalProperties":true,
   "required":[  
      "gram_account_uuid"
   ]
}
Bloc de code
themeEclipse
languagejavascript
{
  "gram_account_uuid":"36a7e016-a300-4f52-85f4-6804dede6c6b",
  "aliases":[]
}
request.googleapps.user.deleteSupprime le compteLa clé google_account_key est necessaire
Bloc de code
themeEclipse
languagejavascript
{
  "google_account_key":"123465789123034"
}
Astuce

N'oubliez pas de mettre à jour la propriétés "Clés de routage écoutées" de la page avec les nouvelles routing keys

...

Clé de routageActions effectuées
notify.account.updatedConvertit key en gram_account_uuid et transmet à request.googleapps.user.update
Astuce

N'oubliez pas de mettre à jour la propriétés "Clés de routage écoutées" de la page avec les nouvelles routing keys