11.0.1
This commit is contained in:
164
CHANGELOG.md
164
CHANGELOG.md
@@ -1,170 +1,10 @@
|
|||||||
# Список изменений в версии 11.0.0
|
# Список изменений в версии 11.0.1
|
||||||
|
|
||||||
## Добавлено
|
## Добавлено
|
||||||
### Глобально
|
|
||||||
| Идентификатор<br>задачи | Описание |
|
|
||||||
| --- | --- |
|
|
||||||
| BANS-909 | В системные требования добавлена библиотека Python `dynamix_sdk`. |
|
|
||||||
| BANS-918 | Добавлен общий для всех модулей параметр `ignore_api_compatibility`. |
|
|
||||||
| BANS-913 | Добавлен общий для всех модулей параметр `ignore_sdk_version_check`. |
|
|
||||||
| BANS-954 | Добавлен модуль `decort_vm` в связи с переименованием из `decort_kvmvm`. |
|
|
||||||
| BANS-953 | Добавлен модуль `decort_image` в связи с переименованием из `decort_osimage`. |
|
|
||||||
| BANS-997 | Добавлен модуль `decort_security_group_list`, позволяющий получить список доступных групп безопасности. |
|
|
||||||
| BANS-884 | Добавлен модуль `decort_disk_list`, позволяющий получить список доступных дисков. |
|
|
||||||
| BANS-936 | Добавлен модуль `decort_rg_list`, позволяющий получить список доступных ресурсных групп. |
|
|
||||||
| BANS-949 | Добавлен модуль `decort_vins_list`, позволяющий получить список доступных внутренних сетей. |
|
|
||||||
| BANS-940 | Добавлен модуль `decort_vm_list`, позволяющий получить список доступных виртуальных машин. |
|
|
||||||
| BANS-959 | Добавлен модуль `decort_flip_group_list`, позволяющий получить список доступных групп с плавающим IP-адресом. |
|
|
||||||
| BANS-952 | Добавлен модуль `decort_image_list`, позволяющий получить список доступных образов. |
|
|
||||||
| BANS-983 | Добавлен модуль `decort_account_list`, позволяющий получить список доступных аккаунтов. |
|
|
||||||
| BANS-985 | Добавлен модуль `decort_audit_list`, позволяющий получить список аудитов. |
|
|
||||||
| BANS-988 | Добавлен модуль `decort_trunk_list`, позволяющий получить список доступных транковых портов. |
|
|
||||||
| BANS-987 | Добавлен модуль `decort_zone_list`, позволяющий получить список доступных зон. |
|
|
||||||
| BANS-989 | Добавлен модуль `decort_storage_policy_list`, позволяющий получить список политик хранения. |
|
|
||||||
| BANS-945 | Добавлен модуль `decort_user` в связи с переименованием из `decort_user_info`. |
|
|
||||||
|
|
||||||
### Модуль decort_vm
|
|
||||||
| Идентификатор<br>задачи | Описание |
|
|
||||||
| --- | --- |
|
|
||||||
| BANS-926 | Для параметра `chipset` добавлено значение по умолчанию `Q35` при создании ВМ. |
|
|
||||||
| BANS-933 | Добавлено возвращаемое значение `pinned_to_node` в связи с переименованием из `pinned_to_stack`. |
|
|
||||||
| BANS-934 | Добавлено возвращаемое значение `read_only`. |
|
|
||||||
| BANS-994 | Добавлена возможность задать параметр `mtu` при создании сетевого интерфейса для TRUNK-сети и изменить `mtu` у существующего интерфейса, подключённого к TRUNK-сети. |
|
|
||||||
| BANS-991 | Добавлена возможность указать параметр `ip_addr` при присоединении и изменении `DPDK` сети. |
|
|
||||||
| BANS-1017 | Добавлено возвращаемое значение `disks.cache`. |
|
|
||||||
| BANS-1034 | Добавлена возможность указать параметр `ip_addr` при присоединении и изменении `VFNIC` сети. |
|
|
||||||
| BANS-992 | Добавлен параметр `networks.net_prefix`. |
|
|
||||||
|
|
||||||
### Модуль decort_group
|
|
||||||
| Идентификатор<br>задачи | Описание |
|
|
||||||
| --- | --- |
|
|
||||||
| BANS-927 | Для параметра `chipset` добавлено значение по умолчанию `Q35` при создании группы. |
|
|
||||||
|
|
||||||
### Модуль decort_k8s
|
|
||||||
| Идентификатор<br>задачи | Описание |
|
|
||||||
| --- | --- |
|
|
||||||
| BANS-928 | Для параметра `chipset` добавлено значение по умолчанию `Q35` при создании кластера. |
|
|
||||||
|
|
||||||
### Модуль decort_account
|
|
||||||
| Идентификатор<br>задачи | Описание |
|
|
||||||
| --- | --- |
|
|
||||||
| BANS-966 | Добавлен параметр `get_resource_consumption` и возвращаемое значение `resource_consumption`. |
|
|
||||||
|
|
||||||
### Модуль decort_trunk
|
|
||||||
| Идентификатор<br>задачи | Описание |
|
|
||||||
| --- | --- |
|
|
||||||
| BANS-993 | Добавлено возвращаемое значение `mtu`. |
|
|
||||||
| BANS-976 | Добавлены возвращаемые значения `created_datetime`, `deleted_datetime`, `updated_datetime`. |
|
|
||||||
|
|
||||||
### Модуль decort_zone
|
|
||||||
| Идентификатор<br>задачи | Описание |
|
|
||||||
| --- | --- |
|
|
||||||
| BANS-970 | Добавлены возвращаемые значения `created_datetime`, `updated_datetime` и возвращаемые значения `account_ids`, `bservice_ids`, `vm_ids`, `extnet_ids`, `k8s_ids`, `lb_ids`, `vins_ids` в связи с переименованием из `accountIds`, `bserviceIds`, `computeIds`, `extnetIds`, `k8sIds`, `lbIds`, `vinsIds`. |
|
|
||||||
| BANS-1024 | Добавлено возвращаемое значение `node_auto_start`. |
|
|
||||||
|
|
||||||
### Модуль decort_vm_snapshot
|
|
||||||
| Идентификатор<br>задачи | Описание |
|
|
||||||
| --- | --- |
|
|
||||||
| BANS-978 | Добавлено возвращаемое значение `datetime`. |
|
|
||||||
|
|
||||||
### Модуль decort_storage_policy
|
|
||||||
| Идентификатор<br>задачи | Описание |
|
|
||||||
| --- | --- |
|
|
||||||
| BANS-977 | Добавлены возвращаемые значения `sep_name`, `sep_tech_status`. |
|
|
||||||
|
|
||||||
### Модуль decort_disk
|
|
||||||
| Идентификатор<br>задачи | Описание |
|
|
||||||
| --- | --- |
|
|
||||||
| BANS-1019 | Добавлено возвращаемое значение `cache_mode`. |
|
|
||||||
| BANS-1050 | Добавлено возвращаемое значение `blkdiscard`. |
|
|
||||||
|
|
||||||
## Удалено
|
## Удалено
|
||||||
### Глобально
|
|
||||||
| Идентификатор<br>задачи | Описание |
|
|
||||||
| --- | --- |
|
|
||||||
| BANS-954 | Удалён модуль `decort_kvmvm` в связи с переименованием в `decort_vm`. |
|
|
||||||
| BANS-969 | Модуль `decort_account_info` расформирован, его функционал перенесён в модули: `decort_disk_list`, `decort_rg_list`, `decort_vins_list`, `decort_vm_list`, `decort_flip_group_list`, `decort_image_list`, `decort_account`. |
|
|
||||||
| BANS-953 | Удалён модуль `decort_osimage` в связи с переименованием в `decort_image`. |
|
|
||||||
| BANS-945 | Удалён модуль `decort_user_info` в связи с переименованием в `decort_user`. |
|
|
||||||
|
|
||||||
### Модуль decort_account
|
|
||||||
| Идентификатор<br>задачи | Описание |
|
|
||||||
| --- | --- |
|
|
||||||
| BANS-924 | Удалён параметр `quotas.ext_traffic`. |
|
|
||||||
| BANS-998 |Для параметра `state` удалено значение по умолчанию. |
|
|
||||||
|
|
||||||
### Модуль decort_rg
|
|
||||||
| Идентификатор<br>задачи | Описание |
|
|
||||||
| --- | --- |
|
|
||||||
| BANS-925 | Удалён параметр `quotas.net_transfer`. |
|
|
||||||
|
|
||||||
### Модуль decort_vm
|
|
||||||
| Идентификатор<br>задачи | Описание |
|
|
||||||
| --- | --- |
|
|
||||||
| BANS-926 | Для параметра `chipset` удалено значение по умолчанию `i440fx` при создании ВМ. |
|
|
||||||
| BANS-933 | Удалено возвращаемое значение `pinned_to_stack` в связи с переименованием в `pinned_to_node`. |
|
|
||||||
| BANS-961 | Параметр `storage_policy_id` удалён из обязательных при пересоздании загрузочного диска. |
|
|
||||||
|
|
||||||
### Модуль decort_group
|
|
||||||
| Идентификатор<br>задачи | Описание |
|
|
||||||
| --- | --- |
|
|
||||||
| BANS-927 | Для параметра `chipset` удалено значение по умолчанию `i440fx` при создании группы. |
|
|
||||||
| BANS-1027 | Удалён параметр `driver`. |
|
|
||||||
|
|
||||||
### Модуль decort_k8s
|
|
||||||
| Идентификатор<br>задачи | Описание |
|
|
||||||
| --- | --- |
|
|
||||||
| BANS-928 | Для параметра `chipset` удалено значение по умолчанию `i440fx` при создании кластера. |
|
|
||||||
|
|
||||||
### Модуль decort_user
|
|
||||||
| Идентификатор<br>задачи | Описание |
|
|
||||||
| --- | --- |
|
|
||||||
| BANS-983 | Удалён параметр `accounts` и возвращаемое значение `accounts` в связи с переносом этой функциональности в модуль `decort_account_list`. |
|
|
||||||
| BANS-985 | Удалён параметр `audits` и возвращаемое значение `audits` в связи с переносом этой функциональности в модуль `decort_audit_list`. |
|
|
||||||
| BANS-988 | Удалён параметр `trunks` и возвращаемое значение `trunks` в связи с переносом этой функциональности в модуль `decort_trunk_list`. |
|
|
||||||
| BANS-987 | Удалён параметр `zones` и возвращаемое значение `zones` в связи с переносом этой функциональности в модуль `decort_zone_list`. |
|
|
||||||
| BANS-989 | Удалён параметр `storage_policies` и возвращаемое значение `storage_policies` в связи с переносом этой функциональности в модуль `decort_storage_policy_list`. |
|
|
||||||
| BANS-997 | Удалён параметр `security_groups` и возвращаемое значение `security_groups` в связи с переносом этой функциональности в модуль `decort_security_group_list`. |
|
|
||||||
|
|
||||||
### Модуль decort_zone
|
|
||||||
| Идентификатор<br>задачи | Описание |
|
|
||||||
| --- | --- |
|
|
||||||
| BANS-970 | Удалены возвращаемые значения `accountIds`, `bserviceIds`, `computeIds`, `extnetIds`, `k8sIds`, `lbIds`, `vinsIds` в связи с переименованием в `account_ids`, `bservice_ids`, `vm_ids`, `extnet_ids`, `k8s_ids`, `lb_ids`, `vins_ids`. |
|
|
||||||
|
|
||||||
### Модуль decort_disk
|
|
||||||
| Идентификатор<br>задачи | Описание |
|
|
||||||
| --- | --- |
|
|
||||||
| BANS-1004 | Удалён параметр `reason` |
|
|
||||||
|
|
||||||
### Модуль decort_security_group
|
|
||||||
| Идентификатор<br>задачи | Описание |
|
|
||||||
| --- | --- |
|
|
||||||
| BANS-1000 | Удалено возвращаемое значение `rules.remote_ip_prefix` в связи с переименованием в `rules.remote_net_cidr`. |
|
|
||||||
| BANS-1013 | Удален параметр `rules.objects.remote_ip_prefix` в связи с переименованием в `rules.objects.remote_net_cidr`. |
|
|
||||||
|
|
||||||
### Модуль decort_vm_snapshot
|
|
||||||
| Идентификатор<br>задачи | Описание |
|
|
||||||
| --- | --- |
|
|
||||||
| BANS-1012 | Удалено возвращаемое значение `disks` в связи с переименованием в `disk_ids`. |
|
|
||||||
|
|
||||||
## Исправлено
|
## Исправлено
|
||||||
### Модуль decort_vm
|
|
||||||
| Идентификатор<br>задачи | Описание |
|
| Идентификатор<br>задачи | Описание |
|
||||||
| --- | --- |
|
| --- | --- |
|
||||||
| BANS-996 | Параметры `mac`, `security_groups`, `enable_secgroups`, `enabled` сетевого интерфейса DPDK-сети могли меняться при изменении `mtu`. |
|
| BANS-1173 | Модуль завершал работу ошибкой запроса к API при попытке добавить группу worker-узлов к существующему кластеру. |
|
||||||
| BANS-1052 | Параметры `numa_affinity`, `cpu_pin`, `hp_backed` не применялись при создании ВМ без образа. |
|
|
||||||
|
|
||||||
### Модуль decort_bservice
|
|
||||||
| Идентификатор<br>задачи | Описание |
|
|
||||||
| --- | --- |
|
|
||||||
| BANS-389 | После создания базовой службы, модуль не возвращал информацию о созданном объекте. |
|
|
||||||
|
|
||||||
### Модуль decort_vm_snapshot
|
|
||||||
| Идентификатор<br>задачи | Описание |
|
|
||||||
| --- | --- |
|
|
||||||
| BANS-1022 | После создания снимка не возвращалась информация о снимке. |
|
|
||||||
|
|
||||||
### Модуль decort_k8s
|
|
||||||
| Идентификатор<br>задачи | Описание |
|
|
||||||
| --- | --- |
|
|
||||||
| BANS-1033 | Модуль без необходимости выполнял запрос к API `/cloudapi/k8s/update`, передавая в него параметры, не вызывающие изменения. |
|
|
||||||
|
|||||||
@@ -215,6 +215,7 @@ class decort_k8s(DecortController):
|
|||||||
self.k8s_workers_modify(
|
self.k8s_workers_modify(
|
||||||
arg_k8swg=self.k8s_info,
|
arg_k8swg=self.k8s_info,
|
||||||
arg_modwg=target_wgs,
|
arg_modwg=target_wgs,
|
||||||
|
storage_policy_id=self.aparams['storage_policy_id'],
|
||||||
)
|
)
|
||||||
self.k8s_info = self.k8s_get_by_id(k8s_id=self.k8s_id)
|
self.k8s_info = self.k8s_get_by_id(k8s_id=self.k8s_id)
|
||||||
return
|
return
|
||||||
@@ -257,7 +258,10 @@ class decort_k8s(DecortController):
|
|||||||
self.k8s_info = self.k8s_get_by_id(k8s_id=self.k8s_id)
|
self.k8s_info = self.k8s_get_by_id(k8s_id=self.k8s_id)
|
||||||
#check groups and modify if needed
|
#check groups and modify if needed
|
||||||
if self.aparams['workers'] is not None:
|
if self.aparams['workers'] is not None:
|
||||||
self.k8s_workers_modify(self.k8s_info, self.amodule.params['workers'])
|
self.k8s_workers_modify(
|
||||||
|
arg_k8swg=self.k8s_info,
|
||||||
|
arg_modwg=self.amodule.params['workers'],
|
||||||
|
)
|
||||||
|
|
||||||
aparam_zone_id = self.aparams['zone_id']
|
aparam_zone_id = self.aparams['zone_id']
|
||||||
if aparam_zone_id is not None and aparam_zone_id != self.k8s_info['zoneId']:
|
if aparam_zone_id is not None and aparam_zone_id != self.k8s_info['zoneId']:
|
||||||
|
|||||||
@@ -43,7 +43,7 @@ class DecortController(object):
|
|||||||
_api: sdk_types.API | None = None
|
_api: sdk_types.API | None = None
|
||||||
_usermanager_whoami_result: None | dict = None
|
_usermanager_whoami_result: None | dict = None
|
||||||
|
|
||||||
ANSIBLE_MODULES_VERSION = '11.0.0'
|
ANSIBLE_MODULES_VERSION = '11.0.1'
|
||||||
COMPATIBLE_SDK_MINOR_VERSION = '1.4'
|
COMPATIBLE_SDK_MINOR_VERSION = '1.4'
|
||||||
|
|
||||||
VM_RESIZE_NOT = 0
|
VM_RESIZE_NOT = 0
|
||||||
@@ -5537,7 +5537,12 @@ class DecortController(object):
|
|||||||
self.result['changed'] = False
|
self.result['changed'] = False
|
||||||
return
|
return
|
||||||
|
|
||||||
def k8s_workers_modify(self,arg_k8swg,arg_modwg):
|
def k8s_workers_modify(
|
||||||
|
self,
|
||||||
|
arg_k8swg,
|
||||||
|
arg_modwg,
|
||||||
|
master_node_storage_policy_id: int | None = None,
|
||||||
|
):
|
||||||
|
|
||||||
self.result['waypoints'] = "{} -> {}".format(self.result['waypoints'], "k8s_workers_modify")
|
self.result['waypoints'] = "{} -> {}".format(self.result['waypoints'], "k8s_workers_modify")
|
||||||
|
|
||||||
@@ -5651,6 +5656,12 @@ class DecortController(object):
|
|||||||
'annotations': wg_to_create['annotations'],
|
'annotations': wg_to_create['annotations'],
|
||||||
'userData': json.dumps(wg_to_create['ci_user_data']),
|
'userData': json.dumps(wg_to_create['ci_user_data']),
|
||||||
'chipset': wg_to_create['chipset'],
|
'chipset': wg_to_create['chipset'],
|
||||||
|
'storage_policy_id': (
|
||||||
|
master_node_storage_policy_id
|
||||||
|
or self.k8s_get_master_node_storage_policy_id(
|
||||||
|
k8s_info=arg_k8swg,
|
||||||
|
)
|
||||||
|
),
|
||||||
}
|
}
|
||||||
wg_add_response = self.decort_api_call(
|
wg_add_response = self.decort_api_call(
|
||||||
arg_req_function=requests.post,
|
arg_req_function=requests.post,
|
||||||
@@ -5807,6 +5818,19 @@ class DecortController(object):
|
|||||||
self.set_changed()
|
self.set_changed()
|
||||||
return api_response.json()
|
return api_response.json()
|
||||||
|
|
||||||
|
def k8s_get_master_node_storage_policy_id(self, k8s_info: dict) -> int:
|
||||||
|
master_nodes_info = k8s_info['k8sGroups']['masters'][
|
||||||
|
'detailedInfo'
|
||||||
|
]
|
||||||
|
if not master_nodes_info:
|
||||||
|
raise ValueError(
|
||||||
|
f'No master nodes found in K8s cluster ID {k8s_info['id']}'
|
||||||
|
)
|
||||||
|
_, master_node_info, _ = self._compute_get_by_id(
|
||||||
|
comp_id=master_nodes_info[0]['id']
|
||||||
|
)
|
||||||
|
return master_node_info['disks'][0]['storage_policy_id']
|
||||||
|
|
||||||
##############################
|
##############################
|
||||||
#
|
#
|
||||||
# Bservice management
|
# Bservice management
|
||||||
|
|||||||
Reference in New Issue
Block a user