cloudstack icon indicating copy to clipboard operation
cloudstack copied to clipboard

Improve error message on storage tags update

Open BryanMLima opened this issue 2 years ago • 10 comments

Description

This PR aims to improve the error message while trying to update the storage tags of a Disk Offering when none of the Primary Storages have that set of storage tags. The current behavior only showed the ID of the Disk Offering and Storage Pools. This PR improves the error message to display the UUID of these components, as well as their names and the volumes using that Disk Offering. Furthermore, it was added unit tests for the modified method updateOfferingTagsIfIsNotNull.

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)
  • [x] 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
  • [x] Minor

Screenshots (if appropriate):

image

How Has This Been Tested?

This was tested in a local lab trying to update the storage tags of a disk offering, when none of the primary storages had that set of storage tags. The error message returned is in the Screenshots section.

BryanMLima avatar Apr 14 '22 20:04 BryanMLima

Found UI changes, kicking a new UI QA build @blueorangutan ui

acs-robot avatar Apr 25 '22 20:04 acs-robot

PR Coverage Report

CLASS INSTRUCTION MISSED INSTRUCTION COVERED BRANCH MISSED BRANCH COVERED LINE MISSED LINE COVERED
Network 554 0 42 0 107 0
Volume 109 0 2 0 44 0
VirtualMachineGuru 78 0 4 0 15 0
NetworkOrchestrationService 0 101 0 0 0 10
StorageManager 0 211 0 0 0 18
AgentAttache 1042 0 124 0 219 0
ClusteredAgentManagerImpl 2361 0 242 0 536 0
ConnectedAgentAttache 149 0 20 0 40 0
VirtualMachineManagerImpl 15659 0 1500 0 3079 0
NetworkOrchestrator 9806 0 1206 0 1928 0
VolumeOrchestrator 5170 0 560 0 977 0
DataCenterVnetVO 58 0 0 0 24 0
VlanVO 186 0 2 0 72 0
EventVO 140 0 0 0 58 0
HostDaoImpl 4983 0 180 0 803 0
AccountGuestVlanMapVO 46 0 0 0 19 0
NetworkDaoImpl 3307 0 116 0 467 0
NetworkOfferingVO 414 31 0 0 126 12
SnapshotVO 172 58 12 0 48 20
VolumeVO 529 133 4 0 179 39
SnapshotDaoImpl 768 0 8 0 128 0
VolumeDaoImpl 2545 0 56 0 408 0
SystemVmTemplateRegistration 1773 0 86 0 376 0
Upgrade41520to41600 262 17 16 0 62 5
Upgrade41610to41700 159 7 6 0 43 2
DomainRouterVO 116 50 0 0 41 14
ConsoleProxyDaoImpl 635 0 20 0 144 0
DomainRouterDaoImpl 1600 0 22 0 228 0
DirectDownloadCertificateHostMapDaoImpl 121 0 0 0 18 0
DirectDownloadCertificateHostMapVO 54 0 4 0 19 0
PrimaryDataStoreDaoImpl 1244 597 62 10 212 79
AncientDataMotionStrategy 1458 52 170 4 338 10
DefaultSnapshotStrategy 758 220 100 10 164 37
SnapshotDataFactoryImpl 152 58 15 5 37 13
SnapshotObject 748 30 64 0 151 11
DefaultVMSnapshotStrategy 486 677 52 30 100 140
SnapshotDataStoreDaoImpl 1683 60 44 2 292 13
DefaultHostListener 537 0 40 0 101 0
VolumeObject 773 665 77 39 178 117
CloudStackContextLoaderListener 77 0 2 0 21 0
LibvirtComputingResource 8888 1988 1087 147 1983 451
LibvirtVMDef 37 114 6 4 11 36
LibvirtRevertSnapshotCommandWrapper 387 130 20 0 69 16
LibvirtStartCommandWrapper 75 295 16 22 15 72
LibvirtUtilitiesHelper 115 58 4 2 27 8
IscsiAdmStorageAdaptor 981 0 52 0 178 0
IscsiAdmStoragePool 129 0 0 0 32 0
KVMStoragePoolManager 926 4 76 0 192 1
KVMStorageProcessor 5992 498 448 22 1239 71
LibvirtStorageAdaptor 3376 19 257 0 797 2
LibvirtStoragePool 239 89 15 9 64 29
LinstorStorageAdaptor 1076 0 50 0 246 0
ManagedNfsStorageAdaptor 446 0 20 0 125 0
ScaleIOStorageAdaptor 684 121 75 13 152 31
QemuImg 674 0 64 0 160 0
VmwareManagerImpl 2613 528 296 38 615 117
VmwareResource 20395 0 2274 0 4397 0
VmwareStorageProcessor 9892 9 940 0 2122 2
CitrixResourceBase 14658 557 1456 34 3169 122
CitrixCheckSshCommandWrapper 15 51 3 3 3 14
CitrixNetworkElementCommandWrapper 0 14 0 0 0 4
CitrixRebootRouterCommandWrapper 28 25 3 1 5 7
CitrixStartCommandWrapper 690 62 81 1 116 16
KubernetesClusterManagerImpl 4724 0 480 0 760 0
KubernetesClusterActionWorker 1540 0 114 0 281 0
KubernetesClusterResourceModifierActionWorker 1843 0 140 0 325 0
CreateKubernetesClusterCmd 215 0 18 0 61 0
MetricsServiceImpl 2130 0 134 0 446 0
ClusterMetricsResponse 523 0 132 0 60 0
VmMetricsResponse 142 0 22 0 25 0
VolumeMetricsResponse 69 0 8 0 10 0
ZoneMetricsResponse 501 0 126 0 56 0
BigSwitchBcfGuestNetworkGuru 662 0 62 0 145 0
CreateServiceInstanceCmd 201 0 16 0 45 0
StopNetScalerVMCmd 114 0 12 0 26 0
NetScalerControlCenterResource 1943 0 144 0 468 0
NetscalerResource 6882 0 806 0 1623 0
OvsGuestNetworkGuru 409 0 48 0 90 0
VxlanGuestNetworkGuru 89 180 11 21 16 39
ElastistorHostListener 150 0 14 0 30 0
DateraPrimaryDataStoreDriver 3195 0 283 0 748 0
DateraHostListener 635 0 74 0 136 0
CloudStackPrimaryDataStoreDriverImpl 903 0 114 0 229 0
LinstorPrimaryDataStoreDriverImpl 1442 0 91 0 348 0
ScaleIOPrimaryDataStoreDriver 2537 0 246 0 537 0
ScaleIOHostListener 196 0 14 0 43 0
SolidFirePrimaryDataStoreDriver 3347 0 284 0 697 0
SolidFireHostListener 545 0 60 0 112 0
SolidFireSharedHostListener 407 0 30 0 82 0
LinkAccountToLdapCmd 77 105 6 4 18 23
ListAndSwitchSAMLAccountCmd 182 205 30 22 38 34
SAMLUtils 202 465 41 11 53 108
DomainChecker 1206 0 300 0 238 0
ApiAsyncJobDispatcher 212 0 12 0 53 0
ApiDBUtils 2374 0 210 0 592 0
ApiDispatcher 231 0 42 0 55 0
ApiResponseHelper 12147 0 1276 0 2779 0
ApiServer 2868 112 346 0 672 14
ResponseObjectTypeAdapter 161 8 14 0 37 2
ParamProcessWorker 1050 0 155 0 241 0
QueryManagerImpl 14429 0 1270 0 2439 0
DomainRouterJoinDaoImpl 801 0 80 0 195 0
VolumeJoinDaoImpl 770 0 94 0 171 0
AsyncJobJoinVO 86 0 0 0 31 0
DomainRouterJoinVO 237 0 0 0 80 0
EventJoinVO 100 0 0 0 35 0
VolumeJoinVO 267 0 0 0 93 0
Config 152 5162 30 6 42 342
ConfigurationManagerImpl 18194 0 3034 0 3580 0
ConsoleProxyManagerImpl 3717 0 423 0 726 0
ActionEventInterceptor 398 19 44 2 90 7
ActionEventUtils 929 0 90 0 198 0
EventJoinDaoImpl 329 0 18 0 58 0
LibvirtServerDiscoverer 994 0 116 0 218 0
IpAddressManagerImpl 4049 0 461 0 807 0
NetworkModelImpl 6182 0 838 0 1300 0
NetworkServiceImpl 13401 0 1868 0 2557 0
FirewallManagerImpl 2522 0 391 0 455 0
ExternalGuestNetworkGuru 810 0 78 0 148 0
GuestNetworkGuru 632 298 98 34 125 64
PrivateNetworkGuru 394 0 46 0 88 0
LoadBalancingRulesManagerImpl 6024 0 666 0 1254 0
NetworkHelperImpl 2080 0 276 0 443 0
VirtualNetworkApplianceManagerImpl 7600 0 780 0 1521 0
RulesManagerImpl 4074 0 492 0 790 0
NetworkACLManagerImpl 841 0 114 0 176 0
VpcManagerImpl 6893 0 762 0 1316 0
Site2SiteVpnManagerImpl 2298 0 214 0 468 0
ResourceManagerImpl 8524 0 982 0 1659 0
RollingMaintenanceManagerImpl 2041 0 192 0 363 0
ResourceIconManagerImpl 328 0 36 0 70 0
ConfigurationServerImpl 2061 0 176 0 495 0
ManagementServerImpl 12197 0 1076 0 2428 0
StatsCollector 2178 0 124 0 359 0
StorageManagerImpl 8580 0 976 0 1710 0
VolumeApiServiceImpl 10873 0 1502 0 2041 0
SnapshotManagerImpl 4195 0 410 0 753 0
SnapshotSchedulerImpl 871 0 81 0 197 0
ResourceManagerUtilImpl 356 0 24 0 71 0
TaggedResourceManagerImpl 473 0 58 0 96 0
TemplateManagerImpl 5011 0 696 0 1045 0
AccountManagerImpl 6460 0 906 0 1352 0
UserVmManagerImpl 20798 0 2566 0 3869 0
VMSnapshotManagerImpl 3151 0 296 0 628 0
RoleManagerImpl 737 0 114 0 147 0
AffinityGroupServiceImpl 791 0 112 0 172 0
AnnotationManagerImpl 1401 0 167 0 284 0
BackupManagerImpl 2779 0 224 0 489 0
CAManagerImpl 633 0 80 0 129 0
DirectDownloadManagerImpl 1684 0 186 0 361 0
HAManagerImpl 1391 0 194 0 231 0
OutOfBandManagementServiceImpl 1182 0 130 0 237 0
PowerOperationTask 109 0 0 0 17 0
MockNetworkManagerImpl 485 0 22 0 83 0
PremiumSecondaryStorageManagerImpl 775 0 64 0 116 0
SecondaryStorageManagerImpl 3544 149 343 11 629 32
VirtualMachineMO 8953 135 1063 17 1982 31

