将内部依赖项部署到 Google App Engine 的纱线工作区 monorepo 应用程序

Fro*_*iwi 9 google-app-engine monorepo yarnpkg

我想将我的应用程序从 monorepo 部署到 GAE。该应用程序依赖于我预先发布到 github 包的本地包。为了让生活变得轻松,我只是告诉我的应用程序始终获取最新版本:

  "dependencies": {
    "@thecointech/email": "*",
    "@thecointech/logging": "*",
    "@thecointech/utilities": "*",
    ...
Run Code Online (Sandbox Code Playgroud)

所有这些都运行良好。

yarn.lock当我尝试将该文件包含到部署中时,问题就出现了。按照此纱线线程中的建议:https://github.com/yarnpkg/yarn/issues/5428,我将本地根复制yarn.lock到应用程序目录并尝试部署。GAE 返回错误:

error Your lockfile needs to be updated, but yarn was run with `--frozen-lockfile`
Run Code Online (Sandbox Code Playgroud)

据我所知,问题源于我的 monorepo 锁定文件不包含我自己的包的条目。在 GAE 上安装时,它正确地发现这些条目丢失并想要添加它们 - 然后我们出错了。

目前,我只是没有完全包括锁定文件和规范部门,但似乎是错误的。这应该可行,这是一个常见的用例,并且工作区已经存在了足够长的时间。你尝试过类似的事情吗?有什么方法可以强制yarn.lock包含我的依赖项吗?