似乎'V1Event'在Kubernetes Python客户端库中缺失,无法再导入
看起来 'V1Event' 在 Python 的 Kubernetes 客户端库中缺失了,无法再导入了。
以前是这样导入的:
from kubernetes.client import (
V1ContainerState,
V1ContainerStateRunning,
V1ContainerStateTerminated,
V1ContainerStateWaiting,
V1ContainerStatus,
V1Event,
)
但是现在在 Kubernetes 版本 26.1.0 中,导入时会出现以下错误:
home/dev/ .tox/run-tests/lib/python3.8/site-packages/_pytest/config/__init__.py:325: PluggyTeardownRaisedWarning: A plugin raised an exception during an old-style hookwrapper teardown.
Plugin: helpconfig, Hook: pytest_cmdline_parse
ConftestImportFailure: ImportError: cannot import name 'V1Event' from 'kubernetes' (/home/dev/ .tox/run-tests/lib/python3.8/site-packages/kubernetes/__init__.py) (from /home/dev/ tests/conftest.py)
For more information see https://pluggy.readthedocs.io/en/stable/api_reference.html#pluggy.PluggyTeardownRaisedWarning
config = pluginmanager.hook.pytest_cmdline_parse(
ImportError while loading conftest '/home/dev/ tests/conftest.py'.
tests/conftest.py:19: in <module>
from .mockubernetes_utils import Mocks
tests/mockubernetes_utils.py:19: in <module>
from kubernetes import V1Event
E ImportError: cannot import name 'V1Event' from 'kubernetes' (/home/dev/ .tox/run-tests/lib/python3.8/site-packages/kubernetes/__init__.py)
run-tests: exit 4 (3.43 seconds) /home/dev > pytest --ignore target/ --cov --cov-report=html --cov-report=xml pid=24115
我尝试从 kubernetes.client.models
导入它,但结果还是一样。
import kubernetes.client.models
ConftestImportFailure: ModuleNotFoundError: No module named 'kubernetes.client.model' (from /home/dev/ tests/conftest.py)
想了解更多信息,请查看
https://pluggy.readthedocs.io/en/stable/api_reference.html#pluggy.PluggyTeardownRaisedWarning
config = pluginmanager.hook.pytest_cmdline_parse(
ImportError while loading conftest '/home/dev/ tests/conftest.py'.
tests/conftest.py:19: in <module>
from .mockubernetes_utils import Mocks
tests/mockubernetes_utils.py:18: in <module>
from kubernetes.client.model import V1Event
E ModuleNotFoundError: No module named 'kubernetes.client.model'
2 个回答
0
试着使用
from kubernetes.client import ( CoreV1Event, CoreV1EventList)
从第19版开始,这个已经有所改变了
0
这个库的名字改成了CoreV1Event,但导入的路径还是一样的。