Soutenance Technique Finale de 4ème année
--

Juillet 2014

Qu'est-ce qu'Onitu ?


  • Serveur de synchronisation de fichiers
  • Multiples services (Dropbox, Drive, Amazon S3, SSH, FTP…)
  • Configurable grâce à des règles
  • Interface Web & Client

Tour de table


  • Architecture & Avancement - Mathis
  • Multi-Plateforme - Louis
  • Les drivers - Maxime
  • Escalator - Alexandre
  • Règles de synchronisation - Wannes
  • API REST - Morgan
  • Interface Web - Frank
  • Le client - Antoine
  • Futur proche - Yannick

L'architecture


L'architecture est séparée en plusieurs éléments, chacun isolé dans un processus différent :

  • Le Referee, qui répartit les fichiers en suivant les règles
  • Chaque Driver fait la liaison entre Onitu et un service tiers
  • La communication interne se fait via ZeroMQ
  • Toutes les données sont stockées dans LevelDB

L'avancement


  • Le cœur du serveur fonctionne
  • Les Drivers fonctionnels : Fichiers locaux, S3, Dropbox, Google Drive
  • Le Referee gère toutes les règles simples (taille, chemin, mime-type)
  • Début d'interface web
  • Des tests fonctionnels avancés

MULTI-PLATEFORME


  • Portage de Circus pour Windows
  • Pull-Request pour l'intégration dans Circus acceptée
  • Ré-écriture du driver Local-Storage pour Windows, Mac et Linux
  • Adaptation des tests pour Windows

Les Drivers


  • Finalisation du driver Google Drive
  • Finalisation du driver Dropbox
  • Création du driver S3
  • Ajout de la gestion des suppressions
  • Début des drivers spécialisés

Escalator


  • Remplacement de Redis
  • Escalator: un serveur autour de LevelDB
  • Développement complet
  • Tests fonctionnels
  • Intégration dans Onitu

Les règles de synchronisation


  • Ré-écriture complète en cours
  • Nouvelle gestion plus intuitive
  • De nouvelles possibilités

API REST


  • Documentation publique
  • Création du serveur avec Bottle
  • Permet de manipuler les fichiers et les drivers
  • Des fonctionnalités restent à faire

Interface web


  • Utilise l'API
  • Liste les fichiers et les drivers
  • Des fonctionnalités manquantes

Le client


  • Nouveau client
  • Ré-utilisation d'une partie d'Onitu
  • Couche de sécurité (Curve)
  • Non fonctionnel pour le moment

Le futur proche



  • Nouvelles règles de configuration
  • Amélioration de l'API
  • Amélioration de l'Interface Web
  • Implémentation du client
  • Authentification OAuth pour l'API
  • Deux nouveaux drivers : Evernote et Flickr

Liens utiles


Onitu - TA Final

By Yannick Péroux

Onitu - TA Final

Soutenance Technique 3 - Février 2014

  • 1,077