Skip to content

Commit

Permalink
Allow snippet version overrides to be done by major Hadoop version.
Browse files Browse the repository at this point in the history
  • Loading branch information
tomwhite committed Jan 10, 2014
1 parent fb237f6 commit 51a3d33
Show file tree
Hide file tree
Showing 75 changed files with 26 additions and 52,548 deletions.
13 changes: 7 additions & 6 deletions README
Original file line number Diff line number Diff line change
Expand Up @@ -27,19 +27,20 @@ Then you can build the code with:

% mvn package -DskipTests

By default Hadoop 1.2.1 is used. This can be changed by specifying the hadoop.version
property, e.g.
By default Hadoop 1.2.1 is used. This can be changed by specifying the
hadoop.version property, e.g.

% mvn package -DskipTests -Dhadoop.version=1.2.0

There are also profiles for different Hadoop major versions,
specified in hadoop-meta/pom.xml. For example, to use Hadoop 2:
There are profiles for different Hadoop major versions and distributions,
specified in hadoop-meta/pom.xml, and they are specified using the hadoop.distro
property. For example, to use the default version of Hadoop 2:

% mvn package -DskipTests -P apache-2
% mvn package -DskipTests -Dhadoop.distro=apache-2

Again, you can specify hadoop.version to use a particular Hadoop 2 version:

% mvn package -DskipTests -P apache-2 -Dhadoop.version=2.1.1-beta
% mvn package -DskipTests -Dhadoop.distro=apache-2 -Dhadoop.version=2.1.1-beta

You should then be able to run the examples from the book.

Expand Down
5 changes: 0 additions & 5 deletions ch02/src/main/examples/max_temperature_py/2.2.0/input.txt

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

Empty file.
Empty file.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

Empty file.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

Empty file.
File renamed without changes.

This file was deleted.

This file was deleted.

This file was deleted.

21 changes: 19 additions & 2 deletions snippet/src/test/java/ExamplesIT.java
Original file line number Diff line number Diff line change
Expand Up @@ -92,6 +92,7 @@ public static Collection<Object[]> data() {
private File actualOutputDir = new File(PROJECT_BASE_DIR, "output");
private static Map<String, String> env;
private static String version;
private static String majorVersion;
private static String mode;

public ExamplesIT(File example) {
Expand Down Expand Up @@ -125,7 +126,20 @@ public static void setUpClass() throws IOException {
}
assertNotNull("Version not found", version);
System.out.printf("version=%s\n", version);


majorVersion = version.substring(0, version.indexOf('.'));
// Treat 0.2x as Hadoop 1 or 2 for the purposes of these tests
if ("0".equals(majorVersion)) {
if (version.startsWith("0.20")) {
majorVersion = "1";
} else if (version.startsWith("0.21") || version.startsWith("0.22") ||
version.startsWith("0.23")) {
majorVersion = "2";
}
}
assertNotNull("Major version not found", majorVersion);
System.out.printf("majorVersion=%s\n", majorVersion);

}

@Before
Expand Down Expand Up @@ -184,10 +198,13 @@ public void test() throws Exception {
}

private File findBaseExampleDirectory(File example) {
// Look in base/<version>/<mode> then base/<version> then base/<mode>
// Look in base/<version>/<mode> then base/<version> then base/<major-version>/<mode>
// then base/<major-version> then base/<mode>
File[] candidates = {
new File(new File(example, version), mode),
new File(example, version),
new File(new File(example, majorVersion), mode),
new File(example, majorVersion),
new File(example, mode),
};
for (File candidate : candidates) {
Expand Down

0 comments on commit 51a3d33

Please sign in to comment.