Skip to content

Commit

Permalink
Change build system from ligradle to gradle
Browse files Browse the repository at this point in the history
Corrected azkaban dependency to use mavenCentral

Take out code-base/build.gradle which is no longer needed.

The change is based on RB:
https://rb.corp.linkedin.com/r/384130

The change is based on the snapshot of gobblin on:
https://gitli.corp.linkedin.com/ds-platform/gobblin/commits/ce583e43f3f2f1e77919b0b43a7dc854b9205b39
  • Loading branch information
hcai committed Nov 6, 2014
1 parent ee75d1e commit 24ed393
Show file tree
Hide file tree
Showing 26 changed files with 520 additions and 198 deletions.
2 changes: 1 addition & 1 deletion .reviewboardrc
Original file line number Diff line number Diff line change
@@ -1 +1 @@
REPOSITORY = "gobblin"
REPOSITORY = "gobblin-os"
9 changes: 9 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
Getting Started
---------------
1. Build

./gradlew build

2. Test

./gradlew test
9 changes: 4 additions & 5 deletions azkaban/build.gradle
Original file line number Diff line number Diff line change
@@ -1,12 +1,11 @@
apply plugin: 'li-java'
apply plugin: 'java'

dependencies {
compile project(":common-api")
compile project(":runtime")
compile spec.external.log4j
compile spec.external.guava
compile files('./src/main/resources/azkaban-jobtype-2.5.0.jar')
compile files('./src/main/resources/azkaban-2.5.0.jar')
compile externalDependency.azkaban
compile externalDependency.log4j
compile externalDependency.guava
}

