From d5ce634491e23687a52c778183b4bad5058516a7 Mon Sep 17 00:00:00 2001 From: sskarimov Date: Wed, 22 Jul 2026 13:27:40 +0300 Subject: [PATCH] 12.0.2 --- CHANGELOG.md | 6 +++--- library/decort_vm.py | 13 +++++++++---- module_utils/decort_utils.py | 2 +- 3 files changed, 13 insertions(+), 8 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b827a36..04e03ac 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,11 +1,11 @@ -# Список изменений в версии 12.0.1 +# Список изменений в версии 12.0.2 ## Добавлено ## Удалено ## Исправлено -### Модуль decort_sdn_logical_port +### Модуль decort_vm | Идентификатор
задачи | Описание | | --- | --- | -| BANS-1157 | Модуль не совершал удаление адресов при переданном параметре `no_addresses: true`. | +| BANS-1331 | Модуль завершал работу ошибкой при передаче параметров `disks` и `boot` для существующей ВМ. | diff --git a/library/decort_vm.py b/library/decort_vm.py index 5d121a9..cb64ac8 100644 --- a/library/decort_vm.py +++ b/library/decort_vm.py @@ -1652,12 +1652,17 @@ class decort_vm(DecortController): f'disk {aparam_boot_disk_id} is not attached to ' f'Compute ID {self.comp_id}.' ) - else: + elif aparam_boot_disk_id is not None: + aparam_disk_ids = [] + if aparam_disks['objects']: + aparam_disk_ids = [ + disk['id'] for disk in aparam_disks['objects'] + ] match aparam_disks['mode']: case 'update': if ( aparam_boot_disk_id not in comp_disk_ids - and aparam_boot_disk_id not in aparam_disks['ids'] + and aparam_boot_disk_id not in aparam_disk_ids ): check_errors = True self.message( @@ -1666,7 +1671,7 @@ class decort_vm(DecortController): f'to Compute ID {self.comp_id}.' ) case 'match': - if aparam_boot_disk_id not in aparam_disks['ids']: + if aparam_boot_disk_id not in aparam_disk_ids: check_errors = True self.message( f'Check for parameter "boot.disk_id" failed: ' @@ -1674,7 +1679,7 @@ class decort_vm(DecortController): f'disks.ids' ) case 'detach' | 'delete': - if aparam_boot_disk_id in aparam_disks['ids']: + if aparam_boot_disk_id in aparam_disk_ids: check_errors = True self.message( f'Check for parameter "boot.disk_id" failed: ' diff --git a/module_utils/decort_utils.py b/module_utils/decort_utils.py index 53c97d1..d621a86 100644 --- a/module_utils/decort_utils.py +++ b/module_utils/decort_utils.py @@ -49,7 +49,7 @@ class DecortController(object): _api: sdk_types.API | None = None _usermanager_whoami_result: None | dict = None - ANSIBLE_MODULES_VERSION = '12.0.0' + ANSIBLE_MODULES_VERSION = '12.0.2' COMPATIBLE_SDK_MINOR_VERSION = '1.5' VM_RESIZE_NOT = 0