aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorQuentin Dufour <quentin@deuxfleurs.fr>2023-03-01 19:45:01 +0100
committerQuentin Dufour <quentin@deuxfleurs.fr>2023-03-01 19:45:01 +0100
commitf3b7e90693bf2b51a53a23d98a60bbf04065103a (patch)
tree2480049d82c42383386180c69e2dec672f801026
parentf9e9c167191e71167252fd2f03c08757ed7fef0b (diff)
downloadguide.deuxfleurs.fr-f3b7e90693bf2b51a53a23d98a60bbf04065103a.tar.gz
guide.deuxfleurs.fr-f3b7e90693bf2b51a53a23d98a60bbf04065103a.zip
rework infrastructures
-rw-r--r--content/formations/_index.md2
-rw-r--r--content/infrastructures/bottin.md (renamed from content/infrastructures/logiciels/bottin.md)16
-rw-r--r--content/infrastructures/developpement.md (renamed from content/infrastructures/machines/developpement.md)12
-rw-r--r--content/infrastructures/diplonat.md (renamed from content/infrastructures/logiciels/diplonat.md)16
-rw-r--r--content/infrastructures/energie.md15
-rw-r--r--content/infrastructures/garage.md (renamed from content/infrastructures/logiciels/garage.md)16
-rw-r--r--content/infrastructures/guichet.md (renamed from content/infrastructures/logiciels/guichet.md)16
-rw-r--r--content/infrastructures/logiciels.md (renamed from content/infrastructures/logiciels/conception/vie_privee.md)30
-rw-r--r--content/infrastructures/logiciels/_index.md8
-rw-r--r--content/infrastructures/logiciels/conception/_index.md7
-rw-r--r--content/infrastructures/machines.md (renamed from content/infrastructures/machines/_index.md)14
-rw-r--r--content/infrastructures/production.md (renamed from content/infrastructures/machines/production.md)12
-rw-r--r--content/infrastructures/reseau.md15
-rw-r--r--content/infrastructures/services.md11
-rw-r--r--content/infrastructures/support.md (renamed from content/infrastructures/machines/support.md)12
-rw-r--r--content/infrastructures/tricot.md (renamed from content/infrastructures/logiciels/tricot.md)16
-rw-r--r--content/infrastructures/xp.md (renamed from content/infrastructures/machines/xp.md)12
-rw-r--r--content/operations/_index.md12
-rw-r--r--content/prise_en_main/_index.md2
-rw-r--r--content/vie_associative/_index.md14
-rw-r--r--templates/_nav.html28
21 files changed, 157 insertions, 129 deletions
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
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
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
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
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
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
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
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
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
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
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
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
@@ -10,6 +10,7 @@
{% endmacro %}
{# -------------------------- #}
+{# -------------------------- #}
{# (Private) Shared+root logic to build the menu #}
{% macro inner_nav(root, current) %}
@@ -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) %}
<input id="menu-toggle" type="checkbox" />
<label class='menu-button-container' for="menu-toggle">
@@ -43,10 +44,11 @@
</label>
{% 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 %}
<div class="toc-item">
- {# 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 %}
<div class="nav-subsection">
- {% set ncrumb = crumb | slice(start=1) %}
- {% set ncursor = page.relative_path %}
- {% if ncursor in tree %}
- {{ nav::tree(tree=tree, cursor=ncursor, selected=selected, crumb=ncrumb) }}
- {% endif %}
+ {# do the recursive call #}
+ {{ nav::tree(tree=tree, cursor=page.relative_path, selected=selected, crumb=crumb) }}
</div>
{% 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) %}
<a class="subtext" href="{{page.permalink | safe}}">
{% if is_selected %}<b>{% endif %}