diff --git a/core/chaincode/shim/java/javabuild.sh b/core/chaincode/shim/java/javabuild.sh index 00d61fc321a..27ab680772d 100755 --- a/core/chaincode/shim/java/javabuild.sh +++ b/core/chaincode/shim/java/javabuild.sh @@ -18,7 +18,17 @@ # set -e PARENTDIR=$(pwd) +ARCH=`uname -m` -gradle -q -b ${PARENTDIR}/core/chaincode/shim/java/build.gradle clean -gradle -q -b ${PARENTDIR}/core/chaincode/shim/java/build.gradle build -cp -r ${PARENTDIR}/core/chaincode/shim/java/build/libs /root/ +if [ x$ARCH != xx86_64 ] +then + apt-get update && apt-get install openjdk-8-jdk -y + echo "FIXME: Java Shim code needs work on ppc64le. Commenting it for now." +else + add-apt-repository ppa:openjdk-r/ppa -y + apt-get update && apt-get install openjdk-8-jdk -y + update-java-alternatives -s java-1.8.0-openjdk-amd64 + gradle -q -b ${PARENTDIR}/core/chaincode/shim/java/build.gradle clean + gradle -q -b ${PARENTDIR}/core/chaincode/shim/java/build.gradle build + cp -r ${PARENTDIR}/core/chaincode/shim/java/build/libs /root/ +fi diff --git a/images/javaenv/Dockerfile.in b/images/javaenv/Dockerfile.in index d0ec2df52cc..0cc8ddad39e 100644 --- a/images/javaenv/Dockerfile.in +++ b/images/javaenv/Dockerfile.in @@ -1,4 +1,4 @@ -FROM openjdk:8 +FROM hyperledger/fabric-baseimage RUN wget https://services.gradle.org/distributions/gradle-2.12-bin.zip -P /tmp --quiet RUN unzip -qo /tmp/gradle-2.12-bin.zip -d /opt && rm /tmp/gradle-2.12-bin.zip RUN ln -s /opt/gradle-2.12/bin/gradle /usr/bin diff --git a/scripts/goUnitTests.sh b/scripts/goUnitTests.sh index 5b4a05b01c7..37ff314ddb0 100755 --- a/scripts/goUnitTests.sh +++ b/scripts/goUnitTests.sh @@ -7,6 +7,7 @@ GO_LDFLAGS=$2 BASEIMAGE="hyperledger/fabric-peer" IMAGE=$BASEIMAGE +ARCH=`uname -m` if [ "$TAG" != "" ] then @@ -25,6 +26,13 @@ PKGS=`go list github.com/hyperledger/fabric/... | grep -v /vendor/ | \ grep -v /examples/chaincode/go/asset_management | \ grep -v /examples/chaincode/go/utxo | \ grep -v /examples/chaincode/go/rbac_tcerts_no_attrs` + +if [ x$ARCH == xppc64le -o x$ARCH == xs390x ] +then +PKGS=`echo $PKGS | sed 's@'github.com/hyperledger/fabric/core/chaincode/platforms/java/test'@@g'` +PKGS=`echo $PKGS | sed 's@'github.com/hyperledger/fabric/core/chaincode/platforms/java'@@g'` +fi + echo "DONE!" echo -n "Starting peer.." diff --git a/scripts/provision/host.sh b/scripts/provision/host.sh index e5a8aa22f48..b77e487be71 100755 --- a/scripts/provision/host.sh +++ b/scripts/provision/host.sh @@ -39,7 +39,11 @@ apt-get install --yes tcl tclx tcllib apt-get install --yes npm # Install JDK 1.8 for Java chaincode development +ARCH=`uname -m` +if [ x$ARCH == xx86_64 ] +then add-apt-repository ppa:openjdk-r/ppa -y +fi apt-get update && apt-get install openjdk-8-jdk -y # Download Gradle and create sym link @@ -54,5 +58,8 @@ curl -fsSL http://apache.osuosl.org/maven/maven-3/$MAVEN_VERSION/binaries/apache | tar -xzC /usr/share/maven --strip-components=1 \ && ln -s /usr/share/maven/bin/mvn /usr/bin/mvn +if [ x$ARCH == xx86_64 ] +then # Set the default JDK to 1.8 update-java-alternatives -s java-1.8.0-openjdk-amd64 +fi