Skip to content

Commit

Permalink
add Maven build script
Browse files Browse the repository at this point in the history
  • Loading branch information
reger committed Jan 20, 2013
1 parent eb68a30 commit f8f7f33
Show file tree
Hide file tree
Showing 4 changed files with 886 additions and 9 deletions.
82 changes: 82 additions & 0 deletions assembly.xml
@@ -0,0 +1,82 @@
<?xml version="1.0" encoding="UTF-8"?>
<assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2 http://maven.apache.org/xsd/assembly-1.1.2.xsd">

<id>bindistribution</id>

<formats>
<format>tar.gz</format>

</formats>


<baseDirectory>YaCy</baseDirectory>

<fileSets>
<fileSet>
<directory>addon</directory>
<outputDirectory>addon</outputDirectory>
</fileSet>
<fileSet>
<directory>bin</directory>
<outputDirectory>bin</outputDirectory>
</fileSet>
<fileSet>
<directory>defaults</directory>
<outputDirectory>defaults</outputDirectory>
</fileSet>
<fileSet>
<directory>dictionaries</directory>
<outputDirectory>dictionaries</outputDirectory>
</fileSet>
<fileSet>
<directory>htroot</directory>
<outputDirectory>htroot</outputDirectory>
</fileSet>
<fileSet>
<directory>langstats</directory>
<outputDirectory>langstats</outputDirectory>
</fileSet>
<fileSet>
<directory>locales</directory>
<outputDirectory>locales</outputDirectory>
</fileSet>
<fileSet>
<directory>ranking</directory>
<outputDirectory>ranking</outputDirectory>
</fileSet>
<fileSet>
<directory>skins</directory>
<outputDirectory>skins</outputDirectory>
</fileSet>
<fileSet>
<directory>vocabularies</directory>
<outputDirectory>vocabularies</outputDirectory>
</fileSet>
<fileSet>
<directory>${basedir}</directory>
<includes>
<include>*.bat</include>
<include>*.sh</include>
<include>yacy.*</include>
<include>readme.txt</include>
<include>gpl.txt</include>
<include>lgpl21.txt</include>
<include>AUTHORS</include>
<include>COPYRIGHT</include>
<include>NOTICE</include>
</includes>
<outputDirectory>.</outputDirectory>
</fileSet>
</fileSets>

<dependencySets>
<dependencySet>
<unpack>false</unpack>
<scope>runtime</scope>
<outputDirectory>lib</outputDirectory>
</dependencySet>
</dependencySets>

</assembly>
50 changes: 41 additions & 9 deletions libbuild/GitRevTask/GitRevTask.java
@@ -1,7 +1,10 @@
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;

import org.apache.tools.ant.BuildException;
import org.apache.tools.ant.Project;
Expand Down Expand Up @@ -89,13 +92,42 @@ public void execute() {
log("Property '" + this.dateprop + "' set to '" + commitDate + "'", Project.MSG_VERBOSE);
}
}

public static void main(String[] args) {
GitRevTask gitRevTask = new GitRevTask();
gitRevTask.setRepoPath("/home/sgaebel/git/yacy.rc1");
gitRevTask.setRevprop("baseRevisionNr");
gitRevTask.setDateprop("DSTAMP");

gitRevTask.execute();
}

/** use: GitRevTask.jar pathtoGitRepro outputfile
* optional parameter
* 1st parameter = path to Git repository (default ..)
* 2nd parameter = ouputfile (default gitbuild.properties)
* */
public static void main(String[] args) {
GitRevTask gitRevTask = new GitRevTask();
if (args.length == 0) {
gitRevTask.setRepoPath(".."); // path to root of git repository
} else {
gitRevTask.setRepoPath(args[0]);
}
gitRevTask.setRevprop("baseRevisionNr");
gitRevTask.setDateprop("DSTAMP");

Project p = new Project();
gitRevTask.setProject(p);
gitRevTask.execute();
String version = gitRevTask.getProject().getProperty("baseRevisionNr");
String commitDate = gitRevTask.getProject().getProperty("DSTAMP");

File f;
if (args.length > 1) {
f = new File (args[1]);
} else {
f = new File("gitbuildnumber.properties");
}
try {
f.createNewFile();
FileWriter w = new FileWriter(f);

w.append("releaseNr=" + version + "\n");
w.append("DSTAMP=" + commitDate + "\n");
w.close();

} catch (IOException ex) {}
}
}
110 changes: 110 additions & 0 deletions libbuild/pom.xml
@@ -0,0 +1,110 @@
<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>

<groupId>net.yacy</groupId>
<artifactId>GitRevTask</artifactId>
<version>1.3</version>
<packaging>jar</packaging>
<description>YaCy - version tool</description>
<name>YaCy</name>
<url>http://www.yacy.net</url>

<scm>
<connection>scm:git:https://git.gitorious.org/yacy/rc1.git</connection>
<url>https://gitorious.org/yacy</url>
</scm>

<developers>
<developer>
<name>Michael Peter Christen</name>
</developer>
</developers>

<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>

<build>
<sourceDirectory>GitRevTask</sourceDirectory>


<plugins>

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.5.1</version>
<configuration>
<source>1.6</source>
<target>1.6</target>
</configuration>
</plugin>

<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>buildnumber-maven-plugin</artifactId>
<version>1.2</version>
<executions>
<execution>
<id>1</id>
<phase>validate</phase>
<goals>
<goal>create</goal>
</goals>
</execution>
</executions>
<configuration>
<doCheck>false</doCheck>
<doUpdate>false</doUpdate>
<shortRevisionLength>5</shortRevisionLength>
<revisionOnScmFailure>9000</revisionOnScmFailure>
<!-- creates a string e.g. 20130131-1fd45 -->
<format>{0,date,yyyyMMdd}-{1}</format>
<items>
<item>timestamp</item>
<item>scmVersion</item>
</items>
</configuration>
</plugin>



<!-- exec:exec goal to provide start YaCy by Maven (just to have it for cases were the ide not provides a run command) -->
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.2.1</version>

<configuration>
<classpathScope>runtime</classpathScope>
<executable>java</executable>
<arguments>
<argument>-classpath</argument>
<classpath/>
</arguments>
</configuration>
</plugin>
</plugins>

</build>

<dependencies>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.16</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>org.eclipse.jgit</groupId>
<artifactId>org.eclipse.jgit</artifactId>
<version>1.2.0.201112221803-r</version>
</dependency>
<dependency>
<groupId>org.apache.ant</groupId>
<artifactId>ant</artifactId>
<version>1.8.3</version>
</dependency>
</dependencies>
</project>

0 comments on commit f8f7f33

Please sign in to comment.