Saya ingin mengunggah aplikasi ke Google App Engine:
Saya mengerti
Error parsing yaml file:
mapping values are not allowed here
in "/home/antonio/Desktop/ATI/climate-change/app.yaml", line 2, column 8
Saat berlari
./appcfg.py update /home/antonio/Desktop/ATI/climate-change
dengan file app.yaml ini:
application:climate-change
version: 1
runtime: python27
api_version: 1
threadsafe: true
handlers:
- url: /.*
script: helloworld.app
baris 2, kolom 8 sesuai dengan baris versi. Ada apa disini? Btw, saya menggunakan Ubuntu 12.04 di sini.
google-app-engine
andandandand
sumber
sumber
Jawaban:
Perubahan
untuk
Spasi setelah titik dua wajib ada di yaml jika Anda menginginkan pasangan nilai kunci. (Lihat http://www.yaml.org/spec/1.2/spec.html#id2759963 )
sumber
Penyebab lainnya adalah lekukan yang salah yang berarti mencoba membuat objek yang salah. Saya baru saja memperbaikinya dalam definisi Kubernetes Ingress:
Salah
Benar
sumber
Atau, jika jarak bukan masalahnya, ia mungkin menginginkan nama direktori induk daripada nama file.
Bukan
$ dev_appserver helloapp.py
Tapi
$ dev_appserver hello/
Sebagai contoh:
Melawan
sumber
Mungkin ini akan membantu orang lain, tetapi saya telah melihat kesalahan ini ketika kanan pemetaan berisi titik dua tanpa menyertakan tanda kutip, seperti:
someKey: kunci lain: Perubahan yang harus dilakukan hari ini: lebih banyak berolahraga
seharusnya
someKey: kunci lain: "Perubahan yang harus dilakukan hari ini: lebih banyak berolahraga"
sumber
Saya telah melihat kesalahan ini dalam situasi yang mirip dengan yang disebutkan dalam jawaban Joe:
Kami memiliki titik dua dalam nilai deskripsi. Jadi, masalahnya ada pada tanda kutip yang hilang di sekitar nilai deskripsi. Ini dapat diselesaikan dengan menambahkan kutipan:
sumber
Salah:
people: empId: 123 empName: John empDept: IT
Benar:
people: emp: id: 123 name: John dept: IT
sumber
Masalah saya adalah kumpulan kutipan yang hilang;
seharusnya
sumber