acs-robot avatar Apr 25 '22 20:04 acs-robot

Found UI changes, kicking a new UI QA build @blueorangutan ui

acs-robot avatar May 11 '22 17:05 acs-robot

@acs-robot a Jenkins job has been kicked to build UI QA env. I'll keep you posted as I make progress.

blueorangutan avatar May 11 '22 17:05 blueorangutan

UI build: :heavy_check_mark: Live QA URL: http://qa.cloudstack.cloud:8080/client/pr/6269 (SL-JID-1556)

blueorangutan avatar May 11 '22 17:05 blueorangutan

Found UI changes, kicking a new UI QA build @blueorangutan ui

acs-robot avatar May 11 '22 19:05 acs-robot

Found UI changes, kicking a new UI QA build @blueorangutan ui

acs-robot avatar Jul 18 '22 15:07 acs-robot

@acs-robot a Jenkins job has been kicked to build UI QA env. I'll keep you posted as I make progress.

blueorangutan avatar Jul 18 '22 15:07 blueorangutan

UI build: :heavy_check_mark: Live QA URL: http://qa.cloudstack.cloud:8080/client/pr/6269 (SL-JID-1975)

blueorangutan avatar Jul 18 '22 15:07 blueorangutan

Found UI changes, kicking a new UI QA build @blueorangutan ui

