Exporter et importer des outils
Partagez un seul outil avec quelqu'un d'autre, ou installez-le sur un nouveau Mac. Exportez l'outil dans un fichier .runyard portable, remettez ce fichier (ou transportez-le vers l'autre machine), puis importez-le là-bas. Comme un outil peut exécuter des commandes et de l'AppleScript, l'importation vous montre toujours tout ce qu'il fera et vous laisse pointer vos propres dossiers avant que quoi que ce soit ne soit écrit ou exécuté.
C'est différent de la synchronisation de toute votre configuration entre vos propres Mac via iCloud/Dropbox. L'exportation et l'importation servent à partager un seul outil (ou un groupe) avec quelqu'un d'autre, ou à initialiser une nouvelle machine.
Exporter un outil
Ouvrez Réglages → Tools, puis :
- Sélectionnez l'outil et cliquez sur le bouton Exporter (l'icône de flèche vers le haut) dans la barre supérieure de l'éditeur, ou
- Cliquez avec le bouton droit sur l'outil dans la barre latérale et choisissez Exporter….
Une fenêtre s'ouvre pour que vous vérifiiez ce qui sera inclus avant d'enregistrer :
- Outils à inclure (groupes seulement) : une case par outil imbriqué, toutes cochées par défaut. Décochez ceux que vous ne voulez pas envoyer. Un groupe sans aucune sélection ne peut pas être exporté.
- PATH global : un interrupteur (activé par défaut) pour inclure vos entrées PATH globales. Elles sont ajoutées à chaque outil importé qui exécute des commandes, et non aux réglages Runyard globaux du destinataire. Les entrées exactes sont listées sous l'interrupteur.
- Scripts inclus : tout fichier AppleScript utilisé par les actions de l'outil est inclus dans le fichier par valeur, pour que le destinataire l'obtienne automatiquement.
- Retiré pour la confidentialité : tout ce que Runyard a nettoyé (voir plus bas) est listé ici pour que vous le sachiez avant d'envoyer. Chaque ligne nomme ce qui a été trouvé (par exemple Identifiant possible) et où (par exemple AppleScript « Run Deploy », ou le fichier de script, avec le nom de l'outil quand c'est à l'intérieur d'un groupe). Une note vous rappelle que les originaux restent sur ce Mac.
Cliquez sur Exporter…, choisissez un emplacement, et Runyard écrit un fichier .runyard (nommé d'après l'outil).
Ce qui est nettoyé
Runyard n'inclut jamais de données propres à la machine ni de données sensibles :
- Votre dossier de départ est réécrit en
~dans le dossier de projet de l'outil, la liste PATH de l'outil et les entrées PATH globales. - Les chaînes qui ressemblent à des jetons (longues suites hex/base64,
key=/token/secret/password/Bearer …) à l'intérieur des AppleScript en ligne et des fichiers de script inclus sont remplacées par<redacted>.
Si quelque chose a été retiré, la section Retiré pour la confidentialité vous l'indique. Votre config.json n'est jamais inclus : seul l'outil que vous avez exporté l'est.
Le fichier .runyard
Un fichier .runyard est du JSON simple. Il contient :
- L'outil lui-même, exactement tel qu'il apparaît dans
config.json(commandes, actions, vérifications d'état, outils imbriqués). - La liste des valeurs propres à la machine que le destinataire doit définir sur son Mac (dossiers de projet, entrées PATH).
- Les fichiers AppleScript dont les actions de l'outil ont besoin.
Il ne contient pas votre configuration complète, vos autres outils, ni vos secrets.
Importer un outil
Deux façons de lancer une importation :
- Double-cliquez sur un fichier
.runyarddans le Finder, ou - Dans Réglages → Tools, cliquez sur Importer un outil… à côté du contrôle + Add, puis choisissez le fichier.
La fenêtre d'importation vous guide, de haut en bas :
- Identité : le nom de l'outil, son type, et la version de Runyard qui l'a créé.
- Nom : pré-rempli, et suffixé (p. ex.
My App (2)) si vous avez déjà un outil portant ce nom. Modifiez-le librement. Les outils importés sont toujours réglés pour ne pas démarrer automatiquement : démarrez-les manuellement après l'importation. - Commandes qui seront exécutées : une revue repliable, en lecture seule, de chaque commande de démarrage/arrêt, commande d'installation et action, regroupée par outil. Dépliez une action AppleScript pour en lire le script complet. Si un outil garde votre Mac éveillé pendant son exécution, c'est indiqué ici, sous l'outil qui possède le réglage. C'est l'occasion de confirmer que l'outil est sûr avant d'importer.
- Configuration pour ce Mac : un sélecteur de dossier pour chaque dossier de projet (avec une coche verte quand le dossier existe) et des listes PATH modifiables, regroupées par outil. Les scripts inclus sont écrits dans les dossiers que vous choisissez. Si un script n'a pas pu être inclus, un avertissement ambre s'affiche.
Le bouton Importer reste désactivé tant que chaque dossier requis ne pointe pas vers un répertoire réel. Une fois que vous confirmez, Runyard écrit les scripts inclus, ajoute l'outil à votre configuration et recharge, sans le démarrer.
PATH global à l'importation
Si le fichier inclut le PATH global de l'expéditeur, ces entrées sont fusionnées dans chaque outil importé qui exécute réellement des commandes, jamais dans vos propres réglages Runyard globaux. Importer un outil ne peut donc pas modifier discrètement l'environnement de vos autres outils.
Compatibilité
Chaque fichier .runyard enregistre la version minimale de Runyard capable de le lire. Si vous tentez d'importer un fichier créé par une version de Runyard plus récente que la vôtre, l'importation est refusée avec un message vous invitant à mettre Runyard à jour. Les fichiers créés par des versions plus anciennes s'importent normalement.
Dépannage
- L'outil importé ne démarre pas. Les outils importés sont volontairement réglés pour ne pas démarrer automatiquement. Ouvrez le popover et démarrez-le manuellement. (Vous pourrez activer « Démarrer automatiquement » plus tard dans Réglages → Tools.)
- Une action AppleScript ne fait rien ou un script est manquant. Le fichier de script de l'expéditeur n'a pas pu être lu au moment de l'exportation, il n'a donc pas été inclus. La fenêtre d'importation le signale par un avertissement ambre ; demandez à l'expéditeur de réexporter, ou ajoutez le script vous-même.
- « Ce n'est pas un fichier Runyard. » Le fichier n'est pas un document
.runyardvalide (mauvais type, ou corrompu). - « Cet outil nécessite une version plus récente de Runyard. » Le fichier a été exporté par une version plus récente. Mettez Runyard à jour (Rechercher les mises à jour… dans le popover ou l'onglet About), puis réimportez.
- Une commande ne trouve pas
node/npm/etc. Le PATH de l'outil n'inclut peut-être pas le répertoire où se trouve ce binaire. Ajoutez-le au PATH de l'outil lors de l'importation, ou consultez Environnement shell et PATH.