ScaleComputing / HyperCoreAnsibleCollection

Official Ansible collection for Scale Computing SC//HyperCore (HC3) v1 API
GNU General Public License v3.0
12 stars 8 forks source link

:lady_beetle: Bug: error in scale_computing.hypercore.version_update_single_node : Wait until VMs shutdown #257

Closed ddemlow closed 11 months ago

ddemlow commented 11 months ago

Describe the bug

A clear and concise description of what the bug is.

To Reproduce

playbook is pretty simple (full playbook can be provided_

- name: Update HyperCore single-node system to a desired version
  include_role:
    name: scale_computing.hypercore.version_update_single_node
  vars:
    version_update_single_node_desired_version: "{{ hypercore_desired_version }}"

TASK [scale_computing.hypercore.version_update_single_node : Wait until VMs shutdown] **** task path: /Users/davedemlow/ansible_collections/scale_computing/hypercore/roles/version_update_single_node/tasks/shutdown_vms.yml:14 Monday 31 July 2023 12:39:50 -0400 (0:00:00.039) 0:00:10.780 *** fatal: [192.168.1.246.nip.io]: FAILED! => { "msg": "Unexpected templating type error occurred on ({{ range(0, (version_update_single_node_shutdown_wait_time / 10.0) | round(0, 'ceil') | int) | list }}): unsupported operand type(s) for /: 'str' and 'float'" }

I am testing against a single node running 9.2.17.211525 from current "main"

Expected behavior

A clear and concise description of what you expected to happen.

Screenshots

If applicable, add screenshots to help explain your problem.

System Info (please complete the following information):

Additional context

Add any other context about the problem here.

ddemlow commented 11 months ago

the bug seems to be in the default value specified in the role not being a float (here https://github.com/ScaleComputing/HyperCoreAnsibleCollection/blob/main/roles/version_update_single_node/defaults/main.yml)

if I add the following to my playbook it works

vars: version_update_single_node_shutdown_wait_time: 300

justinc1 commented 11 months ago

The https://github.com/ScaleComputing/HyperCoreAnsibleCollection/blob/main/roles/version_update_single_node/defaults/main.yml wants to use (deprecated) scale_computing_hypercore_shutdown_wait_time as default value for version_update_single_node_shutdown_wait_time. Sorry I missed I need to add the extra type conversion in role implementation.