Appengine应用部署未上传某些文件夹

时间:2018-11-24 06:35:54

标签: google-app-engine google-cloud-platform

我在AppEngine上部署了一个应用程序。 当我在本地测试应用程序时,一切正常。 我已经完成作曲家的安装,并且“ vendor”文件夹存在。

当我查看源代码时,我可以看到某些文件夹没有上载。 这是我在本地驱动器上的文件夹结构:

local folder structure

我使用以下代码进行部署:

   SELECT  CustomerId,
            CustomerName,
            Email,
            Dob,
    FROM    Customers
    WHERE   DAY(Dob) = DAY(cast(switchoffset(todatetimeoffset(GETDATE(), '-06:00'), '+05:30') as datetime))
            AND MONTH(Dob) = MONTH(cast(switchoffset(todatetimeoffset(GETDATE(), '-06:00'), '+05:30') as datetime))

已部署的结构如下:

Deployed app

如您所见,仅上载了dialpad_research文件夹。 我的app.yaml文件是这样的:

gcloud app deploy --promote --stop-previous-version app.yaml

你知道我在这里做错什么吗?

谢谢

1 个答案:

答案 0 :(得分:3)

由于static是通过static_dir处理程序处理的,因此GAE上可能缺少application_readable目录,因此默认情况下它不会与应用程序代码一起上传。如果您希望将其与应用程序代码一起上传,则需要为其设置static_file。来自Handlers element

  

应用可读

     

可选。布尔值。默认情况下,在静态文件处理程序中声明的文件   作为静态数据上传,并且仅提供给最终用户。他们   应用程序无法读取。如果此字段设置为true,则   文件也作为代码数据上传,因此您的应用程序可以读取   他们。两次上传均会根据您的代码和静态数据收费   存储resource quotas

这同样适用于通过vendor处理程序提供的所有单个文件。

vendor目录的内容有所不同-没有静态文件/目录引用它。

我尚无法从您发布信息中上传--verbosity的原因。您可以尝试的事情:

  • 使用vendor global option来提高部署命令的详细程度,应该说明要跳过哪些文件/目录以及原因。
  • 如果您的服务中有.gcloudignore file,请检查其内容
  • 使用不同于{{1}}的目录名-以防万一由于某种原因而对特定名称进行了不同处理的情况-只是一个大胆的猜测,以防因增加的冗长性而无法跳过目录的原因< / li>