Fixtures de test S3 pour les équipes CI avec NetDrive
Montez Amazon S3 comme lettre de lecteur locale pour que les fixtures de test CI utilisent des chemins de fichiers ordinaires. Cas d'usage NetDrive pour les équipes DevOps sous Windows et macOS.
Une équipe backend stocke 40 Go de fixtures de test binaires sur Amazon S3 — instantanés de base de données, fichiers médias pré-rendus et jeux de données de référence volumineux. Leur suite de tests d’intégration les lit comme des chemins de fichiers ordinaires. À chaque modification d’une fixture, l’ancien flux de travail reste le même : aws s3 cp télécharge des gigaoctets vers chaque runner CI, et quiconque déclenche un pipeline attend 25 minutes avant même que les tests ne commencent. Monter le bucket S3 comme un lecteur local avec NetDrive élimine entièrement cette copie — les tests lisent directement depuis S3 via un chemin comme T:\fixtures\, sans aucune étape de téléchargement local.

Montez S3 comme une lettre de lecteur — sans téléchargement, sans changement de code
Avec NetDrive, Google Drive, OneDrive, S3, SFTP, WebDAV et plus apparaissent comme des lecteurs natifs sur Windows et macOS — sans synchronisation ni téléchargement complet.
- Toute application qui lit un chemin de fichier fonctionne automatiquement
- Le montage automatique au démarrage garde le lecteur prêt avant toute connexion
- Wasabi et MinIO fonctionnent de la même manière qu'Amazon S3
Essai gratuit. Licences à vie et abonnements disponibles.
Pourquoi la compatibilité des chemins de fichiers compte en CI
La plupart des suites de tests sont écrites pour lire les fixtures depuis un chemin local. Remplacer chaque référence de fixture par une URL S3 implique de modifier des dizaines de fichiers et risque aussi de casser l’expérience des développeurs en local. La solution la plus propre consiste à faire ressembler S3 à un lecteur local, afin que les chemins existants continuent de fonctionner sans modification.
NetDrive monte un bucket S3 comme un network drive (lecteur réseau), un read-only drive (lecteur en lecture seule) ou un volume local disk (disque local), selon les besoins du runner CI. Sous Windows, cela devient une lettre de lecteur (T:, S:, etc.) que tout processus de la machine peut lire. Sous macOS, cela apparaît comme un volume FUSE dans /Volumes/ ou un chemin personnalisé. La suite de tests voit un système de fichiers ; NetDrive gère les appels à l’API S3 en arrière-plan.
Les fichiers de fixtures volumineux fonctionnent de manière fiable car NetDrive diffuse les données par blocs et relance automatiquement en cas d’incident réseau. Les fichiers de plus de 5 Go utilisent les transferts multipart S3 (disponibles depuis NetDrive 3.5.434), il n’y a donc pas de plafond pratique à la taille des fixtures.

Configurer un bucket S3 comme lecteur
- Open NetDrive et cliquez sur + Add Drive dans le Drive Manager.
- Choisissez Amazon S3 dans la liste des fournisseurs.
- Entrez votre AWS Access Key ID et Secret Access Key. Utilisez un rôle IAM dédié avec un accès à privilège minimal — lecture seule pour les buckets de fixtures, droits d’écriture uniquement là où les tests produisent des artefacts.
- Entrez le Bucket Name. Depuis NetDrive 3.19.7, la région est détectée automatiquement à partir de la configuration du bucket, vous pouvez donc laisser le champ région vide sauf si vous devez le remplacer.
- Dans Drive Type, sélectionnez Network drive pour un montage standard en lecture-écriture, ou Read-only drive si les runners CI ne doivent jamais réécrire dans le bucket de fixtures.
- Réglez Mount on sur Boot — c’est la différence clé par rapport à une configuration sur poste de développeur. Le montage au démarrage rend le lecteur disponible avant toute connexion utilisateur, ce qui est exactement ce dont les serveurs CI sans interface ont besoin.
- Cliquez sur Mount.
La lettre de lecteur (Windows) ou le chemin de volume (macOS) est désormais accessible à tout processus de la machine, y compris l’agent CI, sans qu’une session utilisateur soit active.

Montage automatique sans connexion — configuration d’un serveur CI sans interface
L’option Mount on Boot est ce qui rend NetDrive utilisable sur une infrastructure CI. La plupart des runners CI (agents Jenkins, runners auto-hébergés GitHub Actions, agents GitLab) démarrent comme des services système, pas comme des sessions utilisateur. Un lecteur qui ne se monte qu’à la connexion d’un utilisateur est invisible pour ces agents.
Avec le montage au démarrage activé, le lecteur S3 est présent dès que l’OS a fini de démarrer. L’agent CI le détecte automatiquement — pas de connexion, pas de script pour lancer la commande de montage, pas de condition de concurrence entre le démarrage de l’agent et l’apparition du lecteur.

Pour les cas où le montage doit se faire de manière programmatique — par exemple, choisir dynamiquement quel bucket monter selon un nom de branche ou une variable de pipeline — NetDrive inclut nd3cmd, un outil en ligne de commande ajouté dans NetDrive 3.8.921 qui permet la gestion scriptée des lecteurs. Consultez le NetDrive support forum pour la référence actuelle des commandes nd3cmd, car les options exactes varient selon la version.
Lorsque les tests produisent des artefacts (rapports de couverture, sorties rendues, résultats de benchmarks), le même lecteur monté fonctionne aussi pour les écritures. Le mode background upload de NetDrive écrit d’abord dans un cache local puis téléverse vers S3 de manière asynchrone, de sorte que le processus de test n’est pas bloqué en attendant la fin du téléversement.

S3 sur site : MinIO et Wasabi
Toutes les équipes n’utilisent pas AWS directement. Certaines font tourner MinIO sur site pour garder les données de fixtures hors du cloud public, d’autres utilisent Wasabi pour un stockage froid économique. NetDrive prend en charge les fournisseurs de stockage compatibles S3 depuis la 3.4.398 et a ajouté un support explicite de MinIO dans la 3.15.450.
Pour connecter un endpoint compatible S3 :
- Cliquez sur + Add Drive et choisissez S3 Compatible (et non Amazon S3).
- Entrez l’URL d’endpoint personnalisée de votre cluster MinIO ou de la région Wasabi.
- Entrez le nom du bucket et les identifiants comme précédemment.
- Définissez le type de lecteur et le déclencheur de montage de la même façon.
Le reste de la configuration est identique. Du point de vue de la suite de tests, T:\fixtures\ est T:\fixtures\, que le stockage sous-jacent soit AWS us-east-1, un bucket Wasabi ou un cluster MinIO tournant dans le même centre de données que le runner CI.
Conclusion
Monter S3 comme une lettre de lecteur est un moyen sans changement de code de donner aux pipelines CI l’accès à de vastes bibliothèques de fixtures stockées en stockage objet. La suite de tests continue de lire des chemins locaux ; NetDrive gère la traduction vers S3. Le montage au démarrage garantit que le lecteur est toujours présent quand l’agent CI en a besoin, sans aucune intervention manuelle.
Pour configurer l’accès S3 sur un Mac de développeur, voir Mount Amazon S3 on macOS with NetDrive. Si votre équipe a aussi besoin d’un niveau de stockage froid économique pour les fixtures anciennes, Mount Backblaze B2 on Windows with NetDrive couvre une configuration similaire avec l’API compatible S3 de Backblaze.
— Alex, NetDrive