Configuration

Cette section détaille toutes les configurations disponibles pour chaque service.

API

Toutes les configurations doivent être définies dans un fichier yaml. Par défaut c’est dans config.yaml qui a besoin d’être dans le dossier où le code est exécuté.

Mais vous pouvez changer ce chemin en définissant la variable d’environnement CONFIG_FILE_PATH.

Firebase

Structure YAML

firebase:
    credentials_file_path:
    project_id:
    mock:
        enabled:
        data_file_path:

Paramètres

  • firebase.credentials_file_path : (Variable d’environnement : `FIREBASE_CREDENTIALS_FILE_PATH`) - Chemin vers le fichier d’identifiants firebase

  • firebase.project_id : (Variable d’environnement : `FIREBASE_PROJECT_ID`) - Identifiant du projet firebase

  • firebase.mock.enabled : (Variable d’environnement : `FIREBASE_MOCK_ENABLED`) - A mettre à true si vous voulez activez les mocks pour faire des tests spécifiques.

  • firebase.mock.data_file_path : (Variable d’environnement : `FIREBASE_MOCK_DATA_PATH`) - Chemin vers les ressources mockées

Pour récupérer le fichier définit dans firebase.credentials_file_path, regardez cette documentation Firebase qui explique comment configure un service account.

Base de données

Structure YAML

database:
  mock:
    enabled:
    data_folder_path:
  mongo:
    uri:
    name:

Paramètres

  • database.mock.enabled : (Variable d’environnement : `DATABASE_MOCK_ENABLED`) - A mettre à true si vous voulez activer les mocks et faire des tests spécifiques.

  • database.mock.data_file_path : (Variable d’environnement : `DATABASE_MOCK_DATA_PATH`) - Chemin vers les ressources de mock

  • database.mongo.uri : (Variable d’environnement : `DATABASE_MONGO_URI`) - URI pour se connecter à la base de données

  • database.mongo.name : (Variable d’environnement : `DATABASE_MONGO_NAME`) - Nom de la collection à utiliser dans Mongo.

Serveur

Structure YAML

server:
  expose:
  metrics_expose:
  origins_allowed:
  images_dir:
  images_base_url:

Paramètres

  • server.expose : (Variable d’environnement : `SERVER_EXPOSE`) - Port exposant l’API. Défaut 8080

  • server.metrics_expose : (Variable d’environnement : `SERVER_METRICS_EXPOSE`) - Port pour exposer les métriques de l’API. Défaut 2121

  • server.origins_allowed : Liste des origines autorisées pour appeler l’API

  • server.images_dir : (Variable d’environnement : `SERVER_IMAGES_DIR`) - Dossier où les images doivent être stockées

  • server.images_base_url : (Variable d’environnement : `SERVER_IMAGES_BASE_URL`) - Base de l’URL pour récupérer les images. Par défaut, cela doit être /v1/images si vous utilisez l’endpoint de l’API

Images

Structure YAML

images:
  maxImagesPerIdea:
  maxImagesPerComment:
  maxSize:
  acceptedExtensions:

Paramètres

  • images.maxImagesPerIdea : (Variable d’environnement : `IMAGE_MAX_IMAGES_PER_IDEA`) - Nombre maximum d’images par idée

  • images.maxImagesPerComment : (Variable d’environnement : `IMAGE_MAX_IMAGES_PER_COMMENT`) - Nombre maximum d’images par commentaire

  • images.maxSize : (Variable d’environnement : `IMAGE_MAX_SIZE`) - Taille maximale des images en octets

  • images.acceptedExtensions : Liste des extensions de fichier autorisées.

Admin

Structure YAML

admin:
  defaultList:

Paramètres

  • admin.defaultList : Liste d’administrateur par défaut


Frontend

Deux fichiers de configuration json sont requis:

  • config.json

  • firebase-config.json

config.json

{
  "apiBaseUrl": "",
  "appTitle": " - ",
  "appLoginTitle": "",
  "appIcon": ""
}
  • apiBaseUrl : [Obligatoire] URL pour appeler Iris API

  • appTitle : [Optionnel] Titre de l’application à afficher à la place du défaut

  • appLoginTitle : [Optionnel] Titre à afficher sur la page de connexion à la place du défaut

  • appIcon : [Optionnel] Icone à afficher à la place de celle par défaut

firebase-config.json

{
  "apiKey": "",
  "authDomain": "",
  "databaseURL": "",
  "projectId": "",
  "storageBucket": "",
  "messagingSenderId": "",
  "appId": ""
}
  • apiKey : [Obligatoire] Clé Firebase API

  • authDomain : [Obligatoire] Domaine d’authentification Firebase

  • databaseURL : [Obligatoire] URL vers la base de données Firebase

  • projectId : [Obligatoire] Identifiant du projet Firebase

  • storageBucket : [Obligatoire] Bucket de stockage Firebase

  • messagingSenderId : [Obligatoire] Identifiant du messaging sender de Firebase

  • appId : [Obligatoire] Identifiant de l’application Firebase

Cette documentation peut être trouvée dans la console Firebase. Regardez cette documentation pour savoir comment récupérer ces informations.