7
votes

Cookbook Chef à jour pour Ruby

Y a-t-il un livre de recettes à jour pour Ruby? Je n'ai pas pu en trouver un sur le site du livre de recettes OPSCODE. I.e Ruby 1.9.3 ou 1.9.2P280.


0 commentaires

3 Réponses :


3
votes

Je ne sais pas si vous y trouverez une pour la mise à jour de la version système de Ruby, car le chef est construit sur Ruby et se mettra donc à jour tout en courant, ce que je ne suis pas sûr est possible. < / p>

Cependant, j'ai définitivement vu Chef Cookbooks pour les gestionnaires de version Rubis tels que RBENV et RVM, tels que Ceci Un pour RBENV , et Celui-ci pour RVM . Est-ce pour un serveur ou une boîte OSX DEV? Si c'est pour la dernière fois, j'ai trouvé Smeagol pour être un raccourci manuel assez pratique lors de la configuration de machines. < / p>


6 commentaires

Ceci est pour une boîte Ubuntu en production. Je suis prêt à utiliser rbenv là-bas. Juste une question rapide, ce livre de cuisine RBENV installe-t-il Ruby? Je vais y examiner plus tard. sur la route maintenant.


Salut @ berto77, je ne sais pas à quoi ressemble votre environnement de chef, mais je crois que ça va compter sur le système Ruby que Ubuntu est livré avec le gemme de chef (ce que je crois que vous devrez également installer manuellement, à moins que votre serveur de chef Est-ce que cela pour vous), puis cela va installer rbenv. Il semble également très flexible: les options d'installation à l'échelle du système ou des installations utilisateur, bien que je ne sais pas où vous spécifiez les versions de Ruby que vous souhaitez installer.


salut @purpetonic merci de suivre le suivi. Mon Ubuntu est propre et n'a pas encore installé de rubis. J'utilise Chef Server depuis OpScode.


Hmmm Pas sûr alors, comme chaque système d'ubuntu frais que j'ai travaillé auparavant, a été installé Ruby, de sorte que cela doit être une installation très minimale. Je ne sais pas s'il y a un paquet 1.9.3, mais j'ai trouvé celui-ci de Brightbox .


Hey @purpetonic, pas de soucis. J'ai lu à travers la documentation RBENV. Il va installer Ruby pour vous, mais cela dépend de Ruby_Build. J'ai juste besoin d'ajouter cette recette à ma liste d'exécution et RBENV le fait automatiquement. Je souhaite prévoir mon serveur sans avoir à vous connecter à la main-d'œuvre manuelle :). Je pensais que c'était le point de chef.


Ahh cool, bon d'entendre. Je pense que dans les environnements d'hôte multiples, il convient tout sans que vous ayez à vous connecter, mais qui nécessite une configuration du serveur Chef. C'est ma compréhension quand même.



0
votes

Je pense que le plus facile est d'utiliser deux livres de cuisine: ruby_build et rbenv. Dans votre rôle ( /roles/role_name.rb ): XXX

Ajout de ce rôle (de préférence avant d'autres rôles qui nécessiteraient ces rubis) à votre époque La liste devrait le faire.

Pour modifier une liste d'exécution: Nœud de couteau Modifier

N'oubliez pas de mettre à jour le rôle! rôle de couteau à partir de fichier role_name.rb

Enfin, Rubyenv peut être un moyen légèrement plus propre de gérer des rubis que de RVM.


0 commentaires

4
votes

i juste terminé la mise à jour Carlo Zottman's Ruby 1.9.x Cookbook (remarqué cette question tout en déjeunant, avant Pour écrire une demande de traction, lol ...)

Les seules dépendances sont les livres de recettes Standard Build-Essential-Essential et APT du site de Cookbook OpScode. P>

Quant à la discussion sur le moment où un livre de recette On pourrait être nécessaire, je l'utilise pour passer de Ruby 1.8 à Ruby 1.9 sur mes 12,04,01 cases vagabondes avant em> à l'aide du livre de recettes RBENV (et divers autres). P>

Je me rends compte que je devrais pouvoir utiliser le livret de recettes RBENV pour installer 1.9.3, mais après le fitzing avec celui-ci sans succès pendant quelques heures, j'ai réalisé que j'étais plus heureux avec l'installation de la source de toute façon, car elle fait toute ma pile de recette. moins fragile. Et un script shell sur RBENV Installez 1.9.3 lorsque l'utilisateur vagabond était trivial pour écrire. P>

Mise à jour h2>

J'ai trouvé une approche alternative qui a encore moins de dépendances (oui!) I ' m Utilisation de Fletcher Nichol's Cookbooks: p>

  • ruby_build de la page communautaire OPSCODE LI>
  • Chef-Rbenv de Github (pas la même chose que le RBENV Cookbook à OPSCODE) LI> ul>

    Strictement parler, bien sûr, vous pouvez simplement utiliser Ruby_Build pour installer votre préféré 1.9 et votre arrêt, mais je veux aussi RBENV. P>

    J'ai inclus certains extraits de ma configuration ( Bien sûr, il y a plus aux Berksfile et à VagrantFile, mais ce sont les bits pertinents.) La seule partie vraiment délicate est que le nom local du livre de recettes Chef-rbenv code> doit être rbenv Si vous souhaitez utiliser l'une des recettes hors tension incluant d'autres recettes hors tension du livret de recettes, car elle se réfère à elle-même comme RBENV. Berkshelf a fait ce trivial. P>

    Berksfile : P>

    {
      "name": "ruby",
      "description": "Install ruby and rbenv",
      "chef_type": "role",
      "json_class": "Chef::Role",
    
      "run_list": [
        "recipe[ruby_build]",
        "recipe[rbenv::system]"
      ]
    }
    


0 commentaires