Skip to content
Permalink
Browse files
TENTACLES-4 Build infra
* Updating dependencies.
* Adding rat to every run and rat report to site reports.
* Started basic site and augmented pom.xml
* Enabled new maven skin for tentacles site.
* LHF: Removed some PMD warnings.



git-svn-id: https://svn.apache.org/repos/asf/creadur/tentacles/trunk@1623233 13f79535-47bb-0310-9956-ffa450edef68
  • Loading branch information
ottlinger committed Sep 7, 2014
1 parent 42a38df commit e25f6878a75750193d727b7504a4868e83d0f490
Showing 6 changed files with 206 additions and 54 deletions.
181 pom.xml
@@ -29,20 +29,30 @@
<name>Apache Tentacles</name>
<description>Utility to download binaries from a remote repository and scan them for LICENSE and NOTICE files</description>
<dependencies>
<dependency>
<groupId>org.apache.maven.skins</groupId>
<artifactId>maven-fluido-skin</artifactId>
<version>1.3.1</version>
</dependency>
<dependency>
<groupId>org.apache.rat</groupId>
<artifactId>apache-rat-plugin</artifactId>
<version>${apacheRatVersion}</version>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
<version>4.3.2</version>
<version>${httpClientVersion}</version>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpcore</artifactId>
<version>4.3.2</version>
<version>${httpClientVersion}</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.module</groupId>
<artifactId>jackson-module-jaxb-annotations</artifactId>
<version>2.4.0</version>
<version>2.4.2</version>
</dependency>
<dependency>
<groupId>log4j</groupId>
@@ -57,44 +67,115 @@
<dependency>
<groupId>org.codehaus.swizzle</groupId>
<artifactId>swizzle-stream</artifactId>
<!-- Upgrade when 1.6.2 is released -->
<!--version>1.6.2-SNAPSHOT</version-->
<version>1.6.1</version>
<version>1.6.2</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.8.1</version>
<version>4.11</version>
<scope>test</scope>
</dependency>
</dependencies>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<javaVersion>1.6</javaVersion>
<httpClientVersion>4.3.2</httpClientVersion>
<apacheRatVersion>0.11</apacheRatVersion>
</properties>
<issueManagement>
<system>JIRA</system>
<url>https://issues.apache.org/jira/browse/TENTACLES</url>
</issueManagement>
<!-- TODO
<ciManagement>
<system>Jenkins</system>
<url>http://ci.apache.org/builders/tentacles_trunk</url>
<ciManagement>
<system>Buildbot</system>
<url>http://ci.apache.org/builders/tentacles_trunk</url>
<!--
Jenkins builds are at:
https://builds.apache.org/job/Creadur-Tentacles/ - check Java6 compliance and run all tests
https://builds.apache.org/job/Creadur-Tentacles-Site/ - generate mvn site
</ciManagement>
-->
</ciManagement>
<mailingLists>
<mailingList>
<name>Whisker Development (Apache Creadur project)</name>
<subscribe>dev-subscribe@creadur.apache.org</subscribe>
<unsubscribe>dev-unsubscribe@creadur.apache.org</unsubscribe>
<post>dev@creadur.apache.org</post>
<archive>http://mail-archives.apache.org/mod_mbox/creadur-dev/</archive>
</mailingList>
<mailingList>
<name>WHisker Commits (Apache Creadur project)</name>
<subscribe>commits-subscribe@creadur.apache.org</subscribe>
<unsubscribe>commits-unsubscribe@creadur.apache.org</unsubscribe>
<archive>http://mail-archives.apache.org/mod_mbox/creadur-commits/</archive>
</mailingList>
</mailingLists>
<build>
<defaultGoal>install</defaultGoal>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.6</source>
<target>1.6</target>
<source>${javaVersion}</source>
<target>${javaVersion}</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-enforcer-plugin</artifactId>
<executions>
<execution>
<!-- This checks the bytecode version of the dependencies transitively -->
<id>enforce-bytecode-version</id>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<enforceBytecodeVersion>
<maxJdkVersion>${javaVersion}</maxJdkVersion>
</enforceBytecodeVersion>
</rules>
<fail>true</fail>
</configuration>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>org.codehaus.mojo</groupId>
<artifactId>extra-enforcer-rules</artifactId>
<version>1.0-beta-2</version>
</dependency>
</dependencies>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>animal-sniffer-maven-plugin</artifactId>
<version>1.11</version>
<executions>
<execution>
<!-- This checks the source code of our project -->
<!--
Note that this cannot use our ${javaVersion} property, so it must
be changed manually when we decide to move to a higher version of
Java
-->
<id>check-java-1.6-compat</id>
<phase>process-classes</phase>
<goals>
<goal>check</goal>
</goals>
<configuration>
<signature>
<groupId>org.codehaus.mojo.signature</groupId>
<artifactId>java16</artifactId>
<version>1.0</version>
</signature>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
@@ -129,10 +210,6 @@
<!-- reporting plugins are configured according to new mvn3 standard -->
<!-- Until Maven finds a way to allow inheritance, duplicated in plugin4maven -->
<reportPlugins>
<plugin>
<groupId>org.apache.rat</groupId>
<artifactId>apache-rat-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
@@ -231,38 +308,50 @@
<plugin>
<groupId>org.apache.rat</groupId>
<artifactId>apache-rat-plugin</artifactId>
<version>0.10</version>
<version>${apacheRatVersion}</version>
</plugin>
</reportPlugins>
</configuration>
</plugin>
</plugins>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.rat</groupId>
<artifactId>apache-rat-plugin</artifactId>
<version>${apacheRatVersion}</version>
<configuration>
<excludes>
<exclude>README*</exclude>
<exclude>src/main/resources/licenses/*</exclude>
</excludes>
</configuration>
<executions>
<execution>
<goals>
<goal>check</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</pluginManagement>
</build>
<profiles>
<profile>
<id>rat</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.rat</groupId>
<artifactId>apache-rat-plugin</artifactId>
<version>0.10</version>
<configuration>
<excludes>
<exclude>README*</exclude>
<exclude>src/main/resources/licenses/*</exclude>
</excludes>
</configuration>
<executions>
<execution>
<goals>
<goal>check</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
<scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/creadur/tentacles/trunk</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/creadur/tentacles/trunk</developerConnection>
<url>http://svn.apache.org/repos/asf/creadur/tentacles/trunk</url>
</scm>
<licenses>
<license>
<name>Apache License, Version 2</name>
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
<distribution>repo</distribution>
<comments>An OSI approved open source license.</comments>
</license>
</licenses>
<organization>
<name>Apache Software Foundation</name>
<url>http://www.apache.org</url>
</organization>
</project>
@@ -112,7 +112,7 @@ private static void deauthorize(final File dir, final IOSystem io)
final String text = io.slurp(file);

// You really can't trust text to be in the native line ending
final String eol = (text.contains("\r\n")) ? "\r\n" : "\n";
final String eol = text.contains("\r\n") ? "\r\n" : "\n";
final String startComment = eol + "/*";
final String endComment = "*/" + eol;

