Die Installation von Ruby 1.9.2 auf Ubuntu mit Chef und Vagrant
Möchte ich zur Bereitstellung einer neuen Ubuntu-10.04-box mit Ruby 1.9.2. Ich bin mit Vagrant und Chef-Solo, die zur Bereitstellung der box mit alles was ich brauche (z.B. Rails, Rake, MongoDB). Die Standard-Ruby-version 1.8.7.
Gibt es eine Möglichkeit zum installieren von Ruby 1.9.2 als Teil der Landstreicher/Koch provisioning-Prozess?
Ich gelesen habe, auf der Chefkoch-website über die Verwendung meiner eigenen bootstrap-Vorlage — möglicherweise mit einem Messer — wie diese eine, aber da bin ich mit Vagrant ich bin mir nicht sicher, wohin mit dieser Vorlage — ich habe keinen chef-repo ein .Koch-Verzeichnis oder sogar eine Chef-Sachen installiert, in /etc/Koch.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Erste, ein bisschen der Kontext. Die meisten Landstreicher baseboxes Ruby für den Einsatz von Chef und Puppet, aber die letzten, tun dies in /opt/ruby, anstatt mit den system-packages. Sie auch hinzufügen /opt/ruby/bin auf dem Weg, aber am Ende.
Diese VeeWee-Vorlage zeigt, wie die 10.04-box wird derzeit gebaut: https://github.com/jedi4ever/veewee/blob/master/templates/ubuntu-10.04.3-server-i386/postinstall.sh
Als für Ihre Frage, Ihre verschiedenen Kontexten versuchen Sie möglicherweise, Adresse, jede mit einer anderen Lösung. Hoffentlich einer von diesen wird das sein, was du bist suchen für.
Laufen, Koch Rezepte mit 1.9.2
Möglicherweise werden Sie wollen, um zu testen, läuft Koch Rezepte unter 1.9.2 und Sie nicht möchten, dass 1.8.7 irgendwo in der Nähe der box. Der beste Weg, dies zu erreichen, wäre zum erstellen Ihrer eigenen VeeWee Vorlage und bauen Sie sich eine neue basebox. Sie ändern könnte, die man oben gelinkt kompilieren 1.9.2 statt 1.8.7 und Folgen Sie den Anweisungen auf https://github.com/jedi4ever/veewee
Entwickeln mit Ruby 1.9.2
Wahrscheinlich mehr wahrscheinlich ist, dass Sie hacken wollen auf etwas Ruby-code mit 1.9.2. Für diese müssen Sie nur installieren Sie Ruby und die Binärdateien auf Ihrem Weg, bevor der /opt/ruby-Eintrag. Es gibt mehrere Möglichkeiten, dies zu tun:
Alle diese verwaltet werden könnte, mit einem Chefkoch Rezept. Ich würde wahrscheinlich nicht gehen, für die compile-option, verlassen entweder nur ein direkt-download-und-Paket-Ressource oder den folgenden RVM Kochbuch könnte nützlich sein, http://community.opscode.com/cookbooks/rvm für die RVM.
Den *gem_binary* option auf das Paket-Ressource könnte auch hier ganz nützlich sein, je nachdem, wie Sie sicherstellen wollen, gems installiert werden, die für Ihre neuen 1.9.2 Ruby (anstatt der 1.8.7 in opt)
Dem Ziel
knife bootstrap
ist man Chef auf dem Zielsystem installiert, so kann es laufen-Koch-Client. Der Landstreicher baseboxes neigen dazu, bereits Chef installiert, so dass, es sei denn, man tut etwas bestimmtes und wollen zum ausführen mehrerer Versionen von Chefkoch, ich möchte vermeiden, auf dieser route. Die eingebaute Chef provisioners wie http://vagrantup.com/docs/provisioners/chef_solo.html sind eine bessere Wette.Ich weiß die Frage ist schon ziemlich alt und bereits beantwortet, aber ich hoffe, dass dies noch interessant sein kann für jemanden, der das stolpern über diese Frage.
Habe ich gebaut Github repo, die beabsichtigt, mehrere Konfigurationen für den Aufbau und die Bereitstellung einer Vagrant box , ohne zu schreiben eine provisioning-Rezept von scratch.
Beispielsweise mit der jetzt vorgesehenen Konfiguration können Sie erstellen und bereitstellen einer Kiste mit:
Hier ist ein Einleitung Artikel auf meinem blog.
, Da diese fast die Anforderung übereinstimmt, war es für mich Wert hinzufügen diese späte Antwort 🙂
Hier ist das Rezept, das ich verwende zum installieren von Ruby 1.9.2