No description
Find a file
2026-07-17 22:40:01 -04:00
.gitignore premier commit. docker test pour le serveur svn 2026-06-03 09:55:03 -04:00
docker-compose.yml version de scm-manager précisée 2026-07-17 22:39:54 -04:00
README.md Merge branch 'main' of ssh://ssh.git.etsmtl.club/CEDILLE/pdm-svn 2026-07-17 22:40:01 -04:00
roadmap.md readme 2026-07-05 11:02:09 -04:00
svn-pdm-k8s-spec.html html roadmap ajouté 2026-06-20 18:34:34 -04:00
svn-pdm-spec.html html roadmap ajouté 2026-06-20 18:34:34 -04:00

PDM-SVN

PDM-SVN est une plateforme de gestion de données techniques (Product Data Management) destinée aux clubs étudiants en ingénierie.

Objectif

Fournir une infrastructure centralisée, fiable et simple d'utilisation pour la gestion collaborative des fichiers de conception, de simulation et de documentation.

Pourquoi SVN ?

Le projet utilise Subversion (SVN) plutôt que Git comme moteur de gestion de versions.

Ce choix est motivé par :

  • le support natif du verrouillage de fichiers;
  • l'adaptation aux fichiers binaires volumineux;
  • la simplicité du modèle centralisé;
  • la compatibilité avec les workflows CAD traditionnels.

Ces caractéristiques sont particulièrement adaptées aux outils comme SolidWorks, CATIA et AutoCAD.

Pourquoi SCM-Manager ?

SCM-Manager fournit :

  • une interface web d'administration;
  • la gestion des utilisateurs;
  • la gestion des groupes;
  • la gestion des permissions;
  • l'administration des dépôts SVN.

Il permet d'éviter l'administration manuelle des fichiers de configuration SVN et constitue la couche de gestion principale du système.

Domaines visés

  • Génie mécanique
  • Génie aérospatial
  • Génie électrique
  • Robotique
  • Véhicules autonomes
  • Fabrication et prototypage

Types de fichiers

  • SolidWorks
  • CATIA
  • AutoCAD
  • Fusion 360
  • Ansys
  • MATLAB / Simulink
  • Documents techniques
  • Résultats de simulation

Priorités

  • Fiabilité du stockage
  • Sauvegardes automatisées
  • Traçabilité complète des modifications
  • Verrouillage des fichiers critiques
  • Simplicité de restauration
  • Administration accessible aux futurs responsables

Architecture

TortoiseSVN / svn
        ↓
    SCM-Manager
        ↓
     Dépôts SVN

Déploiement local (dev)

Côté serveur

docker compose up -d
  1. Accès à l'interface Web :
http://localhost:8081
  1. Création d'un compte admin La première connexion requiert un token d'initialisation et la configuration d'un nom d'administrateur, un courriel de contact (ne sera pas vérifié) et un mot de passe.
docker logs scm-manager

Chercher "Startup token for initial user creation" dans le log.

  1. Plugins

SCM-manager va suggérer des plugins. On peut les ajouter plus tard à partir de Plugin-Center plus tard.

  1. Login

Avec le nom d'admin et le mot de passe configurés dans l'étape 1 (nom par défaut=scmadmin).

  1. Création d'un répertoire

Bouton Add repository

Donner un nom, choisir Subversion comme type. Les autres sections sont optionnelles.

  1. Ajouter des utilisateurs

Dans l'onglet Users en haut de la page. Bouton Create User. Username, display name et le mot de passe sont obligatoires.

  1. Création de groupe

Dans l'onglet Groups en haut de la page.

  1. Configurer la permission d'un répertoire Dans le répertoire, aller dans Settings>Permissions. Add New Permission. Choisir User Permission ou Group Permission. Saisir le nom de l'utilisateur ou du groupe, son rôle et les permissions à accorder.

Côté client

Les clients n'utilisent généralement pas SCM-Manager.

Ils accèdent aux dépôts SVN à l'aide d'un logiciel client :

  • TortoiseSVN sous Windows;
  • svn sous Linux et macOS.

Connexion avec TortoiseSVN sur Windows

Télécharger et installer TortoiseSVN

Pour récupérer un projet :

  1. Créer ou choisir un dossier local.
  2. Faire un clic droit dans ce dossier.
  3. Sélectionner SVN Checkout...
  4. Entrer l'URL du dépôt.

Exemple URL :

http://IP_DU_SERVEUR:8081/scm/svn/NOM_DU_DEPOT

Linux

Installation :

Debian

sudo apt install subversion

NixOS

nix-shell -p subversion

Arch

sudo pacman -S subversion

Récupérer un dépôt :

svn checkout http://IP_DU_SERVEUR:8081/scm/svn/NOM_DU_DEPOT

Mettre à jour la copie locale :

svn update

Envoyer ses modifications :

svn commit -m "Description des changements"

Gestion de projet

Dans SCM-Manager, aller dans Administration>Plugins>Available. Dans la section Issue Tracker, prendre Redmine.

  • section à compléter...

Tester le serveur

Un checklist de tests et des liens de téléchargement d'échantillons sont disponible dans roadmap.md, section Tests à réaliser et Échantillons de fichiers.

Autres possibilités à explorer

  • Peut-on lier l'authentification par un système que le club a déjà?
  • À quoi l'infra va ressembler? Côté réseau?