ERROR: gcloud crashed (ModuleNotFoundError): No module named 'distutils.spawn'

ERROR: gcloud crashed (ModuleNotFoundError): No module named 'distutils.spawn'

我已经在 App Engine 上部署我的服务很长时间了,直到今天才遇到问题。

要部署的命令

gcloud app deploy app.yaml

输出

Beginning deployment of service [default]...
Building and pushing image for service [default]
ERROR: gcloud crashed (ModuleNotFoundError): No module named 'distutils.spawn'

我今天早上刚刚部署,没有任何问题,当我现在尝试重新部署时随机出现上述错误。希望有人能帮助找出导致此问题的原因。

相关信息:

app.yaml

runtime: custom
env: flex
manual_scaling:
  instances: 1
resources:
  cpu: 1
  memory_gb: 4
  disk_size_gb: 10

Gcloud版本

$ gcloud --version
Google Cloud SDK 341.0.0
alpha 2021.05.14
beta 2021.05.14
bq 2.0.68
core 2021.05.14
gsutil 4.62
minikube 1.20.0
skaffold 1.23.0

同样的问题。

为服务构建和推送图像[默认] 错误:gcloud 崩溃(ModuleNotFoundError):没有名为 'distutils.spawn'

的模块

这个问题似乎出现在 google-cloud-sdk 的快照安装中 Ubuntu 20.04.2 LTS(您可以 select 它在 ISO 设置期间预安装..不要)

我也在 18.04 中得到这个

终于解决了..

但是..我必须确保我没有快速安装 google-cloud-sdk

我也..

sudo 更新 须藤升级

然后我确定没有安装 snap install。 (全新安装 Ubuntu 后)。感觉我使用 dockerfiles 对我来说很容易破坏开发环境并将其取回。

但我想如果你不能关闭你的 os 并确保不要让 OS 快速安装 google-cloud-sdk.. 你可以snap remove google-cloud-sdk 然后寻找它的所有配置文件..并删除它们。

那时

https://cloud.google.com/sdk/docs/install#deb

按照那个...我就是这样做的...最终似乎奏效了。我使用了他们解释的 apt 安装路径。不是 snap。

我尝试了所有 pip install sudo apt-get install python3-distutils 直到我脸色发青……NADA。

不知何故.. 存在的 Snap 放置了使用错误 distutils 的 PATH 设置。

现在我在我的盒子上搜索它..在完全新鲜的 OS 状态...没有 Snap 安装并且完全通过 cloud.google.com/sdk/docs/install#deb 工作..

Ubuntu 20.03.2 LTS

我的盒子里到处都是 distutils
$ sudo find / -name distutils

/snap/lxd/19188/lib/python2.7/distutils
/snap/core18/1944/usr/lib/python3.6/distutils
/snap/core18/1944/usr/lib/python3.7/distutils
/snap/core18/1944/usr/lib/python3.8/distutils
/usr/lib/python3.8/distutils
/usr/lib/python3.9/distutils
/usr/lib/python2.7/distutils

注意..快照中没有google-cloud-sdk!!

gcloud app deploy 终于成功了!!通过开始部署的部分。

但正如本文中的其他人一样..它完全是随机发生的。

我能猜到的是……某处的更新破坏了 distutils,并开始指向垃圾路径。

确保你搜索 distutils 找出它在哪里.. 什么在引用它.. 你可以在那个混乱的某个地方修复它。


我发现的一件事是这个问题将默认从 20.04.2 开始。

我下载了 most 最近的 iso.. 以为是 18.04 的问题。

将其全新安装到 Virtual Box 中。遇到了完全相同的问题。所以我的解决方案修复(没有 SNAP).. 反对一个完全干净的 20.04.2 品牌打屁股新 Ubuntu LTS VM。默认一切。

===============

关于随机有一天它起作用了..第二天它没有...

这是 Ubuntu 中关于快照的事情:

https://www.google.com/search?q=Do+snap+packages+update+automatically%3F&rlz=1C1CHBF_enUS834US834&ei=ygynYJGRIo3f-gSLzb3YDg&oq=Do+snap+packages+update+automatically%3F&gs_lcp=Cgdnd3Mtd2l6EAMyCAghEBYQHRAeUJ-TCVifkwlgj5kJaABwAXgAgAFziAHVAZIBAzEuMZgBAKABAqABAaoBB2d3cy13aXrAAQE&sclient=gws-wiz&ved=0ahUKEwiRnrfXz9nwAhWNr54KHYtmD-sQ4dUDCA4&uact=5

“快照包会自动更新吗?

Snaps 自动更新,默认情况下,snapd 守护程序每天检查更新 4 次。每次更新检查称为刷新。"

这就是你使用 snap 时随机损坏的原因

我遇到了类似的问题,就我而言,这是解决方案:

sudo apt-get install python3-distutils