Documents pour l'inventaire des orgues.

reprise-technique.org 8.4KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176
  1. #+TITLE: Inventaire des orgues - reprise technique
  2. #+SETUPFILE: theme-readtheorg-local.setup
  3. #+AUTHOR: Ministère de la Culture
  4. #+EMAIL: contact@inventaire-des-orgues.org
  5. #+OPTIONS: toc:t
  6. #+DATE: 12 octobre 2017
  7. #+LANGUAGE: fr
  8. *Version 0.1*
  9. Si vous voyez une erreur dans ce document, n’hésitez pas à me la
  10. signaler [[https://git.inventaire-des-orgues.fr/bzg/ido-docs/issues][en ouvrant un ticket]].
  11. * Hébergement de la plate-forme
  12. L’application principale est hébergée sur une machine virtuelle louée
  13. chez [[digitalocean.com][DigitalOcean]] et physiquement située à Amsterdam.
  14. ** Sauvegarde des données
  15. Le service DigitalOcean permet une sauvegarde complète de la machine
  16. toutes les semaines.
  17. * Langages, frameworks et système de base de données
  18. ** Langages et frameworks
  19. Le logiciel faisant fonctionner l’application d’inventaire des orgues
  20. est écrit en [[https://clojure.org][Clojure]] pour la partie /backend/ et en [[https://github.com/clojure/clojurescript][ClojureScript]] pour
  21. la partie /frontend/. Clojure et ClojureScript sont des langages LISP
  22. de la famille des langages fonctionnels. Pour le frontend, le code
  23. utilise le framework [[https://github.com/Day8/re-frame][re-frame]], s’appuyant sur la bibliothèque [[https://reactjs.org][React.js]]
  24. pour développer des /Single Page Application/.
  25. ** Système de base de données
  26. Le système de base de données utilisé est [[http://www.datomic.com][Datomic]].
  27. Datomic et Clojure sont développés et maintenus par l’entreprise
  28. [[https://cognitect.com/][Cognitect]] et des centaines de contributeurs.
  29. ** Déploiement
  30. Le code source Clojure et ClojureScript est compilé en Java et déployé
  31. sous forme de fichier =.jar= depuis le serveur.
  32. * Liste des logiciels utilisés
  33. - [[https://www.discourse.org][Discourse]] :: Logiciel libre de forum.
  34. - [[https://www.docker.com/][Docker]] :: Logiciel libre pour « containeriser » des services. En
  35. l’occurrence, Piwik, Discourse et Nextcloud sont lancés sur le
  36. serveur depuis docker.
  37. - [[https://gogs.io/][Gogs]] :: Logiciel libre pour publier une forge de projets sous git.
  38. - [[https://jekyllrb.com][Jekyll]] :: Logiciel libre pour construire des blogs en HTML statique.
  39. Nécessaire de connaître le langage [[https://fr.wikipedia.org/wiki/Markdown][Markdown]] pour écrire.
  40. - [[https://letsencrypt.org/][Letsencrypt]] :: Service gratuit pour l’obtention de certicats SSL/TLS
  41. valides, utilisé pour le passage en =https= de tous les services.
  42. - [[https://nextcloud.com/][Nextcloud]] :: Logiciel libre pour le partage de fichiers en ligne.
  43. - [[https://piwik.org/][Piwik]] :: Logiciel libre pour la collecte de données sur les visites
  44. d’un site web.
  45. * Dépôts de code
  46. Liste des dépôts disponibles depuis [[git.inventaire-des-orgues.fr][la forge]] du projet :
  47. - [[https://git.inventaire-des-orgues.fr/bzg/legito][legito]] :: Code source de l’application d’inventaire des orgues.
  48. - [[https://git.inventaire-des-orgues.fr/bzg/rbc-owl][rbc-owl]] :: Code source (=rbc-owl.org= et =rbc-owl.clj=) pour la
  49. génération d’un fichier =.owl= correspondant au référentiel HADOC.
  50. - [[https://git.inventaire-des-orgues.fr/bzg/ox-skos][ox-skos]] :: Code source pour un outil de conversion de fichiers
  51. écrits en .org vers le format =SKOS= utilisé pour l’import de
  52. vocabulaire dans [[https://ginco.culture.fr][GINCO]].
  53. - [[https://git.inventaire-des-orgues.fr/bzg/ghislaine][ghislaine]] :: Code source pour une application de conversion d’un
  54. fichier d’export Gertrude =.zip= vers un mini-site web présentant
  55. les données du fichier.
  56. - [[https://git.inventaire-des-orgues.fr/bzg/clj-rgf93-wgs84][clj-rgf93-wgs84]] :: Code source pour une bibliothèque de conversion
  57. des coordonnées Lambert93 en WGS84.
  58. - [[https://git.inventaire-des-orgues.fr/bzg/ido-docs][ido-docs]] :: Code source des informations disponibles sur le site
  59. https://docs.inventaire-des-orgues.fr
  60. - [[https://git.inventaire-des-orgues.fr/bzg/ido-blog][ido-blog]] :: (Dépôt privé) Code source pour le blog publié sur
  61. https://blog.inventaire-des-orgues.fr
  62. - [[https://git.inventaire-des-orgues.fr/bzg/ido-web][ido-web]] :: (Dépôt privé) Code source pour le site publié sur
  63. https://www.inventaire-des-orgues.fr
  64. * Services web externes
  65. ** Services utilisés en dehors du logiciel
  66. - gandi.net :: service de location de noms de domaine.
  67. - digitalocean.com :: service de location de machines virtuelles.
  68. - mailchimp.com :: service pour la collecte d’adresses électroniques,
  69. ainsi que la rédaction et le suivi de lettres d’information.
  70. - flipmail.co :: service pour faire suivre le contenu d’un formulaire
  71. web vers une adresse email, utilisé sur le site de présentation
  72. principal.
  73. - tawk.to :: service de discussion en ligne, utilisé sur les sites
  74. statiques du projet (www/blog/docs).
  75. ** Services utilisés par l’application
  76. - mailgun.com :: service d’envoi d’emails utilisé par l’application
  77. pour les emails transactionnels, par exemple lors de la
  78. confirmation lors de l’inscription d’un utilisateur.
  79. - filestack.com :: service d’hébergement de fichiers, utilisé par
  80. l’application lorsque les contributeurs envoient des fichiers
  81. d’images ou autres documents.
  82. ** Noms de domaine et adresses email utilisées
  83. - inventaire-des-orgues.fr :: nom de domaine principal, utilisé pour
  84. le portail et les services associés. Pas de service mail actif
  85. sur ce nom de domaine depuis gandi.net. La zone DNS est gérée
  86. par les serveurs DNS de digitalocean : =ns1.digitalocean.com=.
  87. Tous les emails envoyés à =@inventaire-des-orgues.fr= sont pour
  88. l’instant redirigés vers l’adresse du développeur, depuis le
  89. service =mailgun.com=.
  90. - inventaire-des-orgues.org :: nom de domaine secondaire, utilisé par
  91. https://forum.inventaire-des-orgues.fr pour la passerelle email,
  92. i.e. la possibilité de répondre par email à un sujet du forum.
  93. Deux adresses email configurées depuis le compte gandi.net :
  94. =forum@inventaire-des-orgues.org= utilisée pour le forum, et
  95. =contact@inventaire-des-orgues.org= utilisée pour flipmail.co et
  96. l’envoi d’information sur le formulaire du site principal.
  97. ** Synthèse des services et coûts associés
  98. | Service | Coût mensuel ($) | Coût annuel ($) | Type d’abonnement |
  99. |------------------+------------------+-----------------+-------------------------------------|
  100. | digitalocean.com | 44 | 528 | VM 4GB RAM / 60GB Disk (Debian 8.7) |
  101. | filestack.com | 49 | 588 | Starter application (8,000 Uploads) |
  102. | flipmail.co | 0 | 0 | Aucun |
  103. | mailchimp.com | 0 | 0 | À la demande |
  104. | mailgun.com | 0 | 0 | À la demande |
  105. | tawk.to | 0 | 0 | À la demande |
  106. |------------------+------------------+-----------------+-------------------------------------|
  107. | Total | 93 | 1116 | |
  108. #+TBLFM: @8$2=vsum(@2..@-1)::@8$3=vsum(@2..@-1)
  109. ** Synthèse des étapes nécessaires au tranfert
  110. | Service | Transfert |
  111. |------------------+---------------------------------------------------|
  112. | gandi.net | Transfert du nom de domaine |
  113. | mailgun.com | Changement d’adresse de contact et de facturation |
  114. | mailchimp.com | Changement d’adresse de contact et de facturation |
  115. | digitalocean.com | Changement d’adresse de contact et de facturation |
  116. | filestack.com | Changement d’adresse de contact et de facturation |
  117. * Domaines, sous-domaines et services associés
  118. | Sous-domaine | Service | Logiciel associé |
  119. |-----------------------------------+-------------------+------------------|
  120. | blog.inventaire-des-orgues.fr | Blog du projet | Jekyll |
  121. | fichiers.inventaire-des-orgues.fr | Fichiers partagés | Nextcloud |
  122. | forum.inventaire-des-orgues.fr | Forum | Discourse |
  123. | git.inventaire-des-orgues.fr | Dépôt de code | gogs |
  124. | www.inventaire-des-orgues.fr | Portail du projet | Jekyll |