Skip to content

Conversation

@GutoVeronezi
Copy link
Contributor

Description

The bus type to data disk volumes is hardcoded to virtio or scsi, when using virtio-scsi (or, based on the template type). Therefore, there is no way to specify the bus type to data disk volumes (as we have for root disks).

This PR intends to replicate the rootDiskController behavior to dataDiskController, allowing the definition of the controller.

Types of changes

  • Breaking change (fix or feature that would cause existing functionality to change)
  • New feature (non-breaking change which adds functionality)
  • Bug fix (non-breaking change which fixes an issue)
  • Enhancement (improves an existing feature and functionality)
  • Cleanup (Code refactoring and cleanup, that may add test cases)

Feature/Enhancement Scale or Bug Severity

Feature/Enhancement Scale

  • Major
  • Minor

How Has This Been Tested?

It has been tested locally.

The bus type to `data disk` volumes is hardcoded to `virtio` or `scsi`, when using virtio-scsi (or, based on the template type). Therefore, there is no way to specify the bus type to data disk volumes (as we have for root disks).
This PR intends to replicate the `rootDiskController` behavior to `dataDiskController`, allowing the definition of the controller.
Copy link
Contributor

@RodrigoDLopez RodrigoDLopez left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice Enhancement @GutoVeronezi
can you please explain to me how the local tests were carried out?

My tests consist of entering the details of the data disk (during the deployment process of an instance or via a graphical interface with a previously created instance) and then checking if the details informed are present in the dump XML of the target instance.

I performed manual tests with this branch. It is correct and working as it should.
LGTM

@RodrigoDLopez
Copy link
Contributor

@blueorangutan package

@blueorangutan
Copy link

@RodrigoDLopez a Jenkins job has been kicked to build packages. I'll keep you posted as I make progress.

@blueorangutan
Copy link

Packaging result: ✔centos7 ✔centos8 ✔debian. JID-2527

@RodrigoDLopez
Copy link
Contributor

@blueorangutan test

@GutoVeronezi
Copy link
Contributor Author

@RodrigoDLopez thanks for asking.

Actually the process is quite similar as which you described.

I made the whole process via GUI.

  1. I created an instance.

  2. With it stopped, I created a volume and attached to it.

  3. I setted the dataDiskController setting as ide and started the instance.

  4. After that, I checked if the detail informed was in the dump XML of the instance.
    What I got was <target dev = 'hda' bus = 'ide' />, which was what I expected.

@DaanHoogland
Copy link
Contributor

@blueorangutan test

@DaanHoogland DaanHoogland added this to the 4.16.0.0 milestone Jan 18, 2021
@blueorangutan
Copy link

@DaanHoogland a Trillian-Jenkins test job (centos7 mgmt + kvm-centos7) has been kicked to run smoke tests

@blueorangutan
Copy link

Trillian test result (tid-3388)
Environment: kvm-centos7 (x2), Advanced Networking with Mgmt server 7
Total time taken: 32743 seconds
Marvin logs: https://github.com/blueorangutan/acs-prs/releases/download/trillian/pr4569-t3388-kvm-centos7.zip
Intermittent failure detected: /marvin/tests/smoke/test_kubernetes_clusters.py
Smoke tests completed. 86 look OK, 0 have error(s)
Only failed tests results shown below:

Test Result Time (s) Test File

Copy link
Contributor

@DaanHoogland DaanHoogland left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

one concern; the default used to be virtio and now it is null? otherwise the code looks good

@GutoVeronezi
Copy link
Contributor Author

one concern; the default used to be virtio and now it is null? otherwise the code looks good

@DaanHoogland
The method getDataDiskModelFromVMDetail returns null if the dataDiskController setting is not configured.
If the method returns null, then it will keep the same behavior as before, so the default still is virtio.

@DaanHoogland
Copy link
Contributor

@GutoVeronezi you are right, i read with crooked eyes.

@rohityadavcloud rohityadavcloud merged commit 3a4a82d into apache:master Jan 28, 2021
@GutoVeronezi GutoVeronezi deleted the enable-set-data-disk-controller-from-vm-details branch January 28, 2021 11:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants