Shahar Havivi has uploaded a new change for review.

Change subject: vminit add custom script
......................................................................

vminit add custom script

Change-Id: Ic947b18b63684e7d84f56ae651aeef3a51f2971a
Signed-off-by: Shahar Havivi <[email protected]>
---
M 
backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/CloudInitHandler.java
M 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/CommonApplicationConstants.java
M 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/vm/CloudInitWidget.java
M 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/vm/CloudInitWidget.ui.xml
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/CloudInitModel.java
5 files changed, 29 insertions(+), 0 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/26/22626/1

diff --git 
a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/CloudInitHandler.java
 
b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/CloudInitHandler.java
index b9b2457..28bb687 100644
--- 
a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/CloudInitHandler.java
+++ 
b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/CloudInitHandler.java
@@ -34,6 +34,7 @@
     private String interfaces;
 
     private final String passwordKey = "password";
+    private final String customScript = "customScript";
 
     private enum CloudInitFileMode {
         FILE,
@@ -59,6 +60,7 @@
                 storeNetwork();
                 storeTimeZone();
                 storeRootPassword();
+                storeCustomScript();
             } catch (IllegalArgumentException ex) {
                 throw new IllegalArgumentException("Malformed input", ex);
             }
@@ -182,6 +184,12 @@
         }
     }
 
+    private void storeCustomScript() {
+        if (!StringUtils.isEmpty(vmInit.getCustromScript())) {
+            userData.put(customScript, vmInit.getCustromScript());
+        }
+    }
+
     private void storeExecutionParameters() {
         // Store defaults in meta-data and user-data that apply regardless
         // of parameters passed in from the user.
diff --git 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/CommonApplicationConstants.java
 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/CommonApplicationConstants.java
index 9c686df..1690338 100644
--- 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/CommonApplicationConstants.java
+++ 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/CommonApplicationConstants.java
@@ -211,6 +211,9 @@
     @DefaultStringValue("Add SSH keys (separated by newlines) to be added to 
the root user's authorized_keys file")
     String cloudInitAuthorizedKeysToolTip();
 
+    @DefaultStringValue("Add Script that will run at startup")
+    String customScriptToolTip();
+
     @DefaultStringValue("Regenerate system SSH keys (typically in /etc/ssh)")
     String cloudInitRegenerateKeysToolTip();
 
diff --git 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/vm/CloudInitWidget.java
 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/vm/CloudInitWidget.java
index b1c5801..742ece8 100644
--- 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/vm/CloudInitWidget.java
+++ 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/vm/CloudInitWidget.java
@@ -76,6 +76,10 @@
     @WithElementId
     EntityModelTextAreaEditor authorizedKeysEditor;
 
+    @UiField
+    @Path(value = "customScript.entity")
+    @WithElementId
+    EntityModelTextAreaEditor customScriptEditor;
 
     @UiField(provided = true)
     @Path(value = "regenerateKeysEnabled.entity")
@@ -264,6 +268,7 @@
 
         hostnameEditor.setTitle(constants.cloudInitHostnameToolTip());
         
authorizedKeysEditor.setTitle(constants.cloudInitAuthorizedKeysToolTip());
+        customScriptEditor.setTitle(constants.customScriptToolTip());
         
regenerateKeysEnabledEditor.setTitle(constants.cloudInitRegenerateKeysToolTip());
         timeZoneEditor.setTitle(constants.cloudInitTimeZoneToolTip());
         rootPasswordEditor.setTitle(constants.cloudInitRootPasswordToolTip());
diff --git 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/vm/CloudInitWidget.ui.xml
 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/vm/CloudInitWidget.ui.xml
index bdaaa54..e1a396a 100644
--- 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/vm/CloudInitWidget.ui.xml
+++ 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/popup/vm/CloudInitWidget.ui.xml
@@ -117,5 +117,9 @@
                        <e:EntityModelTextBoxEditor ui:field="dnsSearchDomains" 
/>
                </g:FlowPanel>
 
+               <g:FlowPanel addStyleNames="{style.horizontalPanel}">
+                       <e:EntityModelTextAreaEditor 
ui:field="customScriptEditor" addStyleNames="{style.primaryOption}" />
+               </g:FlowPanel>
+
        </g:FlowPanel>
 </ui:UiBinder>
diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/CloudInitModel.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/CloudInitModel.java
index d21d53e..e049279 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/CloudInitModel.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/CloudInitModel.java
@@ -48,6 +48,14 @@
         privateHostname = value;
     }
 
+    private EntityModel privateCustomScript;
+    public EntityModel getCustomScript() {
+        return privateCustomScript;
+    }
+    private void setCustomScript(EntityModel value) {
+        privateCustomScript = value;
+    }
+
 
     private EntityModel privateAuthorizedKeysEnabled;
     public EntityModel getAuthorizedKeysEnabled() {
@@ -297,6 +305,7 @@
         setHostname(new EntityModel());
         setAuthorizedKeysEnabled(new EntityModel());
         setAuthorizedKeys(new EntityModel());
+        setCustomScript(new EntityModel());
         setRegenerateKeysEnabled(new EntityModel());
         setTimeZoneEnabled(new EntityModel());
         setTimeZoneList(new ListModel());


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

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

Reply via email to