aboutsummaryrefslogtreecommitdiffhomepage
path: root/tensorflow/java
diff options
context:
space:
mode:
authorGravatar Soila Kavulya <soila.p.kavulya@intel.com>2018-05-08 18:40:20 -0700
committerGravatar Soila Kavulya <soila.p.kavulya@intel.com>2018-05-08 18:40:20 -0700
commitf957cfbc4d27a57bf08d128b41042a16f1155ab0 (patch)
treeee4e4a3833cd0443064f2fbe74a6538ff32ebbd4 /tensorflow/java
parent5e6b20e53720e8d00619d851ce983f8da77c5cf4 (diff)
Add TensorFlow ecosystem Spark and Hadoop jars to Maven deployment
Diffstat (limited to 'tensorflow/java')
-rw-r--r--tensorflow/java/maven/README.md6
-rw-r--r--tensorflow/java/maven/pom.xml8
-rwxr-xr-xtensorflow/java/maven/release.sh1
-rw-r--r--tensorflow/java/maven/run_inside_container.sh26
-rw-r--r--tensorflow/java/maven/spark-tensorflow-connector/pom.xml24
-rw-r--r--tensorflow/java/maven/tensorflow-hadoop/pom.xml24
6 files changed, 71 insertions, 18 deletions
diff --git a/tensorflow/java/maven/README.md b/tensorflow/java/maven/README.md
index c7e8f03806..fa756815a9 100644
--- a/tensorflow/java/maven/README.md
+++ b/tensorflow/java/maven/README.md
@@ -53,6 +53,12 @@ There are seven artifacts and thus `pom.xml`s involved in this release:
7. [`parentpom`](https://maven.apache.org/pom/index.html): Common settings
shared by all of the above.
+8. `tensorflow-hadoop`: The TensorFlow TFRecord InputFormat/OutputFormat for Apache Hadoop.
+ The source code for this package is available in the [TensorFlow Ecosystem](https://github.com/tensorflow/ecosystem/tree/master/hadoop)
+
+9. `spark-tensorflow-connector`: A Scala library for loading and storing TensorFlow TFRecord
+ using Apache Spark DataFrames. The source code for this package is available
+ in the [TensorFlow Ecosystem](https://github.com/tensorflow/ecosystem/tree/master/spark/spark-tensorflow-connector)
## Updating the release
diff --git a/tensorflow/java/maven/pom.xml b/tensorflow/java/maven/pom.xml
index 21fed5a419..7a95fb2556 100644
--- a/tensorflow/java/maven/pom.xml
+++ b/tensorflow/java/maven/pom.xml
@@ -6,7 +6,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>org.tensorflow</groupId>
<artifactId>parentpom</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.8.0</version>
<packaging>pom</packaging>
<url>https://www.tensorflow.org</url>
@@ -46,8 +46,7 @@
<!-- Sonatype requirements from http://central.sonatype.org/pages/apache-maven.html -->
<snapshotRepository>
<id>ossrh</id>
- <url>https://tap.jfrog.io/tap/public-snapshots</url>
- <!--<url>https://oss.sonatype.org/content/repositories/snapshots</url>-->
+ <url>https://oss.sonatype.org/content/repositories/snapshots</url>
</snapshotRepository>
<repository>
<id>ossrh</id>
@@ -77,7 +76,6 @@
<build>
<plugins>
<!-- GPG signed components: http://central.sonatype.org/pages/apache-maven.html#gpg-signed-components -->
- <!--
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
@@ -91,7 +89,7 @@
</goals>
</execution>
</executions>
- </plugin> -->
+ </plugin>
</plugins>
</build>
diff --git a/tensorflow/java/maven/release.sh b/tensorflow/java/maven/release.sh
index 6c51029198..9012ea14ea 100755
--- a/tensorflow/java/maven/release.sh
+++ b/tensorflow/java/maven/release.sh
@@ -48,7 +48,6 @@ fi
set -ex
docker run \
- $DOCKER_PROXY_RUN_ARGS \
-e TF_VERSION="${TF_VERSION}" \
-e DEPLOY_OSSRH="${DEPLOY_OSSRH:-true}" \
-e DEPLOY_BINTRAY="${DEPLOY_BINTRAY:-true}" \
diff --git a/tensorflow/java/maven/run_inside_container.sh b/tensorflow/java/maven/run_inside_container.sh
index 73f7ee94a0..3808104bc1 100644
--- a/tensorflow/java/maven/run_inside_container.sh
+++ b/tensorflow/java/maven/run_inside_container.sh
@@ -39,8 +39,6 @@ if [[ "${DEPLOY_BINTRAY}" != "true" && "${DEPLOY_OSSRH}" != "true" ]]; then
exit 2
fi
-IS_SNAPSHOT="true"
-
set -ex
clean() {
@@ -48,7 +46,9 @@ clean() {
# (though if run inside a clean docker container, there won't be any dirty
# artifacts lying around)
mvn -q clean
- rm -rf libtensorflow_jni/src libtensorflow_jni/target libtensorflow_jni_gpu/src libtensorflow_jni_gpu/target libtensorflow/src libtensorflow/target tensorflow-android/target
+ rm -rf libtensorflow_jni/src libtensorflow_jni/target libtensorflow_jni_gpu/src libtensorflow_jni_gpu/target \
+ libtensorflow/src libtensorflow/target tensorflow-android/target \
+ tensorflow-hadoop/src spark-tensorflow-connector/src
}
update_version_in_pom() {
@@ -188,6 +188,9 @@ generate_java_protos() {
}
+# Download the TensorFlow ecosystem source from git.
+# The pom files from this repo do not inherit from the parent pom so the maven version
+# is updated for each module.
download_tf_ecosystem() {
ECOSYSTEM_DIR="/tmp/tensorflow-ecosystem"
HADOOP_DIR="${DIR}/tensorflow-hadoop"
@@ -203,18 +206,15 @@ download_tf_ecosystem() {
# Copy the TensorFlow Hadoop source
cp -r "${ECOSYSTEM_DIR}/ecosystem/hadoop/src" "${HADOOP_DIR}"
- python ${HADOOP_DIR}/update.py --template ${HADOOP_DIR}/pom-hadoop.xml.template \
- --input_pom ${ECOSYSTEM_DIR}/ecosystem/hadoop/pom.xml \
- --output_pom ${HADOOP_DIR}/pom.xml \
- --version ${TF_VERSION}
+ cp "${ECOSYSTEM_DIR}/ecosystem/hadoop/pom.xml" "${HADOOP_DIR}"
+ cd "${HADOOP_DIR}"
+ update_version_in_pom
# Copy the TensorFlow Spark connector source
cp -r "${ECOSYSTEM_DIR}/ecosystem/spark/spark-tensorflow-connector/src" "${SPARK_DIR}"
- python ${SPARK_DIR}/update.py --template ${SPARK_DIR}/pom-spark.xml.template \
- --input_pom ${ECOSYSTEM_DIR}/ecosystem/spark/spark-tensorflow-connector/pom.xml \
- --output_pom ${SPARK_DIR}/pom.xml \
- --version ${TF_VERSION} \
- --scala_version 2.11
+ cp "${ECOSYSTEM_DIR}/ecosystem/spark/spark-tensorflow-connector/pom.xml" "${SPARK_DIR}"
+ cd "${SPARK_DIR}"
+ update_version_in_pom
# Cleanup
rm -rf "${ECOSYSTEM_DIR}"
@@ -280,6 +280,7 @@ cd "${DIR}"
# process.
# gnupg2 is required for signing
apt-get -qq update && apt-get -qqq install -y gnupg2 && apt-get -qqq install -y git
+
clean
update_version_in_pom
download_libtensorflow
@@ -288,6 +289,7 @@ download_libtensorflow_jni_gpu
update_tensorflow_android
generate_java_protos
download_tf_ecosystem
+
# Build the release artifacts
mvn verify
# Push artifacts to repository
diff --git a/tensorflow/java/maven/spark-tensorflow-connector/pom.xml b/tensorflow/java/maven/spark-tensorflow-connector/pom.xml
new file mode 100644
index 0000000000..8c962d111f
--- /dev/null
+++ b/tensorflow/java/maven/spark-tensorflow-connector/pom.xml
@@ -0,0 +1,24 @@
+<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">
+ <!-- Placeholder pom which is replaced by TensorFlow ecosystem Spark pom during build -->
+ <modelVersion>4.0.0</modelVersion>
+ <description>TensorFlow TFRecord connector for Apache Spark DataFrames</description>
+ <artifactId>spark-tensorflow-connector</artifactId>
+ <packaging>jar</packaging>
+
+ <scm>
+ <url>https://github.com/tensorflow/ecosystem.git</url>
+ <connection>git@github.com:tensorflow/ecosystem.git</connection>
+ <developerConnection>scm:git:https://github.com/tensorflow/ecosystem.git</developerConnection>
+ </scm>
+
+ <url>https://github.com/tensorflow/ecosystem/</url>
+ <parent>
+ <groupId>org.tensorflow</groupId>
+ <artifactId>parentpom</artifactId>
+ <version>1.8.0</version>
+ <relativePath>../</relativePath>
+ </parent>
+</project>
diff --git a/tensorflow/java/maven/tensorflow-hadoop/pom.xml b/tensorflow/java/maven/tensorflow-hadoop/pom.xml
new file mode 100644
index 0000000000..ee90d8c92b
--- /dev/null
+++ b/tensorflow/java/maven/tensorflow-hadoop/pom.xml
@@ -0,0 +1,24 @@
+<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">
+ <!-- Placeholder pom which is replaced by TensorFlow ecosystem Hadoop pom during build -->
+ <modelVersion>4.0.0</modelVersion>
+ <description>TensorFlow TFRecord InputFormat/OutputFormat for Apache Hadoop</description>
+ <artifactId>tensorflow-hadoop</artifactId>
+ <packaging>jar</packaging>
+
+ <scm>
+ <url>https://github.com/tensorflow/ecosystem.git</url>
+ <connection>git@github.com:tensorflow/ecosystem.git</connection>
+ <developerConnection>scm:git:https://github.com/tensorflow/ecosystem.git</developerConnection>
+ </scm>
+
+ <url>https://github.com/tensorflow/ecosystem/</url>
+ <parent>
+ <groupId>org.tensorflow</groupId>
+ <artifactId>parentpom</artifactId>
+ <version>1.8.0</version>
+ <relativePath>../</relativePath>
+ </parent>
+</project>