Tomo Suzuki 6 lat temu
rodzic
commit
7051725941

+ 2 - 0
kokoro/linux/64-bit/Dockerfile

@@ -66,6 +66,8 @@ RUN apt-get clean && apt-get update && apt-get install -y --force-yes \
   openjdk-7-jdk \
   # -- For java_oracle7 -- \
   oracle-java7-installer \
+  # -- For java_linkage_monitor
+  openjdk-8-jdk \
   # -- For python / python_cpp -- \
   python-setuptools \
   python-pip \

+ 17 - 0
kokoro/linux/java_linkage_monitor/build.sh

@@ -0,0 +1,17 @@
+#!/bin/bash
+#
+# This is the top-level script we give to Kokoro as the entry point for
+# running the "pull request" project:
+#
+# This script selects a specific Dockerfile (for building a Docker image) and
+# a script to run inside that image.  Then we delegate to the general
+# build_and_run_docker.sh script.
+
+# Change to repo root
+cd $(dirname $0)/../../..
+
+export DOCKERFILE_DIR=kokoro/linux/64-bit
+export DOCKER_RUN_SCRIPT=kokoro/linux/pull_request_in_docker.sh
+export OUTPUT_DIR=testoutput
+export TEST_SET="java_linkage_monitor"
+./kokoro/linux/build_and_run_docker.sh

+ 12 - 0
kokoro/linux/java_linkage_monitor/presubmit.cfg

@@ -0,0 +1,12 @@
+# Config file for running Linkage Monitor in Kokoro
+# https://github.com/GoogleCloudPlatform/cloud-opensource-java/tree/master/linkage-monitor
+
+# Location of the build script in repository
+build_file: "protobuf/kokoro/linux/java_linkage_monitor/build.sh"
+timeout_mins: 120
+
+action {
+  define_artifacts {
+    regex: "**/sponge_log.xml"
+  }
+}

+ 9 - 0
tests.sh

@@ -168,6 +168,10 @@ build_golang() {
 use_java() {
   version=$1
   case "$version" in
+    jdk8)
+      export PATH=/usr/lib/jvm/java-8-openjdk-amd64/bin:$PATH
+      export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
+      ;;
     jdk7)
       export PATH=/usr/lib/jvm/java-7-openjdk-amd64/bin:$PATH
       export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64
@@ -226,6 +230,10 @@ build_java_compatibility() {
   cd java/compatibility_tests/v2.5.0
   ./test.sh 3.0.0-beta-4
 }
+build_java_linkage_monitor() {
+  use_java jdk8
+  # TODO(#6303): Call Linkage Monitor
+}
 
 build_objectivec_ios() {
   # Reused the build script that takes care of configuring and ensuring things
@@ -712,6 +720,7 @@ Usage: $0 { cpp |
             java_jdk7 |
             java_oracle7 |
             java_compatibility |
+            java_linkage_monitor |
             objectivec_ios |
             objectivec_ios_debug |
             objectivec_ios_release |