Vagrant-Omnibus: keine gültige Version des Küchenchefs

454
Timur

Irgendwann habe ich beim Versuch, eine neue vm mit Vagrant bereitzustellen, folgende Fehlermeldung erhalten:

Es gibt Fehler in der Konfiguration dieses Systems. Bitte beheben Sie die folgenden Fehler und versuchen Sie es erneut:

vagrant-omnibus: * '11 .16 'ist keine gültige Version von Chef.

Eine Liste der gültigen Versionen finden Sie unter: http://www.opscode.com/chef/install/

Das gleiche passiert, wenn ich verschiedene Versionen wie "11", "12" usw. probiere. Was interessant ist, der Versuch, Metadaten manuell abzurufen, schlägt mit einem Fehler fehl:

vagrant@precise64:~$ wget https://www.getchef.com/chef/metadatav=11.16.2&prerelease=false&nightlies=false&p=ubuntu&pv=14.04&m=x86_64 [1] 1555 [2] 1556 [3] 1557 [4] 1558 [5] 1559 vagrant@precise64:~$ --2014-12-15 20:10:29-- https://www.getchef.com/chef/metadata?v=11.16.2 Resolving www.getchef.com (www.getchef.com)... 184.106.28.82 Connecting to www.getchef.com (www.getchef.com)|184.106.28.82|:443... connected. ERROR: no certificate subject alternative name matches requested host name `www.getchef.com'. To connect to www.getchef.com insecurely, use `--no-check-certificate'. 

Kann dies der Grund sein, warum Omnibus kein Chefpaket findet? Wie löse ich dieses Problem trotzdem?

1

1 Antwort auf die Frage

0
coderanger

Während Sie nicht viel über den tatsächlichen Fehler angesprochen haben, besteht das Problem mit wget darin, dass Sie eine ?URL vermissen und die URL nicht zitieren. Bei dem ursprünglichen und dem tatsächlichen Fehler besteht die Möglichkeit, dass das Skript Ihr Betriebssystem oder Ihre Plattform nicht automatisch erkennt. Welches Betriebssystem ist das?

Offensichtlich war das Problem mit "wget" nicht mit Zitaten oder ähnlichem verknüpft. Ich habe momentan keinen Link, aber es ist ein bekannter Bug von wget, der in späteren Versionen behoben wurde, aber ich habe keine Möglichkeit zu aktualisieren. Der Grund für das Original ist immer noch nicht bekannt. In Windows erscheint es in Cygwin, aber in cmd nicht. Timur vor 9 Jahren 0
Sie sind falsch, diese "[1] 1555" -Zeilen sind darauf zurückzuführen, dass bash Hintergrundbefehle ausgeführt hat. Die nicht mit Anführungszeichen versehenen `&` s sind beide ein Anweisungstrennzeichen und führen den Befehl im Hintergrund aus, selbst wenn der Befehl nur 'prerelease = false' ist. coderanger vor 9 Jahren 0
Oh, jetzt verstehe ich. Ja, du hast recht, sorry. `&` erstellte Befehle, die im Hintergrund ausgeführt wurden. Aber leider funktioniert es auch mit der zitierten URL nicht, weil: Timur vor 9 Jahren 0
Der korrekte Befehl (und die richtige URL) lautet "curl -L" https: //www.getchef.com/chef/metadata? V = 11.16.2 & prerelease = false & nightlies = false & p = ubuntu & pv = 14.04 & m = x86_64'` und funktioniert problemlos. coderanger vor 9 Jahren 0