app.yaml 文件 - 无法将值“python27 api_version”分配给属性“运行时”:
Posted
技术标签:
【中文标题】app.yaml 文件 - 无法将值“python27 api_version”分配给属性“运行时”:【英文标题】:app.yaml file - Unable to assign value 'python27 api_version' to attribute 'runtime': 【发布时间】:2017-10-10 00:02:24 【问题描述】:我正在尝试通过 Google 应用引擎部署一个非常简单的网页,但由于我的 yaml 文件出现一些错误而无法部署该应用。
错误:
(gcloud.app.deploy) 解析文件时出错: [/home/google_gcp/parkwaypoc/app.yaml] 无法赋值 'python27 api_version' 到属性'runtime':值'python27 运行时的 api_version' 与表达式不匹配 '^(?:((gs://[a-z0-9-._/]+)|([az][a-z0-9-]0,29)))$'
我的 App.yaml 文件:
runtime:python27
api_version:1
threadsafe:true
handlers:- url:/
static_files:www/index.html
upload:www/index.html
- url:/(.*)
static_files:www/\1
upload:www/(.*)
我搜索了其他有相同问题的人,这些问题暗示了空格问题,因此将它们删除,但我无法解决。
yaml 文件在此处直接从 Google 复制: https://cloud.google.com/appengine/docs/standard/python/getting-started/hosting-a-static-website#uploading_your_files_to_google_app_engine
对不起,我对此有点陌生。
问候, 瑞恩
【问题讨论】:
【参考方案1】:您的 app.yaml 不是从the indicated link 直接剪切和粘贴的。发布的 yaml 已被冲洗,无法正确解析为 yaml。
试试:
runtime: python27
api_version: 1
threadsafe: true
handlers:
- url: /
static_files: www/index.html
upload: www/index.html
- url: /(.*)
static_files: www/\1
upload: www/(.*)
【讨论】:
感谢您的回复,当使用精确的复制和粘贴时,我收到此错误:(gcloud.app.deploy) 解析文件时出错:[/home/google_gcp/parkwaypoc/app.yaml ] 无法将值 'python27 api_version' 分配给属性 'runtime':运行时的值 'python27 api_version' 与表达式 '^(?:((gs://[a-z0-9\-\._/] +)|([az][a-z0-9\-]0,29)))$' 在“/home/google_gcp/parkwaypoc/app.yaml”中,第 1 行,第 10 列 你在windows上吗? 我正在使用 Google Cloud Shell,并将 repo 复制到 Cloud Shell 实例上。 此处不涉及任何窗口 OP 发布的 YAML 有什么问题?它是一个 YAML 文档,由一个包含多行的字符串组成。这可能不是 OP 想要的,但它是正确的 YAML。【参考方案2】:我遇到了同样的问题。检查您的 yaml 文件是否在行前有多余的空格。当我从 Google 链接复制粘贴时,我遇到了这个问题。我删除了多余的缩进,它起作用了。
【讨论】:
我遇到了同样的问题,您的解决方案帮助了我...谢谢以上是关于app.yaml 文件 - 无法将值“python27 api_version”分配给属性“运行时”:的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 app.yaml 在 GAE(python) 中上传静态文件?
GAE 通过 app.yaml、python 装饰器或 users.get_current_user 强制登录?