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/04/16 07:55:46 UTC
[1/2] git commit: updated refs/heads/master to b814783
Repository: cloudstack
Updated Branches:
refs/heads/master b1dfeb9cf -> b814783a6
CLOUDSTACK-6410 : Maven Integration for windows Wix tool to create msi installer thropugh maven build process
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/54d3a3dc
Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/54d3a3dc
Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/54d3a3dc
Branch: refs/heads/master
Commit: 54d3a3dc90bace7f85172ad8ada693566144d1d7
Parents: b1dfeb9
Author: Damodar Reddy <da...@citrix.com>
Authored: Tue Apr 15 14:44:03 2014 +0530
Committer: Abhinandan Prateek <ap...@apache.org>
Committed: Wed Apr 16 11:07:10 2014 +0530
----------------------------------------------------------------------
Wix-cloudstack-maven-plugin/pom.xml | 68 +++++++++++
.../src/org/apache/cloudstack/wix/HeatMojo.java | 121 +++++++++++++++++++
client/pom.xml | 94 ++++++++++++++
3 files changed, 283 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/54d3a3dc/Wix-cloudstack-maven-plugin/pom.xml
----------------------------------------------------------------------
diff --git a/Wix-cloudstack-maven-plugin/pom.xml b/Wix-cloudstack-maven-plugin/pom.xml
new file mode 100644
index 0000000..e5b9bd1
--- /dev/null
+++ b/Wix-cloudstack-maven-plugin/pom.xml
@@ -0,0 +1,68 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>Wix-cloudstack-maven-plugin</artifactId>
+ <name>Wix-cloudstack-maven-plugin</name>
+ <packaging>maven-plugin</packaging>
+ <parent>
+ <groupId>org.apache.cloudstack</groupId>
+ <artifactId>cloudstack</artifactId>
+ <version>4.5.0-SNAPSHOT</version>
+ </parent>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.maven</groupId>
+ <artifactId>maven-plugin-api</artifactId>
+ <version>${maven-plugin-api.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.commons</groupId>
+ <artifactId>commons-exec</artifactId>
+ <version>${commons-exec.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.bitbucket.joxley</groupId>
+ <artifactId>wix-maven-plugin</artifactId>
+ <version>${wix-maven-plugin.version}</version>
+ </dependency>
+ </dependencies>
+
+ <properties>
+ <maven-plugin-api.version>2.0</maven-plugin-api.version>
+ <commons-exec.version>1.1</commons-exec.version>
+ <wix-maven-plugin.version>1.1.1</wix-maven-plugin.version>
+ </properties>
+
+ <build>
+ <pluginManagement>
+ <plugins>
+ <!-- Ignore/Execute plugin execution -->
+ <plugin>
+ <groupId>org.eclipse.m2e</groupId>
+ <artifactId>lifecycle-mapping</artifactId>
+ <version>1.0.0</version>
+ <configuration>
+ <lifecycleMappingMetadata>
+ <pluginExecutions>
+ <pluginExecution>
+ <pluginExecutionFilter>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-enforcer-plugin</artifactId>
+ <versionRange>[1.0.0,)</versionRange>
+ <goals>
+ <goal>enforce</goal>
+ </goals>
+ </pluginExecutionFilter>
+ <action>
+ <ignore />
+ </action>
+ </pluginExecution>
+ </pluginExecutions>
+ </lifecycleMappingMetadata>
+ </configuration>
+ </plugin>
+ </plugins>
+ </pluginManagement>
+ </build>
+</project>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/54d3a3dc/Wix-cloudstack-maven-plugin/src/org/apache/cloudstack/wix/HeatMojo.java
----------------------------------------------------------------------
diff --git a/Wix-cloudstack-maven-plugin/src/org/apache/cloudstack/wix/HeatMojo.java b/Wix-cloudstack-maven-plugin/src/org/apache/cloudstack/wix/HeatMojo.java
new file mode 100644
index 0000000..4724d76
--- /dev/null
+++ b/Wix-cloudstack-maven-plugin/src/org/apache/cloudstack/wix/HeatMojo.java
@@ -0,0 +1,121 @@
+package org.apache.cloudstack.wix;
+
+import java.io.File;
+import java.io.IOException;
+
+import org.apache.commons.exec.CommandLine;
+import org.apache.commons.exec.DefaultExecutor;
+import org.apache.commons.exec.ExecuteException;
+import org.apache.maven.plugin.MojoExecutionException;
+import org.apache.maven.plugin.MojoFailureException;
+import org.bitbucket.joxley.wix.AbstractWixMojo;
+
+/**
+ *
+ * @goal heat
+ *
+ * @phase package
+ *
+ */
+public class HeatMojo extends AbstractWixMojo {
+
+ /**
+ * Directory name to be harvested
+ *
+ * @parameter expression="${dir}"
+ * @required
+ *
+ */
+ private String dir;
+
+ /**
+ * use template, one of: fragment,module,product
+ * @parameter expression="${template}" defaults to fragment
+ *
+ */
+ private String template;
+
+ /**
+ * Output file
+ *
+ * @parameter expression="${outputFile}"
+ */
+ private File outputFile;
+
+ /**
+ *
+ * variable names to be passed to heat command
+ * @parameter expression="${vars}"
+ */
+ private String vars;
+
+ /**
+ *
+ * variable names to be passed to heat command
+ * @parameter expression="${workingDirectory}"
+ */
+ private File workingDirectory;
+
+ /**
+ *
+ * <DirectoryName> directory reference to root directories
+ * @parameter expression="${directoryName}"
+ */
+ private String directoryName;
+
+ @Override
+ public void execute() throws MojoExecutionException, MojoFailureException {
+ try {
+ CommandLine commandLine = new CommandLine("heat");
+
+ if(dir != null && !dir.trim().isEmpty()) {
+ commandLine.addArgument("dir");
+ commandLine.addArgument(dir);
+ }
+
+ commandLine.addArgument("-gg");
+ commandLine.addArgument("-cg");
+ commandLine.addArgument("ClientPath");
+ commandLine.addArgument("-ke");
+ commandLine.addArgument("-sfrag");
+
+ if(template == null || template.trim().isEmpty()) {
+ commandLine.addArgument("-template");
+ commandLine.addArgument("fragment");
+ } else {
+ commandLine.addArgument("-template");
+ commandLine.addArgument(template);
+ }
+
+ if (outputFile != null) {
+ commandLine.addArgument("-out");
+ commandLine.addArgument(outputFile.getAbsolutePath());
+ }
+
+ if (directoryName != null) {
+ commandLine.addArgument("-dr");
+ commandLine.addArgument(directoryName);
+ }
+
+ if (vars != null) {
+ commandLine.addArguments(vars, false);
+ }
+
+ DefaultExecutor executor = new DefaultExecutor();
+ getLog().debug("working directory " + commandLine.toString());
+ executor.setWorkingDirectory(getWorkingDirectory(workingDirectory));
+ int exitValue = executor.execute(commandLine);
+
+ if (exitValue != 0) {
+ throw new MojoExecutionException(
+ "Problem executing heat, return code " + exitValue);
+ }
+
+ } catch (ExecuteException e) {
+ throw new MojoExecutionException("Problem executing heat", e);
+ } catch (IOException e) {
+ throw new MojoExecutionException("Problem executing heat", e);
+ }
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/54d3a3dc/client/pom.xml
----------------------------------------------------------------------
diff --git a/client/pom.xml b/client/pom.xml
index d8dbde7..aee2672 100644
--- a/client/pom.xml
+++ b/client/pom.xml
@@ -515,6 +515,16 @@
<exclude name="*.in"/>
</fileset>
</copy>
+ <copy todir="./target">
+ <fileset dir="../scripts/installer/windows/">
+ <include name="start.bat"/>
+ </fileset>
+ </copy>
+ <copy todir="./target/client">
+ <fileset dir="./target/generated-webapp">
+ <include name="**/*"/>
+ </fileset>
+ </copy>
</target>
</configuration>
</execution>
@@ -649,6 +659,90 @@
</build>
</profile>
<profile>
+ <id>buildw</id>
+ <activation>
+ <property>
+ <name>buildw</name>
+ </property>
+ </activation>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-war-plugin</artifactId>
+ <version>2.3</version>
+ <configuration>
+ <webappDirectory>target/client</webappDirectory>
+ <webXml>./target/generated-webapp/WEB-INF/web.xml</webXml>
+ <warSourceDirectory>./target/generated-webapp</warSourceDirectory>
+ <archive>
+ <manifest>
+ <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
+ </manifest>
+ <manifestEntries>
+ <Implementation-Revision>${git.revision}</Implementation-Revision>
+ <Implementation-Branch>${git.branch}</Implementation-Branch>
+ </manifestEntries>
+ </archive>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.cloudstack</groupId>
+ <artifactId>Wix-cloudstack-maven-plugin</artifactId>
+ <version>4.5.0-SNAPSHOT</version>
+ <configuration>
+ <vars>-var wix.SourceClient</vars>
+ <workingDirectory>${basedir}/target</workingDirectory>
+ <dir>client</dir>
+ <template>fragment</template>
+ <directoryName>WEBAPPS</directoryName>
+ <outputFile>target/client.wxs</outputFile>
+ </configuration>
+ <executions>
+ <execution>
+ <id>wix-cs</id>
+ <goals>
+ <goal>heat</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.bitbucket.joxley</groupId>
+ <artifactId>wix-maven-plugin</artifactId>
+ <version>1.1.1</version>
+ <configuration>
+ <workingDirectory>${basedir}/target</workingDirectory>
+ <extensions>
+ <extension>WixFirewallExtension</extension>
+ <extension>WixUIExtension</extension>
+ </extensions>
+ <arguments>-dSourceClient=SourceDir\client</arguments>
+ <sourceFiles>
+ <sourceFile>../scripts/installer/windows/acs.wxs</sourceFile>
+ <sourceFile>target/client.wxs</sourceFile>
+ </sourceFiles>
+ <outputDirectory>target</outputDirectory>
+ <objectFiles>
+ <objectFile>target/acs.wixobj</objectFile>
+ <objectFile>target/client.wixobj</objectFile>
+ </objectFiles>
+ <outputFile>target/acs.msi</outputFile>
+ </configuration>
+ <executions>
+ <execution>
+ <id>wix</id>
+ <goals>
+ <goal>candle</goal>
+ <goal>light</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ <profile>
<id>simulator</id>
<activation>
<property>
[2/2] git commit: updated refs/heads/master to b814783
Posted by ap...@apache.org.
CLOUDSTACK-6298:[Windows] if already tmp directory exists inject keys is dailing on widows while starting the management server
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/b814783a
Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/b814783a
Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/b814783a
Branch: refs/heads/master
Commit: b814783a636307bf73d359248ce33d541f534fda
Parents: 54d3a3d
Author: Damodar Reddy <da...@citrix.com>
Authored: Tue Apr 15 15:19:15 2014 +0530
Committer: Abhinandan Prateek <ap...@apache.org>
Committed: Wed Apr 16 11:07:55 2014 +0530
----------------------------------------------------------------------
scripts/vm/systemvm/injectkeys.py | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/b814783a/scripts/vm/systemvm/injectkeys.py
----------------------------------------------------------------------
diff --git a/scripts/vm/systemvm/injectkeys.py b/scripts/vm/systemvm/injectkeys.py
index bd840f9..0892255 100644
--- a/scripts/vm/systemvm/injectkeys.py
+++ b/scripts/vm/systemvm/injectkeys.py
@@ -31,9 +31,11 @@ import subprocess
import commands
import traceback
import filecmp
+import tempfile
pathSep=os.sep
-TMP=os.path.expanduser("~") + os.sep + "tmp" #Get Home Directory
+TMP=tempfile.gettempdir() + os.sep + "tmp" #Get Home Directory
+print("Temp Directory is : %s" % TMP)
MOUNTPATH=TMP + pathSep + "systemvm_mnt"
TMPDIR=TMP + pathSep + "cloud" + pathSep + "systemvm"
osType=os.name
@@ -81,7 +83,7 @@ def inject_into_iso(pubKey,systemiso):
try :
shutil.copytree(MOUNTPATH, TMPDIR)
except :
- print ("Failed to copy from original iso %s" % isofile)
+ print ("Failed to copy from original iso %s to %s" % (MOUNTPATH, TMPDIR))
clean_up()
sys.exit(IOError)
try :