Frank Kobzik has uploaded a new change for review.

Change subject: engine: GMT timezone for linux vms
......................................................................

engine: GMT timezone for linux vms

frontend:
 - timezone list box is not changable for linux vms, default timezone is
   used
backend:
 - forbid utcDiff update on VM for linux VMS
 - when creating vm, zero offset is default for linux vms (instead of
   general offset specified in config)
 - db upgrade - set utc_diff to 0 and time_zone = '' for linux vms in db

Change-Id: If681a23a450a22685c7110a337b08f3c67609c34
Signed-off-by: Frantisek Kobzik <[email protected]>
Bug-Url: https://bugzilla.redhat.com/show_bug.cgi?id=967861
---
A backend/manager/dbscripts/upgrade/03_03_0210_upgrade_utcdiff_for_linux.sql
M 
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/VM.java
M 
backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VmInfoBuilderBase.java
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/VmModelBehaviorBase.java
4 files changed, 21 insertions(+), 2 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/02/15802/1

diff --git 
a/backend/manager/dbscripts/upgrade/03_03_0210_upgrade_utcdiff_for_linux.sql 
b/backend/manager/dbscripts/upgrade/03_03_0210_upgrade_utcdiff_for_linux.sql
new file mode 100644
index 0000000..c2dd7b7
--- /dev/null
+++ b/backend/manager/dbscripts/upgrade/03_03_0210_upgrade_utcdiff_for_linux.sql
@@ -0,0 +1,10 @@
+-- Set utc_diff to 0 for Linux machines
+
+UPDATE vm_dynamic AS vd 
+SET utc_diff = 0
+FROM vm_static AS vs
+WHERE vd.vm_guid = vs.vm_guid AND vs.os IN(5, 7, 8, 9, 13, 14, 15, 18, 19);
+
+UPDATE vm_static
+SET time_zone = ''
+WHERE os IN(5, 7, 8, 9, 13, 14, 15, 18, 19);
diff --git 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/VM.java
 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/VM.java
index a236412..5710277 100644
--- 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/VM.java
+++ 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/VM.java
@@ -1156,7 +1156,9 @@
         setAcpiEnable(vm.getAcpiEnable());
         setGuestCurrentUserName(vm.getGuestCurrentUserName());
         setWin2kHackEnable(vm.getWin2kHackEnable());
-        setUtcDiff(vm.getUtcDiff());
+        if (getOs() != null && !getOs().isLinux()) {
+            setUtcDiff(vm.getUtcDiff());
+        }
         setExitStatus(vm.getExitStatus());
         setExitMessage(vm.getExitMessage());
         setClientIp(vm.getClientIp());
diff --git 
a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VmInfoBuilderBase.java
 
b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VmInfoBuilderBase.java
index cc5a848..a791e53 100644
--- 
a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VmInfoBuilderBase.java
+++ 
b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VmInfoBuilderBase.java
@@ -203,6 +203,8 @@
         // else fallback to engine config default for given OS type
         if (vm.getOs().isWindows()) {
             return Config.<String> 
GetValue(ConfigValues.DefaultWindowsTimeZone);
+        } else if (vm.getOs().isLinux()) {
+            return "Etc/GMT";
         } else {
             return Config.<String> 
GetValue(ConfigValues.DefaultGeneralTimeZone);
         }
diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/VmModelBehaviorBase.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/VmModelBehaviorBase.java
index fdc8bab..8d97954 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/VmModelBehaviorBase.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/VmModelBehaviorBase.java
@@ -173,8 +173,13 @@
                 final Iterable<TimeZoneModel> timeZones = 
TimeZoneModel.getTimeZones(getTimeZoneType());
                 getModel().getTimeZone().setItems(timeZones);
                 
getModel().getTimeZone().setSelectedItem(Linq.firstOrDefault(timeZones, new 
Linq.TimeZonePredicate(selectedTimeZone)));
-            }
 
+                if (getModel().getIsLinuxOS()) { // For linux disable editing
+                    getModel().getTimeZone().setIsChangable(false);
+                } else {
+                    getModel().getTimeZone().setIsChangable(true);
+                }
+            }
         });
     }
 


-- 
To view, visit http://gerrit.ovirt.org/15802
To unsubscribe, visit http://gerrit.ovirt.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: If681a23a450a22685c7110a337b08f3c67609c34
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Frank Kobzik <[email protected]>
_______________________________________________
Engine-patches mailing list
[email protected]
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to