From f3b7e90693bf2b51a53a23d98a60bbf04065103a Mon Sep 17 00:00:00 2001 From: Quentin Dufour Date: Wed, 1 Mar 2023 19:45:01 +0100 Subject: [PATCH] rework infrastructures --- content/formations/_index.md | 2 ++ .../infrastructures/{logiciels => }/bottin.md | 16 +++++----- .../{machines => }/developpement.md | 12 ++++---- .../{logiciels => }/diplonat.md | 16 +++++----- content/infrastructures/energie.md | 15 ++++++---- .../infrastructures/{logiciels => }/garage.md | 16 +++++----- .../{logiciels => }/guichet.md | 16 +++++----- .../conception/vie_privee.md => logiciels.md} | 30 ++++++++++++------- content/infrastructures/logiciels/_index.md | 8 ----- .../logiciels/conception/_index.md | 7 ----- .../{machines/_index.md => machines.md} | 14 +++++---- .../{machines => }/production.md | 12 ++++---- content/infrastructures/reseau.md | 15 ++++++---- content/infrastructures/services.md | 11 ++++--- .../infrastructures/{machines => }/support.md | 12 ++++---- .../infrastructures/{logiciels => }/tricot.md | 16 +++++----- content/infrastructures/{machines => }/xp.md | 12 ++++---- content/operations/_index.md | 12 ++++---- content/prise_en_main/_index.md | 2 ++ content/vie_associative/_index.md | 14 +++++---- templates/_nav.html | 28 ++++++++--------- 21 files changed, 157 insertions(+), 129 deletions(-) rename content/infrastructures/{logiciels => }/bottin.md (73%) rename content/infrastructures/{machines => }/developpement.md (89%) rename content/infrastructures/{logiciels => }/diplonat.md (80%) rename content/infrastructures/{logiciels => }/garage.md (92%) rename content/infrastructures/{logiciels => }/guichet.md (70%) rename content/infrastructures/{logiciels/conception/vie_privee.md => logiciels.md} (94%) delete mode 100644 content/infrastructures/logiciels/_index.md delete mode 100644 content/infrastructures/logiciels/conception/_index.md rename content/infrastructures/{machines/_index.md => machines.md} (95%) rename content/infrastructures/{machines => }/production.md (96%) rename content/infrastructures/{machines => }/support.md (94%) rename content/infrastructures/{logiciels => }/tricot.md (78%) rename content/infrastructures/{machines => }/xp.md (92%) diff --git a/content/formations/_index.md b/content/formations/_index.md index 2804f6c..fe473bc 100644 --- a/content/formations/_index.md +++ b/content/formations/_index.md @@ -3,6 +3,8 @@ title: "Se former" description: "Se former" weight: 30 sort_by: "weight" +extra: + parent: 'formations/_index.md' --- Ce manuel vous propose de vous former sur les questions portées par l'association, que ce soit sur l'impact social du numérique ou l'administration d'une machine Linux, avec dans l'idée que vous pourrez vous impliquer d'avantange dans nos activités après, en faisant des ateliers ou en participant à opérer les machines et les logiciels. diff --git a/content/infrastructures/logiciels/bottin.md b/content/infrastructures/bottin.md similarity index 73% rename from content/infrastructures/logiciels/bottin.md rename to content/infrastructures/bottin.md index 71dc8b9..e8dd8e0 100644 --- a/content/infrastructures/logiciels/bottin.md +++ b/content/infrastructures/bottin.md @@ -1,10 +1,12 @@ -+++ -title = "Bottin" -description = "" -date = 2021-11-09T12:40:01.746Z -dateCreated = 2021-11-09T12:39:59.725Z -weight = 10 -+++ +--- +title: "Bottin" +description: "Un annuaire LDAP pour le distribué" +date: 2021-11-09T12:40:01.746Z +dateCreated: 2021-11-09T12:39:59.725Z +weight: 10 +extra: + parent: 'infrastructures/logiciels.md' +--- # Bottin diff --git a/content/infrastructures/machines/developpement.md b/content/infrastructures/developpement.md similarity index 89% rename from content/infrastructures/machines/developpement.md rename to content/infrastructures/developpement.md index 2d5193f..a16a88d 100644 --- a/content/infrastructures/machines/developpement.md +++ b/content/infrastructures/developpement.md @@ -1,8 +1,10 @@ -+++ -title = "Développement" -description = "Développement" -weight = 30 -+++ +--- +title: "Développement" +description: "Développement" +weight: 30 +extra: + parent: 'infrastructures/machines.md' +--- Les serveurs de développement hébergent les outils qui nous permettent de travailler sur le logiciel, les configurations, les tickets, ou la compilation. Ils ne contiennent pas de données personnelles mais peuvent être utilisés pour diff --git a/content/infrastructures/logiciels/diplonat.md b/content/infrastructures/diplonat.md similarity index 80% rename from content/infrastructures/logiciels/diplonat.md rename to content/infrastructures/diplonat.md index 8db6ab2..34a4fe7 100644 --- a/content/infrastructures/logiciels/diplonat.md +++ b/content/infrastructures/diplonat.md @@ -1,10 +1,12 @@ -+++ -title = "Diplonat" -description = "" -date = 2021-11-09T12:42:17.716Z -dateCreated = 2021-11-09T12:42:15.729Z -weight = 30 -+++ +--- +title: "Diplonat" +description: "" +date: 2021-11-09T12:42:17.716Z +dateCreated: 2021-11-09T12:42:15.729Z +weight: 30 +extra: + parent: 'infrastructures/logiciels.md' +--- # Diplonat diff --git a/content/infrastructures/energie.md b/content/infrastructures/energie.md index d98f331..2728825 100644 --- a/content/infrastructures/energie.md +++ b/content/infrastructures/energie.md @@ -1,9 +1,12 @@ -+++ -title = "Énergie" -description = "Consommation électrique" -date = 2021-11-09T12:54:33.129Z -dateCreated = 2021-11-09T12:54:30.985Z -+++ +--- +title: "Énergie" +description: "Consommation électrique" +date: 2021-11-09T12:54:33.129Z +dateCreated: 2021-11-09T12:54:30.985Z +weight: 20 +extra: + parent: 'infrastructures/_index.md' +--- # Notre avis diff --git a/content/infrastructures/logiciels/garage.md b/content/infrastructures/garage.md similarity index 92% rename from content/infrastructures/logiciels/garage.md rename to content/infrastructures/garage.md index 81d8e04..7f28eae 100644 --- a/content/infrastructures/logiciels/garage.md +++ b/content/infrastructures/garage.md @@ -1,10 +1,12 @@ -+++ -title = "Garage" -description = "" -date = 2021-11-09T12:42:59.273Z -dateCreated = 2021-11-09T12:42:57.245Z -weight = 40 -+++ +--- +title: "Garage" +description: "" +date: 2021-11-09T12:42:59.273Z +dateCreated: 2021-11-09T12:42:57.245Z +weight: 40 +extra: + parent: 'infrastructures/logiciels.md' +--- # Garage diff --git a/content/infrastructures/logiciels/guichet.md b/content/infrastructures/guichet.md similarity index 70% rename from content/infrastructures/logiciels/guichet.md rename to content/infrastructures/guichet.md index 6a1c17d..684f410 100644 --- a/content/infrastructures/logiciels/guichet.md +++ b/content/infrastructures/guichet.md @@ -1,10 +1,12 @@ -+++ -title = "Guichet" -description = "" -date = 2021-11-09T12:39:27.819Z -dateCreated = 2021-11-09T12:39:25.808Z -weight = 20 -+++ +--- +title: "Guichet" +description: "" +date: 2021-11-09T12:39:27.819Z +dateCreated: 2021-11-09T12:39:25.808Z +weight: 20 +extra: + parent: 'infrastructures/logiciels.md' +--- # Guichet diff --git a/content/infrastructures/logiciels/conception/vie_privee.md b/content/infrastructures/logiciels.md similarity index 94% rename from content/infrastructures/logiciels/conception/vie_privee.md rename to content/infrastructures/logiciels.md index 76520eb..f72013d 100644 --- a/content/infrastructures/logiciels/conception/vie_privee.md +++ b/content/infrastructures/logiciels.md @@ -1,15 +1,23 @@ -+++ -title = "Vie Privée" -description = "Comment mettre en oeuvre des systèmes prenant en compte la vie privée à leur origine ?" -date = 2021-11-18T13:57:51.695Z -dateCreated = 2021-11-18T10:42:00.744Z -+++ +--- +title: "Logiciels" +description: "Logiciels" +weight: 90 +sort_by: "weight" +extra: + parent: 'infrastructures/_index.md' +--- -# Vie privée +Cette section recense les logiciels développés par Deuxfleurs pour les besoins spécifiques de son infra. + +# Principes de conception + +Nou essayons de suivre plusieurs principes pour une conception qui correspond au besoin tout en ayant un ensemble de logiciels homogènes. + +## Vie privée Que ce soit à l'intérieur ou l'extérieur de l'association, des demandes pour d'avantage de garanties sur la vie privée ont été formulées. -## Propriétés recherchées +### Propriétés recherchées Quelques propriétés en vrac qu'on peut, ou ne pas, désirer : @@ -23,7 +31,7 @@ Quelques propriétés en vrac qu'on peut, ou ne pas, désirer : - Je ne veux pas que le contenu de mes emails et pièces jointes soit lisible (eg. le doc que j'ai joint) - Je ne veux pas que les métadonnées autour de mon message soient accessibles (eg. le destinaire, l'expéditeur, l'horodatage, le client email utilisé, le sujet du mail, le dossier dans lequel il est stocké) - - Je ne veux pas que les métadonnées de communication soient accessibles (eg. quand je me connecte au service email, depuis où, quand j'intéragis sur le réseau), ces données permettent parfois d'inférer des métadonnées sur le protocol (destinaires, présence de pièce jointe, + - Je ne veux pas que les métadonnées de communication soient accessibles (eg. quand je me connecte au service email, depuis où, quand j'intéragis sur le réseau), ces données permettent parfois d'inférer des métadonnées sur le protocol (destinaires, présence de pièce jointe, ### Synchronisation et collaboration sur des fichiers - Je ne veux pas que le contenu de mes fichiers soit accessible @@ -44,7 +52,7 @@ Quelques attaquants que l'on peut, ou ne pas, considérer : - Personne externe physique (eg. voleur) - Regroupement d'acteurs (eg. opérateurs internet, externe physique ET internet) - Utilisateurs (eg. pas de chiffrement sur son téléphone) - + ## Un exemple de ce qu'on pourrait faire Prenons l'exemple de la messagerie instantanée. Pour l'instant, on peut définir les types de réseaux suivants : @@ -83,4 +91,4 @@ Concernant la seconde approche, celle-ci semble beaucoup plus à notre portée : ## Ressources - https://about.psyc.eu/Federation et https://about.psyc.eu/PSYC2 - - Définition d'un mixnet : https://www.youtube.com/watch?v=dQtk0NcTseg \ No newline at end of file + - Définition d'un mixnet : https://www.youtube.com/watch?v=dQtk0NcTseg diff --git a/content/infrastructures/logiciels/_index.md b/content/infrastructures/logiciels/_index.md deleted file mode 100644 index f2e2528..0000000 --- a/content/infrastructures/logiciels/_index.md +++ /dev/null @@ -1,8 +0,0 @@ -+++ -title = "Logiciels" -description = "Logiciels" -weight = 90 -sort_by = "weight" -+++ - -Cette section recense les logiciels développés par Deuxfleurs pour les besoins spécifiques de son infra. diff --git a/content/infrastructures/logiciels/conception/_index.md b/content/infrastructures/logiciels/conception/_index.md deleted file mode 100644 index 756e240..0000000 --- a/content/infrastructures/logiciels/conception/_index.md +++ /dev/null @@ -1,7 +0,0 @@ -+++ -title = "Conception" -description = "Conception" -weight = 90 -+++ - -Cette section recense les principes de conception que Deuxfleurs applique pour les logiciels qu'elle développe. diff --git a/content/infrastructures/machines/_index.md b/content/infrastructures/machines.md similarity index 95% rename from content/infrastructures/machines/_index.md rename to content/infrastructures/machines.md index 84fc012..d91d10b 100644 --- a/content/infrastructures/machines/_index.md +++ b/content/infrastructures/machines.md @@ -1,9 +1,11 @@ -+++ -title = "Serveurs" -description = "Serveurs" -weight = 10 -sort_by = "weight" -+++ +--- +title: "Serveurs" +description: "Serveurs" +weight: 40 +sort_by: "weight" +extra: + parent: 'infrastructures/_index.md' +--- # Rôles diff --git a/content/infrastructures/machines/production.md b/content/infrastructures/production.md similarity index 96% rename from content/infrastructures/machines/production.md rename to content/infrastructures/production.md index 6f65752..7b0ad5d 100644 --- a/content/infrastructures/machines/production.md +++ b/content/infrastructures/production.md @@ -1,8 +1,10 @@ -+++ -title = "Production" -description = "Production" -weight = 10 -+++ +--- +title: "Production" +description: "Production" +weight: 40 +extra: + parent: 'infrastructures/machines.md' +--- Les serveurs de productions sont ceux qui font tourner les services accédés par les usager·es (eg. Plume, Matrix, Cryptpad). Si ils sont innaccessibles, alors les services ne fonctionnent plus. Et si une personne malveillante y accède, elle peut avoir accès à des données diff --git a/content/infrastructures/reseau.md b/content/infrastructures/reseau.md index 8ca43a4..3e38f6f 100644 --- a/content/infrastructures/reseau.md +++ b/content/infrastructures/reseau.md @@ -1,9 +1,12 @@ -+++ -title = "Réseau" -description = "Réseau" -date = 2021-11-09T12:55:03.277Z -dateCreated = 2021-11-09T12:55:01.156Z -+++ +--- +title: "Réseau" +description: "Réseau" +date: 2021-11-09T12:55:03.277Z +dateCreated: 2021-11-09T12:55:01.156Z +weight: 30 +extra: + parent: 'infrastructures/_index.md' +--- Cette page regroupe un résumé de tous les problèmes que vous pourriez rencontrer en voulant faire de l'auto hébergement avec "votre connexion internet". diff --git a/content/infrastructures/services.md b/content/infrastructures/services.md index c01178c..87ce29a 100644 --- a/content/infrastructures/services.md +++ b/content/infrastructures/services.md @@ -1,7 +1,10 @@ -+++ -title = "Services" -description = "Annuaire des services hébergés chez Deuxfleurs" -+++ +--- +title: "Services" +description: "Annuaire des services hébergés chez Deuxfleurs" +weight: 10 +extra: + parent: 'infrastructures/_index.md' +--- Cette page tente de recenser de façon exhaustive l'ensemble des services qui fonctionnent actuellement sur les machines de Deuxfleurs, dans les différents diff --git a/content/infrastructures/machines/support.md b/content/infrastructures/support.md similarity index 94% rename from content/infrastructures/machines/support.md rename to content/infrastructures/support.md index d816fae..e31e282 100644 --- a/content/infrastructures/machines/support.md +++ b/content/infrastructures/support.md @@ -1,8 +1,10 @@ -+++ -title = "Support" -description = "Serveurs en support" -weight = 20 -+++ +--- +title: "Support" +description: "Serveurs en support" +weight: 40 +extra: + parent: 'infrastructures/machines.md' +--- Les serveurs de support servent pour les sauvegardes et la supervision des serveurs de production (eg. Grafana, Minio). De par leur rôle, ils participent au bon fonctionnement de la production. diff --git a/content/infrastructures/logiciels/tricot.md b/content/infrastructures/tricot.md similarity index 78% rename from content/infrastructures/logiciels/tricot.md rename to content/infrastructures/tricot.md index dcb0007..0c83901 100644 --- a/content/infrastructures/logiciels/tricot.md +++ b/content/infrastructures/tricot.md @@ -1,10 +1,12 @@ -+++ -title = "Tricot" -description = "" -date = 2022-01-24T16:33:16.731Z -dateCreated = 2022-01-24T16:32:53.056Z -weight = 50 -+++ +--- +title: "Tricot" +description: "" +date: 2022-01-24T16:33:16.731Z +dateCreated: 2022-01-24T16:32:53.056Z +weight: 50 +extra: + parent: 'infrastructures/logiciels.md' +--- # Tricot diff --git a/content/infrastructures/machines/xp.md b/content/infrastructures/xp.md similarity index 92% rename from content/infrastructures/machines/xp.md rename to content/infrastructures/xp.md index 853e222..279f66f 100644 --- a/content/infrastructures/machines/xp.md +++ b/content/infrastructures/xp.md @@ -1,8 +1,10 @@ -+++ -title = "Expérimentation" -description = "Expérimentation" -weight = 40 -+++ +--- +title: "Expérimentation" +description: "Expérimentation" +weight: 40 +extra: + parent: 'infrastructures/machines.md' +--- Les serveurs d'expérimentation servent à tester les nouvelles configurations, les nouveaux logiciels, et le nouveau matériel. Ils permettent aux opérateur·ices de se familiariser avec leurs modifications et de minimiser l'impact d'un changement sur les serveurs de production, diff --git a/content/operations/_index.md b/content/operations/_index.md index 7ab49f2..5ccc5a2 100644 --- a/content/operations/_index.md +++ b/content/operations/_index.md @@ -1,9 +1,9 @@ -+++ -title = "Opérations" -description = "Opérations" -weight = 100 -sort_by = "weight" -+++ +--- +title: "Opérations" +description: "Opérations" +weight: 100 +sort_by: "weight" +--- Ce manuel recense notre savoir-faire technique, il a pour but d'accompagner nos opérateur·ices dans la réalisation de leurs tâches. diff --git a/content/prise_en_main/_index.md b/content/prise_en_main/_index.md index 635e2d7..901f641 100644 --- a/content/prise_en_main/_index.md +++ b/content/prise_en_main/_index.md @@ -3,6 +3,8 @@ title: "Prise en main" description: "Prise en main" weight: 10 sort_by: "weight" +extra: + parent: 'prise_en_main/_index.md' --- Ce manuel vous accompagne dans la découverte de nos outils. diff --git a/content/vie_associative/_index.md b/content/vie_associative/_index.md index bd0a57f..718aabf 100644 --- a/content/vie_associative/_index.md +++ b/content/vie_associative/_index.md @@ -1,8 +1,10 @@ -+++ -title = "Vie associative" -description = "Vie associative" -weight = 50 -sort_by = "weight" -+++ +--- +title: "Vie associative" +description: "Vie associative" +weight: 50 +sort_by: "weight" +extra: + parent: 'vie_associative/_index.md' +--- Ce manuel traite de tout ce qui concerne l'association, comme ses aspects légaux, les délibérations, ou l'organisation des personnes. diff --git a/templates/_nav.html b/templates/_nav.html index b183a57..0ab8ac7 100644 --- a/templates/_nav.html +++ b/templates/_nav.html @@ -9,6 +9,7 @@ {{ nav::inner_nav(root=target, current=target) }} {% endmacro %} +{# -------------------------- #} {# -------------------------- #} {# (Private) Shared+root logic to build the menu #} @@ -34,7 +35,7 @@ {% endif %} {% endmacro %} -{# On small screens, like a smartphone, hide the menu behind an hamburger icon #} +{# (Private) On small screens, like a smartphone, hide the menu behind an hamburger icon #} {% macro hamburger(root) %} {% endmacro %} -{# Build a breadcrumb for the page #} +{# (Private) Build a breadcrumb for the page #} {# It's ugly because this is the hacky part of the project #} {% macro breadcrumb(corpus, root, target) %}{% if 'parent' in target.extra and target.extra.parent != root %}{% set new_target = get_page(path=target.extra.parent) %}{{ nav::breadcrumb(corpus=corpus, root=root, target=new_target) }}:{{ new_target.relative_path }}{% endif %}{% endmacro %} +{# (Private) Render a list menu (this is the simple fallback when extra.parent is not defined #} {% macro list(list, selected) %} {% for page in list %} {% set is_selected = page.relative_path == selected.relative_path %} @@ -56,26 +58,27 @@ {% endfor %} {% endmacro %} -{# Tree menu rendering #} +{# (Private) Tree menu rendering; this function is recursive #} +{# this function takes a breadcrumb to know which part of the menu must be unfolded #} {% macro tree(tree, cursor, selected, crumb) %} {% for page in tree | get(key=cursor) %} {% set is_selected = page.relative_path == selected.relative_path %}
- {# LINK WITH SUBSECTION #} + {# Link with a (possible) subsection #} {% if page.relative_path in tree %} + {# Display link as a section #} {{ nav::link(page=page, is_selected=is_selected, is_parent=true) }} + + {# Should we unroll this part of the tree? #} {% if page.relative_path in crumb or is_selected %} {% endif %} - {# SIMPLE LINK #} + {# Simple link, ie. a leaf of the tree #} {% else %} {{ nav::link(page=page, is_selected=is_selected, is_parent=false) }} {% endif %} @@ -83,10 +86,7 @@ {% endfor %} {% endmacro %} -{% macro subsection() %} - -{% endmacro %} - +{# (Private) Render a single link #} {% macro link(page, is_selected, is_parent) %} {% if is_selected %}{% endif %}