acs-robot avatar Aug 30 '22 15:08 acs-robot

@acs-robot a Jenkins job has been kicked to build UI QA env. I'll keep you posted as I make progress.

blueorangutan avatar Aug 30 '22 15:08 blueorangutan

UI build: :heavy_check_mark: Live QA URL: http://qa.cloudstack.cloud:8080/client/pr/6269 (SL-JID-2254)

blueorangutan avatar Aug 30 '22 15:08 blueorangutan

Codecov Report

:exclamation: No coverage uploaded for pull request base (main@5dc86ad). Click here to learn what that means. The diff coverage is n/a.

@@           Coverage Diff           @@
##             main    #6269   +/-   ##
=======================================
  Coverage        ?    5.87%           
  Complexity      ?     3934           
=======================================
  Files           ?     2454           
  Lines           ?   242694           
  Branches        ?    37978           
=======================================
  Hits            ?    14261           
  Misses          ?   226854           
  Partials        ?     1579           

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more

codecov[bot] avatar Aug 30 '22 16:08 codecov[bot]

@blueorangutan package

DaanHoogland avatar Aug 31 '22 07:08 DaanHoogland

@DaanHoogland a Jenkins job has been kicked to build packages. It will be bundled with KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress.

blueorangutan avatar Aug 31 '22 07:08 blueorangutan

