CLOUDSTACK-6105: Initial version Windowsfication of the management server

Signed-off-by: Abhinandan Prateek <aprat...@apache.org>


Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/93c46c9b
Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/93c46c9b
Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/93c46c9b

Branch: refs/heads/master
Commit: 93c46c9be8df1b60b587810dbfc28c4726dcbc80
Parents: fe5ab4a
Author: Damodar Reddy <damoder.re...@citrix.com>
Authored: Thu Mar 20 22:36:46 2014 +0530
Committer: Abhinandan Prateek <aprat...@apache.org>
Committed: Mon Mar 24 10:54:46 2014 +0530

----------------------------------------------------------------------
 scripts/installer/windows/acs.wxs               |  229 ++
 scripts/installer/windows/client.wxs            | 2414 ++++++++++++++++++
 scripts/installer/windows/start.bat             |   12 +
 scripts/vm/systemvm/injectkeys.py               |  142 ++
 .../cloud/server/ConfigurationServerImpl.java   |   33 +-
 .../server/ConfigurationServerImplTest.java     |   26 +
 6 files changed, 2853 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cloudstack/blob/93c46c9b/scripts/installer/windows/acs.wxs
----------------------------------------------------------------------
diff --git a/scripts/installer/windows/acs.wxs 
b/scripts/installer/windows/acs.wxs
new file mode 100644
index 0000000..7967478
--- /dev/null
+++ b/scripts/installer/windows/acs.wxs
@@ -0,0 +1,229 @@
+<!-- Licensed to the Apache Software Foundation (ASF) under one or more 
contributor
+  license agreements. See the NOTICE file distributed with this work for 
additional
+  information regarding copyright ownership. The ASF licenses this file to
+  you under the Apache License, Version 2.0 (the "License"); you may not use
+  this file except in compliance with the License. You may obtain a copy of
+  the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required
+  by applicable law or agreed to in writing, software distributed under the
+  License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS
+  OF ANY KIND, either express or implied. See the License for the specific
+  language governing permissions and limitations under the License. -->
+<Wix xmlns='http://schemas.microsoft.com/wix/2006/wi' 
xmlns:fire='http://schemas.microsoft.com/wix/FirewallExtension'>
+  <Product Name='ACS' Id='eea70ed5-5950-4f01-b4aa-4a07636359bb'
+    UpgradeCode='d6208c34-7b50-4512-b19e-b904dcc1373e' Language='1033'
+    Codepage='1252' Version='4.4.0' Manufacturer='Apache Cloud Stack'>
+
+    <Package Id='*' Keywords='Installer' Description="Apache Cloud Stack 
Installer"
+      Comments='Foobar is a registered trademark of Acme Ltd.'
+      Manufacturer='Apache' InstallerVersion='100' Languages='1033'
+      Compressed='yes' SummaryCodepage='1252' />
+
+    <Media Id='1' Cabinet='Sample.cab' EmbedCab='yes' DiskPrompt="CD-ROM #1" />
+    <Property Id='DiskPrompt' Value="Apache Cloud Stack Installation program" 
/>
+    <Condition Message="Java Is not Installed. Please set the 
JAVA_HOME"><![CDATA[%JAVA_HOME]]></Condition>
+
+    <Directory Id='TARGETDIR' Name='SourceDir'>
+      <Directory Id='ProgramFilesFolder' Name='PFiles'>
+        <Directory Id='Acme' Name='Apache'>
+          <Directory Id='INSTALLDIR' Name='CS'>
+            <Component Id='MainExecutable'
+              Guid='5980d204-a63a-45db-a7e8-cbd50b2d314b'>
+              <CreateFolder />
+              <Environment Id="CLOUDSTACK_HOME" Action="set"
+                Name="CLOUDSTACK_HOME" Permanent="no" System="yes"
+                Value="[INSTALLDIR]." />
+              <Environment Id="CATALINA_BASE" Action="set"
+                Name="CATALINA_BASE" Permanent="no" System="yes"
+                Value="[INSTALLDIR]." />
+              <Environment Id="CATALINA_OPTS" Action="set"
+                Name="CATALINA_OPTS" Permanent="no" System="yes"
+                Value="-XX:MaxPermSize=512m -Xmx1024m -Xms256m" />
+
+            </Component>
+          </Directory>
+        </Directory>
+      </Directory>
+
+      <Directory Id="ProgramMenuFolder" Name="Programs">
+        <Directory Id="ProgramMenuDir" Name="ACS">
+          <Component Id="ProgramMenuDir" 
Guid="69932d81-ea9c-4a74-9013-7da61f291090">
+            <RemoveFolder Id='ProgramMenuDir' On='uninstall' />
+            <RegistryValue Root='HKCU'
+              Key='Software\[Manufacturer]\[ProductName]' Type='string'
+              Value='' KeyPath='yes' />
+          </Component>
+        </Directory>
+      </Directory>
+    </Directory>
+    <Property Id='TOMCATIMAGEPATH'>
+      <RegistrySearch Id="TomcatImagePath" Name="ImagePath"
+        Root="HKLM" Key="SYSTEM\CurrentControlSet\Services\Tomcat6"
+        Type="raw" Win64="yes" />
+    </Property>
+    <Component Id="ServiceInstaller" Directory="INSTALLDIR"
+      Guid="dfebb4bb-cac0-4cef-aa91-342bafa18349">
+      <File Id='ACSServiceEXEFile' Name='start.exe' Source='start.bat'
+        KeyPath='yes' />
+      <ServiceInstall Id='InstallACSService' Name='ACSService'
+        Description='ACS Service' ErrorControl='normal' Start='auto'
+        Type='ownProcess' Vital='yes' />
+      <ServiceControl Id='UninstallACSService' Name='ACSService'
+        Remove='uninstall' Wait='yes' />
+      <RegistryValue Root='HKLM'
+        Key='SYSTEM\CurrentControlSet\Services\ACSService' Name="ImagePath"
+        Type='expandable' Value='[TOMCATIMAGEPATH]' />
+    </Component>
+    <DirectoryRef Id="INSTALLDIR">
+      <Directory Id="WEBAPPS" Name="webapps">
+        <Component Id="webappsFolder" 
Guid="53c03092-438f-4da1-b14d-ceee90c79de0">
+          <CreateFolder />
+        </Component>
+      </Directory>
+    </DirectoryRef>
+    <!-- DirectoryRef Id="WEBAPPS"> <Directory Id="clientId" 
FileSource="client\WEB-INF\classes">
+      <Component Id="copyAllToConf" Guid="0e081e69-5c30-426e-b711-b7750115f62b"
+      KeyPath="yes"> <CopyFile Id="AllFiles" DestinationDirectory="CONF" 
SourceName="*"
+      /> </Component> </Directory> </DirectoryRef -->
+    <DirectoryRef Id="WEBAPPS">
+      <Component Id="copyToConf" Guid="99da8926-1eec-4a7f-ac7f-1326d8e73ea0"
+        KeyPath="yes">
+        <File Id="server.xml" Source="client\WEB-INF\classes\server-nonssl.xml"
+          Checksum="no">
+          <CopyFile Id="copyServerXML" DestinationName="server.xml"
+            DestinationDirectory="CONF" />
+        </File>
+        <File Id="tomcat6.conf" 
Source="client\WEB-INF\classes\tomcat6-nonssl.conf"
+          Checksum="no">
+          <CopyFile Id="copyTomcat6ConfXML" DestinationName="tomcat6.conf"
+            DestinationDirectory="CONF" />
+        </File>
+        <File Id="web.xml" Source="client\WEB-INF\classes\web.xml"
+          Checksum="no">
+          <CopyFile Id="copyWebXML" DestinationName="web.xml"
+            DestinationDirectory="CONF" />
+        </File>
+        <File Id="log4j_cloud.xml" 
Source="client\WEB-INF\classes\log4j-cloud.xml"
+          Checksum="no">
+          <CopyFile Id="log4j_cloudxml" DestinationName="log4j-cloud.xml"
+            DestinationDirectory="CONF" />
+        </File>
+        <File Id="environment.properties" 
Source="client\WEB-INF\classes\environment.properties"
+          Checksum="no">
+          <CopyFile Id="environmentproperties" 
DestinationName="environment.properties"
+            DestinationDirectory="CONF" />
+        </File>
+        <File Id="classpath.conf" 
Source="client\WEB-INF\classes\classpath.conf"
+          Checksum="no">
+          <CopyFile Id="classpathconf" DestinationName="classpath.conf"
+            DestinationDirectory="CONF" />
+        </File>
+        <File Id="catalina.properties" 
Source="client\WEB-INF\classes\catalina.properties"
+          Checksum="no">
+          <CopyFile Id="catalinaproperties" 
DestinationName="catalina.properties"
+            DestinationDirectory="CONF" />
+        </File>
+        <File Id="tomcat_users.xml" 
Source="client\WEB-INF\classes\tomcat-users.xml"
+          Checksum="no">
+          <CopyFile Id="tomcat_usersxml" DestinationName="tomcat-users.xml"
+            DestinationDirectory="CONF" />
+        </File>
+        <File Id="catalina.policy" 
Source="client\WEB-INF\classes\catalina.policy"
+          Checksum="no">
+          <CopyFile Id="catalinapolicy" DestinationName="catalina.policy"
+            DestinationDirectory="CONF" />
+        </File>
+        <File Id="db.properties" Source="client\WEB-INF\classes\db.properties"
+          Checksum="no">
+          <CopyFile Id="dbproperties" DestinationName="db.properties"
+            DestinationDirectory="LIB"/>
+        </File>
+        <File Id="cloudmanagementserver.keystore"
+          Source="client\WEB-INF\classes\cloudmanagementserver.keystore"
+          Checksum="no">
+          <CopyFile Id="cloudmanagementserverkeystore"
+            DestinationName="cloud.keystore"
+            DestinationDirectory="LIB" />
+        </File>
+      </Component>
+    </DirectoryRef>
+    <DirectoryRef Id="INSTALLDIR">
+      <Directory Id="CONF" Name="conf">
+        <Component Id="confFolder" Guid="ad227f7d-6808-4bdf-8ac6-3b2954d51b96">
+          <CreateFolder />
+        </Component>
+      </Directory>
+    </DirectoryRef>
+       <DirectoryRef Id="INSTALLDIR">
+      <Directory Id="LIB" Name="lib">
+        <Component Id="libFolder" Guid="d338841e-2ea4-48b3-ab48-9c42e2961600">
+          <CreateFolder />
+        </Component>
+      </Directory>
+    </DirectoryRef>
+    <Component Id="firewallRules" Guid="2d056999-8191-41a0-94e0-e6dfcc188417"
+      Directory="INSTALLDIR">
+      <CreateFolder />
+      <fire:FirewallException Id="p_8080" Name="port_8080"
+        Description="for cloudstack management server" Port="8080"
+        Profile="all" Protocol="tcp" Scope="any" />
+      <fire:FirewallException Id="p_8096" Name="port_8096"
+        Description="for cloudstack management server admin" Port="8096"
+        Profile="all" Protocol="tcp" Scope="any" />
+      <fire:FirewallException Id="p_8787" Name="port_8787"
+        Description="for cloudstack management server" Port="8787"
+        Profile="all" Protocol="tcp" Scope="any" />
+      <fire:FirewallException Id="p_9090" Name="port_9090"
+        Description="for cloudstack management server" Port="9090"
+        Profile="all" Protocol="tcp" Scope="any" />
+
+      <fire:FirewallException Id="p_3922" Name="port_3922"
+        Description="for cloudstack management server" Port="3922"
+        Profile="all" Protocol="tcp" Scope="any" />
+      <fire:FirewallException Id="p_8250" Name="port_8250"
+        Description="for cloudstack management server" Port="8250"
+        Profile="all" Protocol="tcp" Scope="any" />
+    </Component>
+
+    <!-- Updating Tomcat's catalina base -->
+    <!-- Property Id='TomcatDirectory' 
Value="$(env.CATALINA_HOME)\bin\Tomcat6.exe"
+      / -->
+    <Property Id='TOMCATDIRECTORY'>
+      <RegistrySearch Id="TomcatSearch" Name="InstallPath"
+        Root="HKLM" Key="SOFTWARE\Apache Software 
Foundation\Tomcat\6.0\Tomcat6"
+        Type="raw" Win64="yes" />
+    </Property>
+    <CustomAction Id="TomcatPath" Property="TOMCATDIRECTORY1"
+      Value="[TOMCATDIRECTORY]\bin\Tomcat6.exe">
+    </CustomAction>
+
+    <Condition
+      Message="Apache tomcat6 is not installed please do install tomcat6 
first"><![CDATA[(Installed OR TOMCATDIRECTORY)]]></Condition>
+    <CustomAction Id="UpdateTomcatCatalinaBase"
+      ExeCommand="//US//Tomcat6 
--JvmOptions=-Dcatalina.base=[INSTALLDIR];-Xms512m;-Xmx1024m;-XX:MaxPermSize=512m"
+      Property="TOMCATDIRECTORY1" Execute="commit" Return="check" />
+    <InstallExecuteSequence>
+      <InstallServices Sequence="4999"></InstallServices>
+      <Custom Action="TomcatPath" Before="UpdateTomcatCatalinaBase">NOT 
Installed</Custom>
+      <Custom Action="UpdateTomcatCatalinaBase" Before="InstallFinalize">NOT 
Installed</Custom>
+    </InstallExecuteSequence>
+    <UIRef Id="WixUI_Mondo" />
+    <Feature Id='Complete' Title='ACS' Description='The complete package.'
+      Display='expand' Level='1' ConfigurableDirectory='INSTALLDIR'>
+      <Feature Id='MainProgram' Title='Program' Description='The main 
executable.'
+        Level='1'>
+        <ComponentRef Id='webappsFolder' />
+        <ComponentGroupRef Id='ClientPath' />
+        <ComponentRef Id='ProgramMenuDir' />
+        <ComponentRef Id='confFolder' />
+        <ComponentRef Id='libFolder' />
+        <!-- ComponentRef Id='copyAllToConf' / -->
+        <ComponentRef Id='copyToConf' />
+        <ComponentRef Id='firewallRules' />
+        <ComponentRef Id='MainExecutable' />
+        <ComponentRef Id='ServiceInstaller' />
+        <!-- ComponentRef Id='TomcatInstalled' / -->
+      </Feature>
+    </Feature>
+    <UIRef Id="WixUI_ErrorProgressText" />
+  </Product>
+</Wix>

Reply via email to