mirror of https://github.com/apache/cloudstack.git
CLOUDSTACK-9438: Fix for CLOUDSTACK-9252 - Make NFS version changeable in UIJIRA TICKET: https://issues.apache.org/jira/browse/CLOUDSTACK-9438 ### Introduction From #1361 it was possible to configure NFS version for secondary storage mount. However, changing NFS version requires inserting an new detail on `image_store_details` table, with `name = 'nfs.version'` and `value = X` where X is desired NFS version, and then restarting management server for changes to take effect. Our improvement aims to make NFS version changeable from UI, instead of previously described workflow. ### Proposed solution Basically, NFS version is defined as an image store ConfigKey, this implied: * Adding a new Config scope: **ImageStore** * Make `ImageStoreDetailsDao` class to extend `ResourceDetailsDaoBase` and `ImageStoreDetailVO` implement `ResourceDetail` * Insert `'display'` column on `image_store_details` table * Extending `ListCfgsCmd` and `UpdateCfgCmd` to support **ImageStore** scope, which implied: ** Injecting `ImageStoreDetailsDao` and `ImageStoreDao` on `ConfigurationManagerImpl` class, on `cloud-server` module. ### Important It is important to mention that `ImageStoreDaoImpl` and `ImageStoreDetailsDaoImpl` classes were moved from `cloud-engine-storage` to `cloud-engine-schema` module in order to Spring find those beans to inject on `ConfigurationManagerImpl` in `cloud-server` module. We had this maven dependencies between modules: * `cloud-server --> cloud-engine-schema` * `cloud-engine-storage --> cloud-secondary-storage --> cloud-server` As `ImageStoreDaoImpl` and `ImageStoreDetailsDao` were defined in `cloud-engine-storage`, and they needed in `cloud-server` module, to be injected on `ConfigurationManagerImpl`, if we added dependency from `cloud-server` to `cloud-engine-storage` we would introduce a dependency cycle. To avoid this cycle, we moved those classes to `cloud-engine-schema` module * pr/1615: CLOUDSTACK-9438: Fix for CLOUDSTACK-9252 - Make NFS version changeable in UI Signed-off-by: Rajani Karuturi <rajani.karuturi@accelerite.com> |
||
|---|---|---|
| .. | ||
| misc | ||
| __init__.py | ||
| test_affinity_groups.py | ||
| test_affinity_groups_projects.py | ||
| test_deploy_vgpu_enabled_vm.py | ||
| test_deploy_vm_iso.py | ||
| test_deploy_vm_root_resize.py | ||
| test_deploy_vm_with_userdata.py | ||
| test_deploy_vms_with_varied_deploymentplanners.py | ||
| test_disk_offerings.py | ||
| test_dynamicroles.py | ||
| test_global_settings.py | ||
| test_guest_vlan_range.py | ||
| test_hosts.py | ||
| test_internal_lb.py | ||
| test_iso.py | ||
| test_list_ids_parameter.py | ||
| test_loadbalance.py | ||
| test_login.py | ||
| test_multipleips_per_nic.py | ||
| test_network.py | ||
| test_network_acl.py | ||
| test_nic.py | ||
| test_nic_adapter_type.py | ||
| test_non_contigiousvlan.py | ||
| test_outofbandmanagement.py | ||
| test_over_provisioning.py | ||
| test_password_server.py | ||
| test_portable_publicip.py | ||
| test_primary_storage.py | ||
| test_privategw_acl.py | ||
| test_public_ip_range.py | ||
| test_pvlan.py | ||
| test_regions.py | ||
| test_reset_vm_on_reboot.py | ||
| test_resource_detail.py | ||
| test_router_dhcphosts.py | ||
| test_router_dns.py | ||
| test_routers.py | ||
| test_routers_iptables_default_policy.py | ||
| test_routers_network_ops.py | ||
| test_scale_vm.py | ||
| test_secondary_storage.py | ||
| test_service_offerings.py | ||
| test_snapshots.py | ||
| test_ssvm.py | ||
| test_staticroles.py | ||
| test_templates.py | ||
| test_usage_events.py | ||
| test_vm_life_cycle.py | ||
| test_vm_snapshots.py | ||
| test_volumes.py | ||
| test_vpc_redundant.py | ||
| test_vpc_router_nics.py | ||
| test_vpc_vpn.py | ||