Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/google-app-engine/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google app engine 获取Google应用程序引擎SDK的最新版本号_Google App Engine - Fatal编程技术网

Google app engine 获取Google应用程序引擎SDK的最新版本号

Google app engine 获取Google应用程序引擎SDK的最新版本号,google-app-engine,Google App Engine,我正在编写一个脚本来自动下载和更新已安装的Google App Engine SDK版本。我可以确定安装的版本 我现在需要发出一个wget请求并检查它是否返回404错误;实际上,这至少是2个请求,一个用于检查bug修复更新,另一个用于检查次要版本更新 我希望避免提出这些wget请求。为此,我需要确定SDK的最新(稳定而非预发布)版本。此信息是否可通过API或其他可查询源获取?python SDK在运行开发服务器时检查当前SDK。发射器也有这个设施 这将是我将使用的方法 对于命令行sdk,实现检查

我正在编写一个脚本来自动下载和更新已安装的Google App Engine SDK版本。我可以确定安装的版本

我现在需要发出一个wget请求并检查它是否返回404错误;实际上,这至少是2个请求,一个用于检查bug修复更新,另一个用于检查次要版本更新


我希望避免提出这些wget请求。为此,我需要确定SDK的最新(稳定而非预发布)版本。此信息是否可通过API或其他可查询源获取?

python SDK在运行开发服务器时检查当前SDK。发射器也有这个设施

这将是我将使用的方法

对于命令行sdk,实现检查的python代码是,正如您所指出的,启动器的代码是


代码对RPC执行api并获取yaml响应。因此,您可以使用该代码,甚至只需从sdk\u checker导入并使用SDKUpdateChecker。

已接受的答案最近被打破。现在返回如下响应,最新版本设置为0.0.0:

$ curl -LSfs https://appengine.google.com/api/updatecheck
    release: "0.0.0"
    timestamp: 1586242881
    api_versions: ['1']
    supported_api_versions:
      python:
        api_versions: ['1']
      python27:
        api_versions: ['1']
      go:
        api_versions: ['go1', 'go1.9']
      java7:
        api_versions: ['1.0']
      go111:
        api_versions: [null]
最新的可用版本是
1.9.90
at

将来可能会有类似URL提供的版本(1.9.91等),但这仍有待观察。看起来可以使用
gcloud components install
gcloud components update
来安装SDK,尽管编写脚本可能更困难

更新:

截至2019年7月30日,独立应用程序引擎SDK已弃用。它将于2020年7月30日无法下载


gcloud
是今后的发展方向,尽管我不确定是否有一种好方法可以自动更新gcloud。如果我找到了一个好的建议或提出了一个好的建议,我会在这里更新。

python开发服务器已经这样做了(检查最新版本)请查看代码,了解他们是如何做到的。@TimHoffman我按照您的建议查看了dev_appserve.py的代码,但它使用了本地版本文件,这就是我获取安装版本信息的方式。这是代码中的注释:““通过解析版本文件获取SDK的版本。但它会检查Google服务器上的当前版本,以及它是否与当前安装的版本不同。这是你想要的,不是吗?@TimHoffman我没有看到他们的,但我记得你可以从windows launcher应用程序进行手动检查。在检查launcher的源代码时,我找到了相关的方法和URL。如果你想输入一个答案,我会接受它,然后删除我的评论来澄清这个问题。源的URL位于此处:。我不使用启动器。当您从命令行运行dev_appserver时,它会检查(除非禁用)安装的SDK是否是最新的。可以。目前这不起作用:当前AppEngine SDK版本为1.9.17,但updatecheck URL返回1.9.15。但是,此版本不再可供下载,使我的脚本失败。你知道目前有什么可行的解决方案吗(除了从网站的HTML中删除URL)?你提到的问题已经被报道了。没有迹象表明何时或是否会修复。你可以阅读更多关于。我不得不引入一个反bug来破坏这个构建。