Un .gem téléchargé par le navigateur peut contourner le problème initial du proxy sans rendre l'installation autonome. Avant de déplacer l'archive vers la cible, préparez :

  • Les versions appropriées de chaque dépendance déclarée manquante.
  • Des archives compatibles avec le Ruby, RubyGems et la plateforme cibles.
  • Les compilateurs, en-têtes et bibliothèques système requis par toute extension native.

Demandez explicitement à RubyGems une installation locale :

gem install ./example-1.2.3.gem --local

Remplacez le nom de fichier d'exemple. Résolvez le matériel manquant via le processus d'artefacts approuvé plutôt qu'en désactivant les contrôles de dépendances. Une compilation de plateforme provenant d'une autre machine peut échouer simplement parce que le nom et la version correspondent.

Le mode local concerne le comportement de récupération de RubyGems. Les scripts de compilation d'extensions peuvent faire d'autres tâches, ce n'est donc pas un bac à sable pour du code d'installation arbitraire. Un échec d'extension peut indiquer un prérequis de compilation manquant après l'arrivée de l'archive ; signalez cette étape séparément d'un refus du proxy.

Pour les déploiements répétés, maintenez l'ensemble des dépendances via le flux de travail d'empaquetage habituel du projet. Sinon, des changements de versions de dépendances ou d'architecture peuvent transformer le prochain téléchargement ponctuel par navigateur en une installation différente.

Articles similaires