Wir verwenden RVM zum Verwalten von Ruby-Installationen und -Umgebungen.
Normalerweise verwenden wir dieses .rvmrc
Skript:
#!/bin/bash
if [ ! -e '.version' ]; then
VERSION=`pwd | sed 's/[a-z/-]//g'`
echo $VERSION > .version
rvm gemset create $VERSION
fi
VERSION=`cat .version`
rvm use 1.9.2@$VERSION
Dieses Skript zwingt RVM, für jedes Projekt / jede Version eine neue Gem-Umgebung zu erstellen.
Jedes Mal, wenn wir eine neue Version von RVM bereitstellen, werden wir aufgefordert, die neue .rvmrc
Datei zu bestätigen .
Wenn wir cd
zum ersten Mal in dieses Verzeichnis gehen, bekommen wir so etwas wie:
================================================ ============= = HINWEIS: = ================================================ ============= = RVM hat eine noch nicht vertrauenswürdige .rvmrc-Datei in = gefunden = aktuelles Arbeitsverzeichnis, das bösen Code enthalten kann. = = = = Überprüfen Sie den Inhalt dieser Datei, um sicherzustellen, dass der Inhalt = = sind gut, bevor sie es vertrauen! = = = = Drücken Sie 'q', um den Reader zu verlassen, wenn Sie mit dem Lesen der Datei fertig sind = ================================================ ============= (Drücken Sie die Eingabetaste, um fortzufahren, wenn Sie fertig sind.)
Dies ist nicht so schlimm für Entwicklungsumgebungen, aber bei der automatischen Bereitstellung muss jede neue Version auf jedem Server manuell bestätigt werden.
Ist es möglich, diese Bestätigung zu überspringen?
In meiner Bereitstellung verwende ich keine .rvmrc. Ich benutze nur
rvm use 1.9.2 --default
so ich a; Stellen Sie sicher, dass mein Standard-Ruby 1.9.2 ist und kein anderer, wenn ich mich nicht in diesem bestimmten Verzeichnis befinde.Nachdem Sie die Option
rvm_project_rvmrc=0
in Ihrem rvmrc aktiviert haben, stellen Sie sicher, dass kein anderer Rubin verwendet wird.quelle
Die Reparatur:
quelle
Alternativer, aber unerwarteter Exit 0 erfordert mehrfache Ausführung
Wenn Sie z. B. beide Ruby installieren (ohne die ursprüngliche RVM-Installation zu ändern), wird die Ausführung wiederholt
quelle