Как перейти от тени openstack к openstacksdk?

Я написал набор инструментов автоматизации, которые взаимодействуют с сервисом на основе openstack. Инструменты полагаются на библиотеку оттенков openstack. Эта клиентская библиотека говорит

shade был заменен openstacksdk и больше не имеет новых функций.

с 2017 года.

Теперь мне просто интересно:

  • есть ли особый подход к преобразованию существующей базы кода?
  • сколько усилий следует ожидать?

1 ответ

Решение

Конечно, нет двух одинаковых проектов, но я считаю уместным заявить: движение вперед - это, скорее всего, быстрое и быстрое упражнение!

В нашем случае единственное изменение, которое потребовалось, - это заменить:

 my_connection = shade.openstack_cloud(cloud='cloudX', **auth_data)

с

my_connection = openstack.connection.from_config(cloud='cloudX', **auth_data)

Весь другой код, использующий этоmy_connectionобъект работает точно так же, как и раньше. Другими словами: API-интерфейсы для клиентских объектов тени и openstack, а также методы и параметры, насколько я мог заметить, одинаковы.

Поэтому обновление до openstacksdk было почти полностью прозрачным для клиентского кода в нашем проекте.

Как уже было сказано, это может относиться не ко всем проектам, но с учетом значимых абстракций, потенциальные затраты на этот шаг незначительны.

Другие вопросы по тегам