我编写了一组与基于 OpenStack 的服务交互的自动化工具。这些工具依赖于 openstack shade图书馆。该客户端库说
shade has been superceded by openstacksdk and no longer takes new features.
自 2017 年以来。
现在我只是想知道:
- 有转换现有代码库的具体方法吗?
- 需要付出多少努力?
最佳答案
当然,没有两个项目是相同的,但我认为有必要声明:前进很可能是一个快速而快速的练习!
在我们的例子中,唯一需要的更改是替换:
my_connection = shade.openstack_cloud(cloud='cloudX', **auth_data)
与
my_connection = openstack.connection.from_config(cloud='cloudX', **auth_data)
使用该 my_connection
对象的所有其他代码的工作方式与以前完全相同。换句话说:据我观察,shade 和 openstack 客户端对象的 API、方法和参数是相同的。
因此更新为openstacksdk对于我们项目中的客户端代码来说几乎完全透明。
如上所述,这可能不适用于所有项目,但考虑到有意义的抽象已经到位,这一举措的潜在成本微不足道。
关于python - 如何从 openstack Shadow 迁移到 openstacksdk?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59412347/