如何从 AppEngine 下载特定服务的源代码?

How do I download a specific service's source code off of AppEngine?

我有一些 php 源代码在 App Engine 生产环境中工作,但在其他任何地方都无法工作。该代码的旧版本似乎也根本不起作用,所以我需要获取该源代码并查看它到底有什么不同。

此讨论概述了我面临的挑战: http://google-app-engine.75637.x6.nabble.com/Download-specific-Module-code-td699.html

有人告诉我尝试使用 appcfg.py download_app:

appcfg.py download_app -A <APP_NAME> -V <Version> <DIR>

问题是这个命令不允许我指定模块/服务,所以我无法定位我的源代码。此外,我不是应用程序所有者,所以我无法下载所有内容,但据我所知,这仍然行不通,因为 appcfg 似乎只针对默认服务。

我链接的文章以使用 gcloud 下载应用程序的建议结束,但我一直无法找到如何执行此操作。这里有人知道如何解决这个问题吗?该服务在灵活实例中为 运行 - 不确定这是否有所作为...

来自appcfg.py download_app --help

Usage: appcfg.py [options] download_app -A app_id [ -V version ]

...

-M MODULE, --module=MODULE Set the module, overriding the module value from app.yaml. ...

此调用允许我下载 :

的非默认 python 模块的代码
appcfg.py --module=<my_module> download_app -A <my_app> .

当然需要满足身份验证、所有权等要求。 并且您的应用不应配置为防止源代码下载(不可逆配置)

简单易行:

  1. 切换到您计算机上安装 App Engine 的目录。通常在以下路径下:

    C:\Program Files\Google\google_appengine

  2. 运行 下面的命令

    appcfg.py download_app –A MyAppName -V 1 c:\AppEngine\SourceCode

解法:

appcfg.py -A [YOUR_PROJECT_ID] --module=[YOUR_PROJECT_MODULE] download_app [SAVE_FOLDER]

示例:

appcfg.py -A foo-project --module=01-01.foo-project.appspot.com download_app foo-project-v0101

因为网上列出的 none 方法没有让我找到代码(截至 2021 年 6 月),所以发布此内容

您可以尝试访问您的源代码;

Google Cloud Platform > Debugger > choosing the version of the Application from combo at top.

这将在左侧窗格中列出该版本的文件。无法自动下载,但您可以复制粘贴代码。

希望这对您有所帮助。