@@ -34,10 +34,13 @@
import java.net.URL;
import java.util.zip.ZipInputStream;

import org.apache.log4j.Logger;

/**
* @version $Rev$ $Date$
*/
public class IOSystem {
private static final Logger LOG = Logger.getLogger(IOSystem.class);

public String slurp(final File file) throws IOException {
final ByteArrayOutputStream out = new ByteArrayOutputStream();
@@ -114,10 +117,12 @@ public void close(final Closeable closeable) throws IOException {
((Flushable) closeable).flush();
}
} catch (final IOException e) {
LOG.error("Error when trying to flush before closing " + closeable, e);
}
try {
closeable.close();
} catch (final IOException e) {
LOG.error("Error when trying to close " + closeable, e);
}
}

@@ -52,8 +52,7 @@ public class Main {
root.setLevel(Level.INFO);
}

private static final org.apache.log4j.Logger log = org.apache.log4j.Logger
.getLogger(Main.class);
private static final Logger log = Logger.getLogger(Main.class);
private static final String CRAWL_PATTERN = ".*\\.(jar|zip|war|ear|rar|tar.gz)";

private final Reports reports;
@@ -49,7 +49,7 @@ public NexusClient(final Platform platform) {
public File download(final URI uri, final File file) throws IOException {
if (file.exists()) {

final long length = getConentLength(uri);
final long length = getContentLength(uri);

if (file.length() == length) {
log.info("Exists " + uri);
@@ -72,14 +72,13 @@ public File download(final URI uri, final File file) throws IOException {
return file;
}

private long getConentLength(final URI uri) throws IOException {
private long getContentLength(final URI uri) throws IOException {
final HttpResponse head = head(uri);
final Header[] headers = head.getHeaders("Content-Length");

for (final Header header : headers) {
return new Long(header.getValue());
if(headers != null && headers.length >= 1) {
return Long.valueOf(headers[0].getValue());
}

return -1;
}

@@ -0,0 +1,60 @@
<project name="apache-tentacles">
<skin>
<groupId>org.apache.maven.skins</groupId>
<artifactId>maven-fluido-skin</artifactId>
<version>1.3.1</version>
</skin>

<custom>
<fluidoSkin>
<googleSearch>
<sitesearch/>
</googleSearch>
<topBarEnabled>true</topBarEnabled>
<sideBarEnabled>true</sideBarEnabled>
</fluidoSkin>
</custom>

<body>
<menu name="The Apache Software Foundation" inherit="bottom">
<item name='About the Foundation'
href="http://www.apache.org/foundation"/>
<item name='The projects'
href="http://projects.apache.org"/>
<item name='The people'
href="http://people.apache.org"/>
<item name='How we work'
href='http://www.apache.org/foundation/how-it-works.html'/>
<item name='Our history'
href='http://www.apache.org/foundation/how-it-works.html#history'/>
<item name='News'
href='http://blogs.apache.org/foundation/'/>
</menu>

<menu name="Contribute" inherit="bottom">
<item name="Get Involved" href='http://www.apache.org/foundation/getinvolved.html'/>
</menu>

<menu name="Committer Info" inherit="bottom">
<item name="Publish this site" href="site-publish.html"/>
<item name="Committers' FAQ" href='http://www.apache.org/dev/committers.html'/>
<item name='New Committers Guide' href='http://www.apache.org/dev/new-committers-guide.html'/>
<item name='Plant Apache' href='http://planet.apache.org/committers/'/>
<item name='Community' href='http://community.apache.org/'/>
<item name='Legal' href='http://www.apache.org/legal/'/>
<item name='Branding' href='http://www.apache.org/foundation/marks/'/>
<item name='Media Relations' href='http://www.apache.org/press/'/>
</menu>

<menu ref="modules"/>
<menu ref="reports"/>

<footer>Copyright &#169; 2014 The Apache Software Foundation, Licensed under the Apache License, Version 2.0.
Apache Creadur, Creadur, Apache Rat, Apache Tentacles, Apache Whisker, Apache and the Apache feather logo are trademarks
of The Apache Software Foundation.
Oracle and Java are registered trademarks of Oracle and/or its affiliates.
All other marks mentioned may be trademarks or registered trademarks of their respective owners.</footer>

</body>

</project>

0 comments on commit e25f687

Please sign in to comment.