Skip to content
Snippets Groups Projects
Commit 7ef2cdf5 authored by mazenovi's avatar mazenovi
Browse files

add student projects

parent 72066aa8
No related branches found
No related tags found
No related merge requests found
Pipeline #
Showing
with 451 additions and 190 deletions
Title: Interview dans La Montagne au sujet du ransomware WannaCry
Date: 2017-05-16 10:27
Category: <i class='fa fa-bullhorn' aria-hidden='true'></i> Blog
<div style="text-align: center; width: 100%">
<img src="../images/presse/wannacry.jpg" />
</div>
Title: android-www
Date: 2017-09-20 10:30
Category: <i class='fa fa-graduation-cap' aria-hidden='true'></i> &Eacute;tudiants
Tags: Projets tutorés, android
## Contexte
L'idée première est de spoofer la page de login d'un Hotspot WIFI, c'est à dire de servir à partir d'un téléphone Android une page web imitant en tout point celle d'un hotspot wifi afin de collecter les identifiants des utilisateurs à proximité qui s'y connecteront.
Ce projet consiste essentiellement à configurer un serveur web sur un téléphone android qui soit accessible à partir d'un périphérique à proximité.
## Rendu attendu
Vous devez rendre un dépot git avec au minimum
* un code source implémentant les fonctionnalités demandées
* un apk permettant de déployer le service
* un fichier `README.md` documentant l'installtion et l'utilisation du service
* un rapport détaillé du travail réalisé
## Technologies
* [HTTP](https://fr.wikipedia.org/wiki/Hypertext_Transfer_Protocol), [Android](https://fr.wikipedia.org/wiki/Android)
## Points à considérer
* les pré-requis
* root
* librairies
* la sécurité
* la facilité de déploiment de l'application
* les possibilités d'interactions
* possibilité de technologies server-side
* bases de données ...
## Liens
* https://gbatemp.net/threads/android-app-for-self-hosting-exploit-5-5-1.425496/
Title: CKEditor for gitlab
Date: 2017-09-20 10:55
Category: <i class='fa fa-graduation-cap' aria-hidden='true'></i> &Eacute;tudiants
Tags: Projets tutorés, www, Tor
## Contexte
[GitLab](https://about.gitlab.com/) est une forge logicielle.
Cette forge présente notamment une interface web riche en fonctionnalités.
Il est possible au niveau d'un dépôt d'éditer ou de créer un fichier texte, ou encore d'uploader un fichier PDF.
Chaque action donne lieu à un commit sur le dépôt.
Ce projet vise à intégrer au mieux CKEditor
Une première phase consistera en la mise en place d'un site web afin qu'il soit viisble sur le réseau Tor, dans un environnement que vous maquetterez.
Vagrant est conseillé pour la partie maquette et virtualisation.
Dans une seconde phase la mise en ligne sera maquetter dans un environnement ispconfig.
Un exemple de maquettage de cet environnement est disponible
## Points à considérer
* se documenter sur la mailleure façon d'implémenter les fonctionnalités
* plugin gitlab?
* plugin firefox / chrome?
* service stand alone?
* utilisation de la commande git?
* utilisation de l'api gitlab?
* sécurité
## Rendu attendu
* Vous devez rendre un dépot git avec au minimum
* un code source implémentant les fonctionnalités demandées
* un fichier `README.md` documentant l'installation, la configuration et l'utilisation du service
* un rapport détaillé du travail réalisé
Title: G-Box
Date: 2017-09-20 10:15
Category: <i class='fa fa-graduation-cap' aria-hidden='true'></i> &Eacute;tudiants
Tags: Projets tutorés, sécurité
## Contexte
La G-box est un routeur avec des fonctionnalités de sécurité, elle permet notamment de filtrer les flux sortant à des fins de contrôle parental ou de filtre anti-phishing.
Tout le trafic entre les ordinateurs du réseau local et internet doit passer par la G-box.
la G-box a pour de but valider ou non le trafic.
Elle utilise pour se faire 3 stratégies
* les DNS ([OpenDNS Family Shield](https://www.opendns.com/home-internet-security/) pour le contrôle parentale par exemple)
* l'inspection d'url
* l'inspection de contenu
La G-Box est un routeur domestique qui doit nécessiter le moins de configuration possible. Elle ne nécessite notamment aucune intervention sur les postes clients
La configuration du filtrage doit pouvoir se faire de manière sécurisée au travers d'une interface web.
Idéalement c'est un boîtier qui présente donc au moins 2 interfaces:
* l'interface publique, que vous connecterez sur la box du FAI
* la ou les interfaces privées, sur lesquelles viennent se connecter les appareils domestiques (PC fixe, laptop, tablette, téléhpone)
Pour le prototype de la G-Box le [raspberry pi 3b](https://www.raspberrypi.org/products/raspberry-pi-3-model-b/) est pressentie.
L'objectif de ce projet est d'arriver à une PoC (Proof Of Concept) permettant de valider l'implémentation des fonctions de filtrage.
Un ou deux raspberry vous seront fournis pour vos tests.
## Fonctionnalités à implémenter
* gestion d'une liste de sites autorisés / interdits par périphériques
* gestion de la liste de mots clés autorisés / interdits par périphériques
* gestion du DNS par périphériques
* système de notification lorsqu'une tentative d'outre passer une règle est détectée
## Résultat attendu
un dépôt sur [https://gitlab.isima.fr](https://gitlab.isima.fr) contenant
* une image de système déployable sur un raspberry pi
* un script de provisioning permettant le déploiement des fonctionnalités implémentées
* un fichier `README.md` documentant l'installation, la configuration et l'utilisation du service
* un rapport détaillé du travail réalisé
## Technologies
* [HTTP](https://fr.wikipedia.org/wiki/Hypertext_Transfer_Protocol), [SSL](https://fr.wikipedia.org/wiki/SSL), [Raspberry Pi](https://www.raspberrypi.org/), [Raspbian](https://raspbian-france.fr/), [Réseau informatique](https://fr.wikipedia.org/wiki/R%C3%A9seau_informatique)
## Points à considérer
* la sécurité globale du système
* accès physique
* MAC spoofing
* configuraiton manuelle des DNS sur les postes clients
* gestion des connection SSL en mode filtrage par urls ou par mots clés
Title: gitlab-issue
Date: 2017-09-20 10:25
Category: <i class='fa fa-graduation-cap' aria-hidden='true'></i> &Eacute;tudiants
Tags: Projets tutorés, www, git
## Contexte
[GitLab](https://about.gitlab.com/) est une forge logicielle.
La version [GitLab CE](https://gitlab.com/gitlab-org/gitlab-ce) présente [une API REST](https://docs.gitlab.com/ee/api/README.html).
Il s'agit ici d'implémenter un système de feedback [utilisant la partie de l'API consacrée à la gestion de tickets](https://docs.gitlab.com/ee/api/issues.html) sous forme d'un bundle [symfony](https://symfony.com/).
le bundle devra
* gérer l'authentification par utilisateur gitlab
* gérer l'authentification avec une seule clé d'api permettant à des utilisateurs anonyme de déposer aussi une issue
* gérer les issues par utilisateurs
* s'intégrer intelligemment à une application symfony
## Résultat attendu
un dépôt sur [https://gitlab.isima.fr](https://gitlab.isima.fr) contenant
* le code source implémentant les fonctionnalités demandées
* un fichier `README.md` documentant l'installation, la configuration et l'utilisation du service
* un rapport détaillé du travail réalisé
## Technologies
* [HTTP](https://fr.wikipedia.org/wiki/Hypertext_Transfer_Protocol), [PHP](http://php.net/manual/fr/intro-whatis.php), [Symfony](https://symfony.com/), [Vagrant](https://www.vagrantup.com/), [GitLab](https://about.gitlab.com/)
## Points à considérer
* la qualité du code notamment en suivant les bests practices symfony
* la sécurité
* la facilité de déploiment dans une application
* l'intégration du bundle dans une application symfony
Title: ISIMA Tor
Date: 2017-09-20 10:50
Category: <i class='fa fa-graduation-cap' aria-hidden='true'></i> &Eacute;tudiants
Tags: Projets tutorés, www, Tor
## Contexte
le site https://isima.fr souhaite être présent sur le réseau Tor.
Une première phase consistera en la mise en place d'un site web afin qu'il soit visible sur le réseau Tor, dans un environnement que vous maquetterez.
Dans une seconde phase la mise en ligne sera maquettée dans un environnement [ispconfig](https://www.ispconfig.org/)
## Résultat attendu
un dépôt sur [https://gitlab.isima.fr](https://gitlab.isima.fr) contenant
* le code source implémentant les fonctionnalités demandées
* un fichier `README.md` documentant l'installation, la configuration et l'utilisation du service
* un rapport détaillé du travail réalisé
## Rendu attendu
Vous devez rendre un dépot git avec au minimum
* un code source implémentant les fonctionnalités demandées
* un fichier `README.md` documentant l'installation, la configuration et l'utilisation du service
* un rapport détaillé du travail réalisé
## Points à considérer
* sécurité
* reproductibilité et industrialisation
* compréhesion des protocoles utilisés
Title: ispcli
Date: 2017-09-20 10:20
Category: <i class='fa fa-graduation-cap' aria-hidden='true'></i> &Eacute;tudiants
Tags: Projets tutorés, www
## Contexte
[ISPConfig](https://www.ispconfig.org/) est un outil de gestion de serveur (web, mail, dns) via une interface web.
[une API SOAP](http://docs.ispconfig.org/development/remote-api/) est disponible depuis la version 3.
Ce projet vise à implémenter un client d'api en ligne de commande.
A titre d'exemple [python-gitlab](http://python-gitlab.readthedocs.io/en/stable/cli.html) est un client d'API pour gitlab.
Les commandes à implémenter concernent toutes les actions de
* configuration du serveur
* gestion des clients
* gestion des hotes web
* gestion des utilisateurs ssh
* gestion des bases de données
* gestion des utilisateurs bases de données
* gestion des entréees DNS
* gestion des comptes mail
Seule la partie gestion de la virtualisation pourra être mise de côté.
## Résultat attendu
un dépôt sur [https://gitlab.isima.fr](https://gitlab.isima.fr) contenant
* le code source implémentant les fonctionnalités demandées
* un fichier `README.md` documentant l'installation, la configuration et l'utilisation du service
* un rapport détaillé du travail réalisé
## Technologies
* [HTTP](https://fr.wikipedia.org/wiki/Hypertext_Transfer_Protocol), [PHP](http://php.net/manual/fr/intro-whatis.php), [SOAP](https://fr.wikipedia.org/wiki/SOAP), [ISPConfig](https://www.ispconfig.org/)
## Points à considérer
* l'ergonomie
* facilité de configuration
* simplicité d'utilisation
* commandes intuitives
* possibilité de batcher certaines opérations
Title: Mindmaping et markdown
Date: 2017-09-20 10:10
Category: <i class='fa fa-graduation-cap' aria-hidden='true'></i> &Eacute;tudiants
Tags: Projets tutorés, www
## Contexte
Le [Mindmaping](http://www.mindmapping.com/fr/) ou carte mentale est une méthode créative et logique pour prendre des notes et consigner des idées, qui consiste littéralement à "cartographier" votre réflexion sur un thème.
Il existe de nombreux programmes et services permettant de réaliser des cartes mentales:
Ce projet vise à réaliser un service en ligne permettant de réaliser des cartes mentale grâce au langage markdown.
L'extension [markdown-mindmap](https://atom.io/packages/markdown-mindmap) pour l'éditeur [atom](https://atom.io/) est une implémentation approchant le résulat attendu.
![markdown-mindmap](https://i.github-camo.com/a1d969d7ee4c9bd6145f8abf35d99de1544276d4/68747470733a2f2f6769746875622e636f6d2f64756e64616c656b2f61746f6d2d6d61726b646f776e2d6d696e646d61702f626c6f622f6d61737465722f73637265656e73686f742e6769663f7261773d74727565)
Le composant javascript [markmap](https://github.com/dundalek/markmap) peut être une brique logicielle intéressante.
N.B. Ce composant ne permet pas de créer des branches de part et d'autres du sujet principal, et cette possibilité est à discuter.
Afin d'être utilisable la solution devra intégrer
* le partage des cartes mentales
* afficher le contenu texte (en dessous du titre) au survol de la survie
* possibilité d'affecter une url (cliquable) à un noeud
* valider l'ergonomie et l'affichage sur ordinateurs, tablettes et téléphone
* une gestion d'utilisateur avec inscription et récupération de mot de passe [optionnel]
## Résultat attendu
un dépôt sur [https://gitlab.isima.fr](https://gitlab.isima.fr) contenant
* le code source implémentant les fonctionnalités demandées
* un fichier ```Vagrantfile``` permettant de tester l'application via ```vagrant up```
* un fichier `README.md` documentant l'installation, la configuration et l'utilisation du service
* un rapport détaillé du travail réalisé
## Technologies
* [HTTP](https://fr.wikipedia.org/wiki/Hypertext_Transfer_Protocol), [JS](https://fr.wikipedia.org/wiki/JavaScript), [Vagrant](https://www.vagrantup.com/), la technologie server-side et le SGBD sont à choisir.
## Points à considérer
* Choix des technologies
* ergonomie utilisateur
### Liens
* [FreeMind](https://fr.wikipedia.org/wiki/FreeMind)
* [framindmap.org](https://framindmap.org/mindmaps/index.html)
* [https://monod.lelab.tailordev.fr/](https://monod.lelab.tailordev.fr/) peut servir d'exemple pour l'ergonomie et le système de partage de document
* présente notamment des idées pour l'ergonomie et le système de partage
Title: Security Dashboard
Date: 2017-09-20 10:00
Category: <i class='fa fa-graduation-cap' aria-hidden='true'></i> &Eacute;tudiants
Tags: Projets tutorés, sécurité
## Contexte
Ce projet vise à réaliser un tableau de bord permettant d'évaluer simplement l'état de la sécurité d'un ensemble de sites ou services web hétérogènes.
Ce tableau de bord prend en entrée une simple liste d'urls, l'idée est d'automatiser au maximum l'audit sécurité de chaque url.
Chaque url de la liste est inspectée à intervalles réguliers afin de déterminer les technologies qu'elle utilise et leur version respective - à la manière du service [Wappalyzer](https://wappalyzer.com/).
Pour chaque technologie:
* [(CVE) Common Vulnerabilities and Exposures](https://fr.wikipedia.org/wiki/Common_Vulnerabilities_and_Exposures) sera interrogé afin de déterminer si la version de chaque technologie utilisée par l'url présente une vulnérabilité connue
* la dernière version de chaque technologie sera déterminée (à partir du site ou du dépôt officielle)
Le tableau de bord présentera une rapport clair et priorisé (par indice de criticité) des technologies à mettre à jour par url
* l'inspection automatique des technologies pourra être complétée / corrigée manuellement
* un système d'alerte mail à partir d'un degré d'un niveau de criticicté paramétrable sera également mis en place
## Résultat attendu
un dépôt sur [https://gitlab.isima.fr](https://gitlab.isima.fr) contenant
* le code source implémentant les fonctionnalités demandées
* un fichier ```Vagrantfile``` permettant de tester l'application via ```vagrant up```
* un fichier ```deploy.php``` permettant de déployer l'application
* un fichier `README.md` documentant l'installation, la configuration et l'utilisation du service
* un rapport détaillé du travail réalisé
## Technologies
* [HTTP](https://fr.wikipedia.org/wiki/Hypertext_Transfer_Protocol), [PHP](http://php.net/manual/fr/intro-whatis.php), [MySQL](https://www.mysql.com/fr/), [Symfony](https://symfony.com/), [Deployer](https://deployer.org/), [Vagrant](https://www.vagrantup.com/), API, [webscraping](webscraping)
## Points à considérer
* la facilité de déploiement
* l'ergonomie
* facilité de configuration
* simplicité d'utilisation
## Liens
* https://github.com/AliasIO/Wappalyzer
* https://github.com/cve-search/cve-search
* https://stackoverflow.com/questions/14866528/how-can-i-grab-the-latest-stable-repo-version-from-the-github-api
Title: Cepppia
Date: 2016-10-15 10:27
Category: <i class='fa fa-cogs' aria-hidden='true'></i> Projets
tags: www, mining
<div class="progress">
<div class="progress-bar" role="progressbar" aria-valuenow="70" aria-valuemin="0" aria-valuemax="100" style="width: 70%">
<span class="sr-only">70% complete</span>
</div>
</div>
est un projet issu des travaux du groupe santé du Conseil de Développement du Grand Clermont. Il est porté par le CHU et co-financé par l'Union Européenne. Il propose une ambition nouvelle en santé, par la mise en œuvre du concept de médecine 4P : Prédictive, Préventive, Personnalisée et Participative. Ce projet est articulé autour d’un questionnaire sur les habitudes alimentaires et comportementales des personnes sondées et une partie analyse de données collectées permettant d’automatiser et d’enrichir la détection des profils à risque.
Plus d'informations http://bit.ly/2saexM3
Pour ce projet
* j'ai étudié le cadre légal lié à l’hébergement et au traitement des données de santé (HDS)
* j'ai collecté les besoins et rédigé défini une architecture technique sécurisée basée sur une analyse de risque respectant les contraintes du cahier des charges HDS.
* j'ai rédigé les spécifications techniques pour l’appel d’offre pour un hébergement certifié HDS et participé au choix final du prestataire
* j'encadre un ingénieur en charge du développement logiciel
* je coordone le déploiement de l'applicatif en production avec le prestataire d'hébergement
Title: Mobipaleo
Date: 2016-11-15 10:27
Category: <i class='fa fa-cogs' aria-hidden='true'></i> Projets
Tags: www, mining
<div class="progress">
<div class="progress-bar" role="progressbar" aria-valuenow="70" aria-valuemin="0" aria-valuemax="100" style="width: 70%">
<span class="sr-only">70% complete</span>
</div>
</div>
est un projet interdisciplinaire visant à modéliser la biodiversité à partir d'études paleoécologiques et écologiques (GEOLAB / LMGE).
Plus d'informations http://mobipaleo.univ-bpclermont.fr
Pour ce projet
* J’ai développé http://mobipaleo-ui.univ-bpclermont.fr qui permet
* d’exploiter facilement un outil d’extraction de corrélations.
* de présenter visuellement les résultats
* de gérer l'accès à la plateforme via un système de gestion d'utilisateur et une interface d'administration complète
Ce travail a donnée lieu à l’écriture d’un rapport de recherche dont je suis coauteur et qui a été soumis à la conférence AKDM8 : "An Approach for Extracting Frequent (Closed) Gradual Patterns Under Temporal Constraint" http://bit.ly/2qsfSxc
Title: Profan
Date: 2017-01-06 10:27
Category: <i class='fa fa-cogs' aria-hidden='true'></i> Projets
Tags: www, mining
<div class="progress">
<div class="progress-bar" role="progressbar" aria-valuenow="40" aria-valuemin="0" aria-valuemax="100" style="width: 40%">
<span class="sr-only">70% complete</span>
</div>
</div>
se donne pour ambition de promouvoir et de qualifier, par la nature de leurs effets, de nouveaux contextes d'apprentissage et d'enseignement afin de favoriser l'acquisition de compétences nouvelles pour répondre aux exigences des métiers du futur. Ce projet fait parti du Programme d'investissements d'avenir du ministère de l'éducation nationale. Cette expérimentation est centrée sur une plateforme numérique qui permettra l'organisation et la bonne tenue de l'expérimentation ainsi que la collecte de données exploitables par la recherche en sciences cognitives dans 79 lycées professionnels.
Plus d'informations http://bit.ly/2ruwkBx
Pour ce projet
* j'ai collecté les besoins et défini une architecture technique
* j'ai participé au recrutement d’un développeur pour la conception de la plateforme
* j'encadrant un développeur, un stagiaire et un autre développeur à temps partiel venus lui prêter main forte
* j'assure la coordination avec
* les rectorats, le service des sytèmes d'information (SI) et le service d'analyse statistiques de l'éducation nationale pour la récupération des données concernant les lycéens, l'authentification des lycéens et professeurs et le déploiement de l'application
* les chercheurs en sciences sociales et cognitives pour la mise en place d'une dizaine de questionnaires et d'une demi douzaine outils d’évaluation
Title: Bitcoin et les monnaies locales
Date: 2010-05-17 10:27
Category: <i class='fa fa-flask' aria-hidden='true'></i> Recherche
Passionné par les cryptomonnaies, je suis à l’origine d’une collaboration entre une chercheuse en économie, spécialisée dans l’économie sociale et solidaire, et un chercheur en sécurité du LIMOS dont bitcoin est un des sujets de recherche.
Pour ce projet
* j'ai analysé l'implémentation de 2 monnaies virtuelles basées sur la technologie blockchain openUDC (http://www.openudc.org/) et duniter (https://duniter.org/).
Cette collaboration a débouché sur l’écriture d’un rapport de recherche "Les monnaies virtuelles sont-elles des outils d'avenir?" (halshs-01467329v1) dont je suis co-auteur et qui est appelé à être publié dans le magazine Usebek & Rica.
Title: Les documentations cri et utilisateur pour l'ISIMA et le LIMOS
Date: 2017-05-22 10:20
Status: Published
Tags: doc, python, mkdocs
Summary: Comment bien les utiliser, et comment y contribuer
Image: images/doc/book.jpg
[TOC]
## Pourquoi deux nouvelles documentations?
L'idée est de centraliser, tout en mettant à jour, les documentations existantes pour l'ISIMA et le LIMOS
* [http://com.isima.fr/cri/infoadmin](http://com.isima.fr/cri/infoadmin)
* [System Operations Center](http://192.168.100.7/PluXml/)
* [isima wiki / intranet](http://com.isima.fr/cri)
Si une autre source de documentation vous paraît pertinente n'hésitez pas à la soumettre à [cri@isima.fr](mailto:cri@isima.fr)
* la [documentation cri aka **doc-cri**](https://doc.cri.isima.fr/) est à usage restreint et nécessite donc une authentification avec le compte utilisateur Active Directory. Précisément elle est réservée aux seuls enseignants chercheurs ou personnels de l'ISIMA ou du LIMOS.
* la [documentation utilisateur aka **doc-user**](https://doc.isima.fr/) est consultable par tout un chacun.
## Comment sont faites ces deux documentations?
[doc-cri](https://doc.cri.isima.fr/) et [doc-user](https://doc.isima.fr/) sont toutes deux écrites avec le [projet MkDocs](http://www.mkdocs.org/),
issu du monde python et largement utilisé dans le monde de l'open source.
MkDocs]( est un module python qui permet à partir d'un code source (une simple arborescence de fichiers textes au format [markdown](https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet)) de générer des fichiers html statiques présentés dans une charte graphique fonctionnelle et unifiée.
Les codes source sont consultables et modifiables sur le [<i class="fa fa-gitlab" aria-hidden="true"></i>
gitlab de l'ISIMA](https://gitlab.isima.fr) par les seuls enseignants chercheurs ou personnels de l'ISIMA ou du LIMOS dotés d'un compte Active Directory.
* <i class="fa fa-gitlab" aria-hidden="true"></i>
[https://gitlab.isima.fr/cri/doc-user](https://gitlab.isima.fr/cri/doc-user) pour [**doc-user**](https://doc.isima.fr/)
* <i class="fa fa-gitlab" aria-hidden="true"></i>
[https://gitlab.isima.fr/cri/doc-cri](https://gitlab.isima.fr/cri/doc-cri) pour [**doc-cri**](https://doc.cri.isima.fr/)
> Toutes les contributions, corrections ou suggestions sont les bienvenues: **une documentation à jour est un gain de temps pour tous au quotidien!**
## Comment contribuer à [**doc-cri**](https://doc.cri.isima.fr/) ou à [**doc-user**](https://doc.isima.fr/)
### 0 - Prérequis
* [python](https://www.python.org/) >= 2.6 ([installation](http://www.mkdocs.org/#installing-python))
* [pip](https://pypi.python.org/pypi/pip) ([installation](https://pip.pypa.io/en/stable/installing/))
* [git](https://git-scm.com/) ([installation](https://git-scm.com/book/fr/v1/D%C3%A9marrage-rapide-Installation-de-Git))
* un éditeur de texte : [atom.io](https://atom.io/) est recommandé car il intègre un éditeur markdown ergonomique
* connaître les rudiments du *langage* [markdown](https://guides.github.com/features/mastering-markdown/)
* la commande [mkdocs](http://www.mkdocs.org/) installable via pip
```shell
sudo pip install mkdocs
```
> N.B. il est aussi possible d'installer mkdocs dans un virtualenv python afin de ne pas modifier la configuration de python sur votre système
### 1 - Récupérer les sources à partir de [https://gitlab.isima.fr](https://gitlab.isima.fr)
* forker le projet [https://gitlab.isima.fr/cri/doc-cri](https://gitlab.isima.fr/cri/doc-cri) ou [https://gitlab.isima.fr/cri/doc-user](https://gitlab.isima.fr/cri/doc-user)
[![fork doc-cri step 1](images/cri/doc-cri.png)](images/cri/doc-cri.png)
* spécifier *éventuellement* l'utilisateur avec lequel forker
[![fork doc-cri step 2](images/cri/fork-doc-cri-0.png)](images/cri/fork-doc-cri-0.png)
* vous avez désormais un repository, clone de l'original, sur lequel vous pouvez travailler
[![fork doc-cri step 3](images/cri/fork-doc-cri.png)](images/cri/fork-doc-cri.png)
* vous pouvez cloner le repository en local
```bash
cd /path/to/your/projects/folder
git clone git@gitlab.isima.fr:mazenovi/doc-cri.git
cd doc-cri
```
### 2 - Démarrer l'environnement MkDocs local
```bash
mkdocs serve
```
* vous pouvez accéder à la doc en local en ouvrant [http://127.0.0.1:8000](http://127.0.0.1:8000) dans votre navigateur
### 3 - &Eacute;diter ou créer du contenu
#### 3.1 - &Eacute;diter du contenu existant
* éditer les fichiers markdown **(*.md)** dans le dossier ```docs```
* [atom.io](https://atom.io/) possède une coloration syntaxique et une prévisualisation pour markdown **(ctrl+maj+m)**
* les changements sont automatiquement rendus après sauvegarde du fichier sur [http://127.0.0.1:8000](http://127.0.0.1:8000)
#### 3.2 - Créer du contenu
* créer un nouveau fichier markdown (.md) dans le dossier ```docs``` ou dans l'un de ses sous dossiers
* [atom.io](https://atom.io/) possède une coloration syntaxique et une prévisualisation pour markdown **(ctrl+maj+m)**
* dans ```mkdocs.yml``` ajouter une entrée à la section ```page:``` afin d'ajouter le nouveau fichier au menu
> Attention tous les fichiers .md ajoutés doivent être référencés dans le fichier ```mkdocs.yml``` sans quoi ils ne seront pas interprétés
```yaml
pages:
- 'Section': section.md
```
* le nouveau fichier peut également être ajouté à un sous menu
```yaml
pages:
- 'Section':
- 'Subsection': subsection.md
```
* les changements sont automatiquement rendus après sauvegarde du fichier sur [http://127.0.0.1:8000](http://127.0.0.1:8000)
### 4 - Versionner et propager les modifications
* ajouter tous les nouveaux fichiers et les fichiers modifiés au prochain commit
```shell
git add . --all
```
* valider les modifications sur le repository git local via un commit
```bash
git commit -m "my awesome contribution"
```
* publier les modifications sur le repository git distant
```bash
git push origin master
```
* soumettre vos modifications via une **merge request** à partir de [https://gitlab.isima.fr](https://gitlab.isima.fr)
[![merge request doc-cri step 0](images/cri/merge-request-doc-cri-0.png)](images/cri/merge-request-doc-cri-0.png)
* créer une nouvelle **merge request**
[![merge request doc-cri step 1](images/cri/merge-request-doc-cri-1.png)](images/cri/merge-request-doc-cri-1.png)
* sélectionner la branche concernée (ici *master*) et cliquer sur **compare branches and continue***
[![merge request doc-cri step 2](images/cri/merge-request-doc-cri-2.png)](images/cri/merge-request-doc-cri-2.png)
* ajouter la branche concernée (ici *master*) et cliquer sur **compare branches and continue***
[![merge request doc-cri step 3](images/cri/merge-request-doc-cri-3.png)](images/cri/merge-request-doc-cri-3.png)
> Votre **merge request** sera automatiquement soumise à l'équipe CRI et mettra automatiquement la documentation à jour en cas d'acceptation
Pour en savoir plus sur git vous pouvez lire également mon post <a href="https://limos.isima.fr/~mazenod/git-101.html">git 101</a>
## Comment faire une demande d'ajout ou de modification
Vous pouvez adresser toutes vos demandes ou remarques en cliquant sur le lien "Issues"
[![Issues via gitlab](images/cri/issue-gitlab-thumb.png)](images/cri/issue-gitlab.png)
Title: gitlab.isima.fr
Date: 2017-05-16 10:20
Status: Published
Tags: www, dev
Summary: Pourquoi et surtout comment utiliser la nouvelle forge logicielle du LIMOS https://gitlab.isima.fr?
Image: images/gitlab/gitlab.png
## Qu'est ce que gitlab?
## Ce que n'est pas gitlab ...
Un substitut de Dropbox! Gitlab est optimisé pour versionner des fichiers textes, d'une taille raiisonnable ...
Eviter donc les dossiers de milliers d'images, les vidéos de plusieurs giga
## Pourquoi une nouvelle forge plutôt que [La forge universitaire](https://forge.clermont-universite.fr/)
* simplification de l'administration (private/internal/publi) plutôt que de constituer une équipe nominativement
* les groupes en mode super utilisateurs
## configurer ses clés ssh
## mattermost
### Merge requests
### Intégration continue
content/images/cri/doc-cri.png

90.6 KiB

content/images/cri/edit-gitlab-thumb.png

94.8 KiB

content/images/cri/edit-gitlab.png

115 KiB

content/images/cri/fork-doc-cri-0.png

37.3 KiB

content/images/cri/fork-doc-cri.png

91.7 KiB

0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment