You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by ap...@apache.org on 2014/03/27 11:33:20 UTC
git commit: updated refs/heads/master to c46088c
Repository: cloudstack
Updated Branches:
refs/heads/master 3060f884a -> c46088c96
CLOUDSTACK-6290: [Windows] Generating SSL keys at the time of installation itself
Signed-off-by: Abhinandan Prateek <ap...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/c46088c9
Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/c46088c9
Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/c46088c9
Branch: refs/heads/master
Commit: c46088c962ea0bcc5273a84a60941384ee01478c
Parents: 3060f88
Author: Damodar Reddy <da...@citrix.com>
Authored: Thu Mar 27 11:31:07 2014 +0530
Committer: Abhinandan Prateek <ap...@apache.org>
Committed: Thu Mar 27 16:03:04 2014 +0530
----------------------------------------------------------------------
scripts/common/keys/ssl-keys.py | 47 ++++++++++++++++++++++++++++++++++
scripts/installer/windows/acs.wxs | 26 +++++++++----------
2 files changed, 59 insertions(+), 14 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/c46088c9/scripts/common/keys/ssl-keys.py
----------------------------------------------------------------------
diff --git a/scripts/common/keys/ssl-keys.py b/scripts/common/keys/ssl-keys.py
new file mode 100644
index 0000000..4ef50b0
--- /dev/null
+++ b/scripts/common/keys/ssl-keys.py
@@ -0,0 +1,47 @@
+#!/bin/bash
+# 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.
+
+
+# Copies keys that enable SSH communication with system vms
+# $1 = new public key
+# $2 = new private key
+'''
+All imports go here...
+'''
+from subprocess import call
+import socket
+import sys
+import os
+
+def generateSSLKey(outputPath):
+ hostName = socket.gethostbyname(socket.gethostname())
+ keyFile = outputPath + os.sep + "cloud.keystore"
+ print("HostName = %s" % hostName)
+ print("OutputPath = %s" % keyFile)
+ dname='cn="Cloudstack User",ou="' + hostName + '",o="' + hostName + '",c="Unknown"';
+ print("dname = %s" % dname)
+ return_code = call(["keytool", "-genkey", "-keystore", keyFile, "-storepass", "vmops.com", "-keypass", "vmops.com", "-keyalg", "RSA", "-validity", "3650", "-dname", dname])
+ print("SSL key generated is : %s" % return_code)
+
+argsSize=len(sys.argv)
+if argsSize != 2:
+ print("Usage: ssl-keys.py <SSL File Key Path>")
+ sys.exit(None)
+sslKeyPath=sys.argv[1]
+
+generateSSLKey(sslKeyPath)
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/c46088c9/scripts/installer/windows/acs.wxs
----------------------------------------------------------------------
diff --git a/scripts/installer/windows/acs.wxs b/scripts/installer/windows/acs.wxs
index adb2b6c..9456a5a 100644
--- a/scripts/installer/windows/acs.wxs
+++ b/scripts/installer/windows/acs.wxs
@@ -131,13 +131,6 @@
<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>
@@ -149,7 +142,7 @@
</Component>
</Directory>
</DirectoryRef>
- <DirectoryRef Id="INSTALLDIR">
+ <DirectoryRef Id="INSTALLDIR">
<Directory Id="LIB" Name="lib">
<Component Id="libFolder" Guid="d338841e-2ea4-48b3-ab48-9c42e2961600">
<CreateFolder />
@@ -189,24 +182,29 @@
<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];-Djava.io.tmpdir=[INSTALLDIR]\temp;-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager;-Dcatalina.home="[TOMCATDIRECTORY]";-Xms512m;-Xmx1024m;-XX:MaxPermSize=512m'
Property="TOMCATDIRECTORY1" Execute="commit" Return="check" />
- <CustomAction Id="UpdateTomcatClassPath"
+ <CustomAction Id="UpdateTomcatClassPath"
ExeCommand='//US//Tomcat6 --Classpath="[TOMCATDIRECTORY]\bin\bootstrap.jar";"[TOMCATDIRECTORY]\bin\tomcat-juli.jar";[INSTALLDIR]\conf'
- Property="TOMCATDIRECTORY1" Execute="commit" Return="check" />
+ Property="TOMCATDIRECTORY1" Execute="commit" Return="check" />
<CustomAction Id="DeleteFiles" Directory='INSTALLDIR'
ExeCommand="[SystemFolder]cmd.exe /c del [INSTALLDIR]\webapps\client\WEB-INF\classes\db.properties [INSTALLDIR]\webapps\client\WEB-INF\classes\log4j*.xml"
Execute="commit" Return="check" />
+ <CustomAction Id="GeneralSSLKey" Directory='INSTALLDIR'
+ ExeCommand="python [INSTALLDIR]\webapps\client\WEB-INF\classes\scripts\common\keys\ssl-keys.py [INSTALLDIR]\lib"
+ Execute="commit" Return="check" />
+
<InstallExecuteSequence>
<InstallServices Sequence="4999"></InstallServices>
<Custom Action="TomcatPath" Before="UpdateTomcatClassPath">NOT Installed</Custom>
- <Custom Action="UpdateTomcatClassPath" Before="UpdateTomcatCatalinaBase">NOT Installed</Custom>
+ <Custom Action="UpdateTomcatClassPath" Before="UpdateTomcatCatalinaBase">NOT Installed</Custom>
<Custom Action="UpdateTomcatCatalinaBase" Before="InstallFinalize">NOT Installed</Custom>
- <Custom Action="DeleteFiles" Before="InstallFinalize">NOT Installed</Custom>
+ <Custom Action="DeleteFiles" Before="GeneralSSLKey">NOT Installed</Custom>
+ <Custom Action="GeneralSSLKey" Before="InstallFinalize">NOT Installed</Custom>
</InstallExecuteSequence>
<UIRef Id="WixUI_Mondo" />
<Feature Id='Complete' Title='ACS' Description='The complete package.'
@@ -228,4 +226,4 @@
</Feature>
<UIRef Id="WixUI_ErrorProgressText" />
</Product>
-</Wix>
+</Wix>
\ No newline at end of file