Chcę przesłać aplikację do Google App Engine:
rozumiem
Error parsing yaml file:
mapping values are not allowed here
in "/home/antonio/Desktop/ATI/climate-change/app.yaml", line 2, column 8
Podczas biegania
./appcfg.py update /home/antonio/Desktop/ATI/climate-change
z tym plikiem app.yaml:
application:climate-change
version: 1
runtime: python27
api_version: 1
threadsafe: true
handlers:
- url: /.*
script: helloworld.app
wiersz 2, kolumna 8 odpowiada wierszowi wersji. Co tu jest nie tak? Przy okazji, używam tutaj Ubuntu 12.04.
google-app-engine
andandandand
źródło
źródło
Odpowiedzi:
Zmiana
do
Spacja po dwukropku jest obowiązkowa w yaml, jeśli chcesz uzyskać parę klucz-wartość. (Zobacz http://www.yaml.org/spec/1.2/spec.html#id2759963 )
źródło
Inną przyczyną jest niewłaściwe wcięcie, które oznacza próbę stworzenia niewłaściwych obiektów. Właśnie naprawiłem jeden w definicji Kubernetes Ingress:
Źle
Poprawny
źródło
Lub, jeśli odstępy nie są problemem, może być potrzebna nazwa katalogu nadrzędnego zamiast nazwy pliku.
Nie,
$ dev_appserver helloapp.py
ale
$ dev_appserver hello/
Na przykład:
Przeciw
źródło
Może to pomoże komuś innemu, ale widziałem ten błąd, gdy prawa strona mapowania zawiera dwukropek bez ujętych cudzysłowów, na przykład:
someKey: inny klucz: zmiana, którą trzeba wprowadzić dzisiaj: wypracuj więcej
Powinien być
someKey: inny klucz: „Zmiana, którą trzeba wprowadzić dzisiaj: wypracuj więcej”
źródło
Widziałem ten błąd w podobnej sytuacji do wspomnianej w odpowiedzi Joe:
W wartości opisu mamy dwukropek. Tak więc problemem są brakujące cudzysłowy wokół wartości opisu. Można to rozwiązać, dodając cudzysłowy:
źródło
Błędny:
people: empId: 123 empName: John empDept: IT
Poprawny:
people: emp: id: 123 name: John dept: IT
źródło
Moim problemem był brakujący zestaw cytatów;
Powinien być
źródło