maintenance / installation de gemmes de rbuy / ruby ​​sur les rails sur Linux en général et Gentoo

Je search actuellement Ruby / Ruby on Rails comme alternative à Python / Django. Mon problème principal est qu'il n'est pas clair quelles sont les meilleures pratiques en matière d'installation de gemmes Ruby et / ou Ruby on Rails sur Linux avec un dist distal ou Gentoo en particulier.

Dans Gentoo, les développeurs ont tendance à emballer les gemmes. C'est la manière préférée d'installer ceux via le portage au lieu de gemme. Pourtant, je ne sais pas si c'est le bon moyen car vous aurez toujours des projets majeurs et des dependencies dont vous auriez l'habitude d'écrire votre propre ebuild pour (pas une grosse affaire) et de le maintenir. Et à ce moment-là, je ne vois plus d'avantage parce que je dois suivre les colis de façon étroite pour les nouveaux développements une fois que j'ai écrit mon propre ebuild car il n'y aura pas de bosses magiques dans le package. 🙂 Aussi le monde Ruby est une cible en mouvement rapide et tous les gemmes emballés dans l'tree du dist sont vraiment à la vitesse.

D'autre part, l'installation directement via Bundler ou directement via le gestionnaire de packageage gemme semble aussi floconneuse. Vous contestez le gestionnaire de packages dists et avez deux gestionnaires concurrents si vous ne faites pas attention. Le dist met à jour Ruby 1.9.4 et introduit certaines caractéristiques spécifiques au dist et quelques gemmes se cassent de façon inattendue, par exemple. Pourtant, ils réparent leurs propres gemmes emballées pour cela. Ou si vous utilisez Bundler, les projets ont tendance à être plutôt ssortingcts en ce qui concerne les versions de leurs dependencies et, par conséquent, même si une mise à jour de security pour une dépendance est disponible, vous ne pourriez pas l'get car le projet spécifiait explicitement une version. Il faut donc relancer manuellement.

À l'heure actuelle, j'apprécierais l'opinion de la communauté sur le bon path (TM) pour traiter de telles choses et comment maintenir correctement une base Ruby / Ruby on Rails et plusieurs projets (y compris les tiers) sur un server de production.

Notez qu'il ne s'agit pas de deployment d'un projet ou d'une application. Il s'agit des meilleures pratiques en matière de maintenance …

En ce qui concerne les meilleures pratiques, je suggère d'embaucher un SysAdmin pour effectuer ces fonctions et surveiller votre équipement. Vous ne devez pas embaucher une telle personne à time plein car il existe de nombreux administrateurs système qui offrent ces services sur une base contractuelle pendant un certain nombre d'heures par mois.

À défaut, je suppose que c'est une organisation DevOps ou une entreprise unique? Dans ce cas, je voudrais interroger le choix de Gentoo pour une dissortingbution dans un cadre comme celui-ci. Créez votre application sur une dissortingbution stable avec des packages pré-compilés et un support de fournisseur. Concentrez vos fonctionnalités sur une seule version d'une plate-forme et mettez-la à jour avec une version plus récente périodiquement si nécessaire. Ne passez pas votre time à poursuivre la version de saignement d'une langue ou d'une plate-forme qui se déplace rapidement, car il s'agit d'une recette d'inefficacité au mieux et d'une entreprise commerciale infructueuse au pire.

Si vous regardez Rails comme alternative à Python / Django, il est probable que vous connaissez déjà virtualenv et pourquoi vous souhaitez l'utiliser.

Pour Ruby et Rails, je vous suggère de jeter un oeil à rvm et rbenv.