configurations {
Expand Down
Binary file removed azkaban/src/main/resources/azkaban-2.5.0.jar
Binary file not shown.
Binary file not shown.
111 changes: 99 additions & 12 deletions build.gradle
Original file line number Diff line number Diff line change
@@ -1,15 +1,102 @@
apply plugin: 'li-product'
ext.build_script_dir = "${projectDir.path}/build_script"

ext.isDefaultEnvironment = !project.hasProperty('overrideBuildEnvironment')

File getEnvironmentScript()
{
final File env = file(isDefaultEnvironment ? 'defaultEnvironment.gradle' : project.overrideBuildEnvironment)
assert env.isFile() : "The environment script [$env] does not exists or is not a file."
return env
}

apply from: environmentScript

ext.externalDependency = [
"avro": "org.apache.avro:avro:1.7.1",
"avroMapred": "org.apache.avro:avro-mapred:1.7.6",
"commonsCli": "commons-cli:commons-cli:1.2",
"commonsDbcp": "commons-dbcp:commons-dbcp:1.4",
"commonsEmail": "org.apache.commons:commons-email:1.3.2",
"commonsLang": "commons-lang:commons-lang:2.4",
"commonsConfiguration": "commons-configuration:commons-configuration:1.10",
"commonsIo": "commons-io:commons-io:2.4",
"commonsHttpClient": "commons-httpclient:commons-httpclient:3.1",
"guava": "com.google.guava:guava:15.0",
"gson": "com.google.code.gson:gson:2.2.4",
"hadoop": "org.apache.hadoop:hadoop-core:1.2.1",
"hadoopCommon": "org.apache.hadoop:hadoop-common:2.3.0",
"hadoopClientCore": "org.apache.hadoop:hadoop-mapreduce-client-core:2.3.0",
"httpclient": "org.apache.httpcomponents:httpclient:4.2.3",
"httpcore": "org.apache.httpcomponents:httpcore:4.2.1",
"quartz": "org.quartz-scheduler:quartz:2.2.1",
"testng": "org.testng:testng:6.5.1",
"jacksonCore": "org.codehaus.jackson:jackson-core-asl:1.9.13",
"jacksonMapper": "org.codehaus.jackson:jackson-mapper-asl:1.9.13",
"slf4j": "org.slf4j:slf4j-api:1.7.6",
"log4j": "log4j:log4j:1.2.17",
"log4jextras": "log4j:apache-log4j-extras:1.2.17",
"slf4jLog4j": "org.slf4j:slf4j-log4j12:1.7.6",
"jclOverSlf4j": "org.slf4j:jcl-over-slf4j:1.7.6",
"jodaTime": "joda-time:joda-time:1.6",
"metricsCore": "com.codahale.metrics:metrics-core:3.0.2",
"commonsIO": "commons-io:commons-io:2.4",
"influxdb": "org.influxdb:influxdb-java:1.2",
"jsch": "com.jcraft:jsch:0.1.46",
"azkaban": "com.linkedin.azkaban:azkaban:2.5.0",
"commonsVfs": "org.apache.commons:commons-vfs2:2.0"
];

if (!isDefaultEnvironment)
{
ext.externalDependency.each { overrideDepKey, overrideDepValue ->
if (externalDependency[overrideDepKey] != null)
{
externalDependency[overrideDepKey] = overrideDepValue
}
}
}

task wrapper(type: Wrapper) {
gradleVersion = '1.12'
}

subprojects {
repositories {
mavenCentral()
}
configurations {
compile
}
dependencies {
compile spec.external.hadoop
// compile spec.external.hadoopCommon
// compile spec.external.hadoopClientCore
}
apply plugin: 'java'
apply plugin: 'idea'
apply plugin: 'eclipse'

sourceCompatibility = JavaVersion.VERSION_1_6

configurations {
compile
dependencies {
compile externalDependency.hadoop
// compile externalDependency.hadoopCommon
// compile externalDependency.hadoopClientCore
}
}

if (isDefaultEnvironment)
{
task sourcesJar(type: Jar, dependsOn: classes) {
from sourceSets.main.allSource
classifier = 'sources'
}
artifacts {
archives sourcesJar
}
}

// Configure the IDEA plugin to (1) add the codegen as source dirs and (2) work around
// an apparent bug in the plugin which doesn't set the outputDir/testOutputDir as documented
idea.module {
// Gradle docs claim the two settings below are the default, but
// the actual defaults appear to be "out/production/$MODULE_NAME"
// and "out/test/$MODULE_NAME". Changing it so IDEA and gradle share
// the class output directory.

outputDir = sourceSets.main.output.classesDir
testOutputDir = sourceSets.test.output.classesDir
}

}
40 changes: 0 additions & 40 deletions code_base/build.gradle

This file was deleted.

28 changes: 14 additions & 14 deletions common-api/build.gradle
Original file line number Diff line number Diff line change
@@ -1,20 +1,20 @@
apply plugin: 'li-java'
apply plugin: 'java'

dependencies {
compile spec.external.commonsDbcp
compile spec.external.avro
compile spec.external.guava
compile spec.external.gson
compile spec.external.slf4j
compile spec.external.log4j
compile spec.external.log4jextras
compile spec.external.slf4jLog4j
compile spec.external.jclOverSlf4j
compile spec.external.jodaTime
compile spec.external.jacksonCore
compile spec.external.jacksonMapper
compile externalDependency.commonsDbcp
compile externalDependency.avro
compile externalDependency.guava
compile externalDependency.gson
compile externalDependency.slf4j
compile externalDependency.log4j
compile externalDependency.log4jextras
compile externalDependency.slf4jLog4j
compile externalDependency.jclOverSlf4j
compile externalDependency.jodaTime
compile externalDependency.jacksonCore
compile externalDependency.jacksonMapper

testCompile spec.external.testng
testCompile externalDependency.testng
}

configurations {
Expand Down
20 changes: 10 additions & 10 deletions converter/build.gradle
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
apply plugin: 'li-java'
apply plugin: 'java'

dependencies {
compile project(":common-api")
compile files('./src/main/resources/lumos-common-2.0.0.jar')
compile spec.external.commonsDbcp
compile spec.external.avro
compile spec.external.guava
compile spec.external.gson
compile spec.external.jacksonCore
compile spec.external.jacksonMapper
compile spec.external.jodaTime
compile spec.external.slf4j
compile externalDependency.commonsDbcp
compile externalDependency.avro
compile externalDependency.guava
compile externalDependency.gson
compile externalDependency.jacksonCore
compile externalDependency.jacksonMapper
compile externalDependency.jodaTime
compile externalDependency.slf4j

testCompile spec.external.testng
testCompile externalDependency.testng
}

configurations {
Expand Down
7 changes: 7 additions & 0 deletions defaultEnvironment.gradle
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
subprojects {
repositories {
mavenCentral()
}

project.buildDir = new File(project.rootProject.buildDir, project.name)
}
18 changes: 9 additions & 9 deletions demo/build.gradle
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
apply plugin: 'li-java'
apply plugin: 'java'

dependencies {
compile project(":common-api")
compile spec.external.avro
compile spec.external.avroMapred
compile spec.external.guava
compile spec.external.jacksonCore
compile spec.external.slf4j
compile spec.external.gson
compile spec.external.commonsVfs
compile externalDependency.avro
compile externalDependency.avroMapred
compile externalDependency.guava
compile externalDependency.jacksonCore
compile externalDependency.slf4j
compile externalDependency.gson
compile externalDependency.commonsVfs

testCompile spec.external.testng
testCompile externalDependency.testng
}

configurations {
Expand Down
16 changes: 8 additions & 8 deletions example/build.gradle
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
apply plugin: 'li-java'
apply plugin: 'java'

dependencies {
compile project(":common-api")
compile spec.external.avro
compile spec.external.avroMapred
compile spec.external.guava
compile spec.external.jacksonCore
compile spec.external.slf4j
compile spec.external.gson
compile externalDependency.avro
compile externalDependency.avroMapred
compile externalDependency.guava
compile externalDependency.jacksonCore
compile externalDependency.slf4j
compile externalDependency.gson

testCompile spec.external.testng
testCompile externalDependency.testng
}

configurations {
Expand Down
Binary file added gradle/wrapper/gradle-wrapper.jar
Binary file not shown.
6 changes: 6 additions & 0 deletions gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
#Thu Nov 06 15:34:14 PST 2014
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-1.12-bin.zip
Loading

0 comments on commit 24ed393

Please sign in to comment.