Packaging result: :heavy_check_mark: el7 :heavy_check_mark: el8 :heavy_check_mark: debian :heavy_check_mark: suse15. SL-JID 4096

blueorangutan avatar Aug 31 '22 08:08 blueorangutan

@blueorangutan test

DaanHoogland avatar Aug 31 '22 13:08 DaanHoogland

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

blueorangutan avatar Aug 31 '22 13:08 blueorangutan

Trillian Build Failed (tid-4788)

blueorangutan avatar Aug 31 '22 13:08 blueorangutan

Trillian Build Failed (tid-4791)

blueorangutan avatar Aug 31 '22 13:08 blueorangutan

@DaanHoogland, can we try to run the tests again?

GutoVeronezi avatar Sep 09 '22 13:09 GutoVeronezi

@blueorangutan package

DaanHoogland avatar Sep 12 '22 09:09 DaanHoogland

@DaanHoogland a Jenkins job has been kicked to build packages. It will be bundled with KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress.

blueorangutan avatar Sep 12 '22 09:09 blueorangutan

Packaging result: :heavy_check_mark: el7 :heavy_check_mark: el8 :heavy_check_mark: debian :heavy_check_mark: suse15. SL-JID 4172

blueorangutan avatar Sep 12 '22 10:09 blueorangutan

@blueorangutan test

DaanHoogland avatar Sep 12 '22 10:09 DaanHoogland

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

blueorangutan avatar Sep 12 '22 10:09 blueorangutan

Trillian test result (tid-4874) Environment: kvm-centos7 (x2), Advanced Networking with Mgmt server 7 Total time taken: 39925 seconds Marvin logs: https://github.com/blueorangutan/acs-prs/releases/download/trillian/pr6269-t4874-kvm-centos7.zip Smoke tests completed. 100 look OK, 1 have errors Only failed tests results shown below:

Test Result Time (s) Test File
test_08_arping_in_ssvm Failure 5.23 test_diagnostics.py
test_09_arping_in_cpvm Failure 5.16 test_diagnostics.py
test_13_retrieve_vr_default_files Failure 128.32 test_diagnostics.py
test_15_retrieve_ssvm_default_files Failure 128.33 test_diagnostics.py

blueorangutan avatar Sep 12 '22 22:09 blueorangutan

I doubt these errors have anything to do with the change. I'll try a re-run again @blueorangutan test

DaanHoogland avatar Sep 13 '22 07:09 DaanHoogland