This is an automated email from the ASF dual-hosted git repository.

kezhenxu94 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/skywalking.git


The following commit(s) were added to refs/heads/master by this push:
     new 8e6a527  Add Java versions 9~14 to E2E tests (#4674)
8e6a527 is described below

commit 8e6a527f78108c7a466ba2dd87eaf5c47d1765cc
Author: kezhenxu94 <kezhenx...@apache.org>
AuthorDate: Tue Apr 21 13:45:32 2020 +0800

    Add Java versions 9~14 to E2E tests (#4674)
---
 .github/workflows/e2e.cluster.yaml                 |  2 +-
 .github/workflows/e2e.jdk-versions.yaml            |  5 +++
 .github/workflows/e2e.profiling.yaml               |  2 +-
 .github/workflows/e2e.storages.yaml                |  2 +-
 .github/workflows/e2e.ttl.yaml                     |  2 +-
 Makefile                                           | 18 +++++----
 .../apm-sdk-plugin/finagle-6.25.x-plugin/pom.xml   |  4 +-
 docker/oap-es7/Dockerfile.oap                      | 42 --------------------
 docker/oap-es7/docker-entrypoint.sh                | 46 ----------------------
 docker/oap-es7/log4j2.xml                          | 36 -----------------
 docker/oap/Dockerfile.oap                          | 11 ++++--
 docker/oap/docker-entrypoint.sh                    | 15 ++++---
 pom.xml                                            |  7 ++++
 .../skywalking/e2e/SkyWalkingAnnotations.java      |  4 +-
 test/e2e/e2e-test/docker/base-compose.yml          |  4 +-
 .../docker/cluster/docker-compose.zk.mysql.yml     |  4 +-
 test/e2e/e2e-test/docker/download-mysql.sh         |  6 +--
 .../docker/profile/docker-compose.mysql.yml        |  2 +-
 .../docker/storage/docker-compose.mysql.yml        |  2 +-
 test/e2e/e2e-test/docker/storage/download-mysql.sh | 27 -------------
 .../apache/skywalking/e2e/profile/ProfileE2E.java  |  6 ++-
 tools/coverage/report.sh                           |  5 +++
 tools/profile-exporter/profile_exporter.sh         |  2 +-
 23 files changed, 67 insertions(+), 187 deletions(-)

diff --git a/.github/workflows/e2e.cluster.yaml 
b/.github/workflows/e2e.cluster.yaml
index d2f82f2..53ec555 100644
--- a/.github/workflows/e2e.cluster.yaml
+++ b/.github/workflows/e2e.cluster.yaml
@@ -49,7 +49,7 @@ jobs:
           git submodule sync --recursive
           git -c protocol.version=2 submodule update --init --force 
--recursive --depth=1
       - name: Compile and Build
-        run: make docker && ES_VERSION=es7 TAG=latest-es7 make docker
+        run: make docker && ES_VERSION=es7 TAG=latest-es7 make docker.oap
       - name: Copy dist package
         run: cp -R dist test/e2e/
       - name: Cluster with ${{ matrix.coordinator }} and ${{ matrix.storage }}
diff --git a/.github/workflows/e2e.jdk-versions.yaml 
b/.github/workflows/e2e.jdk-versions.yaml
index 4eb5be5..272c1b1 100644
--- a/.github/workflows/e2e.jdk-versions.yaml
+++ b/.github/workflows/e2e.jdk-versions.yaml
@@ -39,6 +39,7 @@ jobs:
     env:
       SW_SIMPLE_CASE: jdk
       SW_AGENT_JDK_VERSION: ${{ matrix.jdk }}
+      SW_OAP_BASE_IMAGE: adoptopenjdk/openjdk${{ matrix.jdk }}:alpine
     steps:
       - uses: actions/checkout@v2
       - name: Checkout Submodules
@@ -46,6 +47,10 @@ jobs:
         run: |
           git submodule sync --recursive
           git -c protocol.version=2 submodule update --init --force 
--recursive --depth=1
+      - name: Set Up Java
+        uses: actions/setup-java@v1
+        with:
+          java-version: ${{ matrix.jdk }}
       - name: Build Docker Image
         run: make docker
       - name: Copy dist package
diff --git a/.github/workflows/e2e.profiling.yaml 
b/.github/workflows/e2e.profiling.yaml
index 229468d..59d4546 100644
--- a/.github/workflows/e2e.profiling.yaml
+++ b/.github/workflows/e2e.profiling.yaml
@@ -47,7 +47,7 @@ jobs:
           git submodule sync --recursive
           git -c protocol.version=2 submodule update --init --force 
--recursive --depth=1
       - name: Compile and Build
-        run: make docker && ES_VERSION=es7 TAG=latest-es7 make docker
+        run: make docker && ES_VERSION=es7 TAG=latest-es7 make docker.oap
       - name: Copy dist package
         run: cp -R dist test/e2e/
       - name: Profiling ${{ matrix.storage }}
diff --git a/.github/workflows/e2e.storages.yaml 
b/.github/workflows/e2e.storages.yaml
index c5c380b..d74e865 100644
--- a/.github/workflows/e2e.storages.yaml
+++ b/.github/workflows/e2e.storages.yaml
@@ -47,7 +47,7 @@ jobs:
           git submodule sync --recursive
           git -c protocol.version=2 submodule update --init --force 
--recursive --depth=1
       - name: Compile and Build
-        run: make docker && ES_VERSION=es7 TAG=latest-es7 make docker
+        run: make docker && ES_VERSION=es7 TAG=latest-es7 make docker.oap
       - name: Copy dist package
         run: cp -R dist test/e2e/
       - name: Storage ${{ matrix.storage }}
diff --git a/.github/workflows/e2e.ttl.yaml b/.github/workflows/e2e.ttl.yaml
index c1dce82..9f9e398 100644
--- a/.github/workflows/e2e.ttl.yaml
+++ b/.github/workflows/e2e.ttl.yaml
@@ -47,7 +47,7 @@ jobs:
           git submodule sync --recursive
           git -c protocol.version=2 submodule update --init --force 
--recursive --depth=1
       - name: Compile and Build
-        run: make docker && ES_VERSION=es7 TAG=latest-es7 make docker
+        run: make docker && ES_VERSION=es7 TAG=latest-es7 make docker.oap
       - name: Copy dist package
         run: cp -R dist test/e2e/
       - name: TTL of storage ${{ matrix.storage }}
diff --git a/Makefile b/Makefile
index 8838aef..1561285 100644
--- a/Makefile
+++ b/Makefile
@@ -58,18 +58,22 @@ DOCKER_TARGETS:=docker.oap docker.ui
 docker.all: $(DOCKER_TARGETS)
 
 ifeq ($(ES_VERSION),es7)
-docker.oap: $(SW_OUT)/apache-skywalking-apm-bin-es7.tar.gz
-docker.oap: $(SW_ROOT)/docker/oap-es7/Dockerfile.oap
-docker.oap: $(SW_ROOT)/docker/oap-es7/docker-entrypoint.sh
-docker.oap: $(SW_ROOT)/docker/oap-es7/log4j2.xml
-               $(DOCKER_RULE)
+  DIST_NAME := apache-skywalking-apm-bin-es7
 else
-docker.oap: $(SW_OUT)/apache-skywalking-apm-bin.tar.gz
+  DIST_NAME := apache-skywalking-apm-bin
+endif
+
+ifneq ($(SW_OAP_JAVA_VERSION),)
+  BUILD_ARGS := $(BUILD_ARGS) --build-arg JAVA_VERSION=$(SW_OAP_JAVA_VERSION)
+endif
+
+BUILD_ARGS := $(BUILD_ARGS) --build-arg DIST_NAME=$(DIST_NAME)
+
+docker.oap: $(SW_OUT)/$(DIST_NAME).tar.gz
 docker.oap: $(SW_ROOT)/docker/oap/Dockerfile.oap
 docker.oap: $(SW_ROOT)/docker/oap/docker-entrypoint.sh
 docker.oap: $(SW_ROOT)/docker/oap/log4j2.xml
                $(DOCKER_RULE)
-endif
 
 docker.ui: $(SW_OUT)/apache-skywalking-apm-bin.tar.gz
 docker.ui: $(SW_ROOT)/docker/ui/Dockerfile.ui
diff --git a/apm-sniffer/apm-sdk-plugin/finagle-6.25.x-plugin/pom.xml 
b/apm-sniffer/apm-sdk-plugin/finagle-6.25.x-plugin/pom.xml
index c2adc93..3f55bdd 100644
--- a/apm-sniffer/apm-sdk-plugin/finagle-6.25.x-plugin/pom.xml
+++ b/apm-sniffer/apm-sdk-plugin/finagle-6.25.x-plugin/pom.xml
@@ -34,7 +34,7 @@
     <properties>
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
         <finagle.version>6.34.0</finagle.version>
-        <scala.library.version>2.11.8</scala.library.version>
+        <scala.library.version>2.11.12</scala.library.version>
     </properties>
 
     <dependencies>
@@ -78,4 +78,4 @@
             </plugin>
         </plugins>
     </build>
-</project>
\ No newline at end of file
+</project>
diff --git a/docker/oap-es7/Dockerfile.oap b/docker/oap-es7/Dockerfile.oap
deleted file mode 100644
index 8ced58a..0000000
--- a/docker/oap-es7/Dockerfile.oap
+++ /dev/null
@@ -1,42 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements.  See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership.  The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License.  You may obtain a copy of the License at
-#
-#     http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-FROM openjdk:8u181-jdk-stretch
-
-ENV DIST_NAME=apache-skywalking-apm-bin-es7 \
-    JAVA_OPTS=" -Xms256M " \
-    SW_CLUSTER="standalone" \
-    SW_STORAGE="h2"
-
-COPY "$DIST_NAME.tar.gz" /
-
-RUN set -ex; \
-    tar -xzf "$DIST_NAME.tar.gz"; \
-    rm -rf "$DIST_NAME.tar.gz"; \
-    rm -rf "$DIST_NAME/config/log4j2.xml"; \
-    rm -rf "$DIST_NAME/bin"; rm -rf "$DIST_NAME/webapp"; rm -rf 
"$DIST_NAME/agent"; \
-    mv "$DIST_NAME" skywalking;
-
-WORKDIR skywalking
-
-COPY log4j2.xml config/
-COPY docker-entrypoint.sh .
-RUN mkdir ext-config; \
-    mkdir ext-libs;
-
-EXPOSE 12800 11800 1234
-
-ENTRYPOINT ["bash", "docker-entrypoint.sh"]
\ No newline at end of file
diff --git a/docker/oap-es7/docker-entrypoint.sh 
b/docker/oap-es7/docker-entrypoint.sh
deleted file mode 100755
index ae6a44b..0000000
--- a/docker/oap-es7/docker-entrypoint.sh
+++ /dev/null
@@ -1,46 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements.  See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership.  The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License.  You may obtain a copy of the License at
-#
-#     http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#!/bin/bash
-
-set -e
-
-echo "[Entrypoint] Apache SkyWalking Docker Image"
-
-if [[ "$SW_TELEMETRY" = "so11y" ]]; then
-    export SW_RECEIVER_SO11Y=default
-    echo "Set SW_RECEIVER_SO11Y to ${SW_RECEIVER_SO11Y}"
-fi
-
-EXT_LIB_DIR=/skywalking/ext-libs
-EXT_CONFIG_DIR=/skywalking/ext-config
-
-# Override configuration files
-cp -vfR ${EXT_CONFIG_DIR}/ config/
-
-CLASSPATH="config:$CLASSPATH"
-for i in oap-libs/*.jar
-do
-    CLASSPATH="$i:$CLASSPATH"
-done
-for i in ${EXT_LIB_DIR}/*.jar
-do
-    CLASSPATH="$i:$CLASSPATH"
-done
-
-set -ex
-exec java -XX:+UnlockExperimentalVMOptions -XX:+UseCGroupMemoryLimitForHeap \
-     ${JAVA_OPTS} -classpath ${CLASSPATH} 
org.apache.skywalking.oap.server.starter.OAPServerStartUp "$@"
diff --git a/docker/oap-es7/log4j2.xml b/docker/oap-es7/log4j2.xml
deleted file mode 100644
index eb69a89..0000000
--- a/docker/oap-es7/log4j2.xml
+++ /dev/null
@@ -1,36 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  ~ Licensed to the Apache Software Foundation (ASF) under one or more
-  ~ contributor license agreements.  See the NOTICE file distributed with
-  ~ this work for additional information regarding copyright ownership.
-  ~ The ASF licenses this file to You under the Apache License, Version 2.0
-  ~ (the "License"); you may not use this file except in compliance with
-  ~ the License.  You may obtain a copy of the License at
-  ~
-  ~     http://www.apache.org/licenses/LICENSE-2.0
-  ~
-  ~ Unless required by applicable law or agreed to in writing, software
-  ~ distributed under the License is distributed on an "AS IS" BASIS,
-  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  ~ See the License for the specific language governing permissions and
-  ~ limitations under the License.
-  ~
-  -->
-
-<Configuration status="INFO">
-    <Appenders>
-        <Console name="Console" target="SYSTEM_OUT">
-            <PatternLayout charset="UTF-8" pattern="%d - %c -%-4r [%t] %-5p %x 
- %m%n"/>
-        </Console>
-    </Appenders>
-    <Loggers>
-        <logger name="org.eclipse.jetty" level="INFO"/>
-        <logger name="org.apache.zookeeper" level="INFO"/>
-        <logger name="org.elasticsearch.common.network.IfConfig" level="INFO"/>
-        <logger name="io.grpc.netty" level="INFO"/>
-        <logger 
name="org.apache.skywalking.oap.server.receiver.istio.telemetry" level="DEBUG"/>
-        <Root level="INFO">
-            <AppenderRef ref="Console"/>
-        </Root>
-    </Loggers>
-</Configuration>
diff --git a/docker/oap/Dockerfile.oap b/docker/oap/Dockerfile.oap
index a94490e..ff94d3b 100644
--- a/docker/oap/Dockerfile.oap
+++ b/docker/oap/Dockerfile.oap
@@ -14,13 +14,16 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-FROM openjdk:8u181-jdk-stretch
+ARG JAVA_VERSION=8
 
-ENV DIST_NAME=apache-skywalking-apm-bin \
-    JAVA_OPTS=" -Xms256M " \
+FROM adoptopenjdk/openjdk$JAVA_VERSION:alpine
+
+ENV JAVA_OPTS=" -Xms256M " \
     SW_CLUSTER="standalone" \
     SW_STORAGE="h2"
 
+ARG DIST_NAME
+
 COPY "$DIST_NAME.tar.gz" /
 
 RUN set -ex; \
@@ -39,4 +42,4 @@ RUN mkdir ext-config; \
 
 EXPOSE 12800 11800 1234
 
-ENTRYPOINT ["bash", "docker-entrypoint.sh"]
\ No newline at end of file
+ENTRYPOINT ["sh", "docker-entrypoint.sh"]
diff --git a/docker/oap/docker-entrypoint.sh b/docker/oap/docker-entrypoint.sh
index ae6a44b..96cfb6d 100755
--- a/docker/oap/docker-entrypoint.sh
+++ b/docker/oap/docker-entrypoint.sh
@@ -1,3 +1,4 @@
+#!/bin/sh
 # Licensed to the Apache Software Foundation (ASF) under one
 # or more contributor license agreements.  See the NOTICE file
 # distributed with this work for additional information
@@ -14,13 +15,11 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-#!/bin/bash
-
 set -e
 
 echo "[Entrypoint] Apache SkyWalking Docker Image"
 
-if [[ "$SW_TELEMETRY" = "so11y" ]]; then
+if [ "$SW_TELEMETRY" = "so11y" ]; then
     export SW_RECEIVER_SO11Y=default
     echo "Set SW_RECEIVER_SO11Y to ${SW_RECEIVER_SO11Y}"
 fi
@@ -36,11 +35,15 @@ for i in oap-libs/*.jar
 do
     CLASSPATH="$i:$CLASSPATH"
 done
-for i in ${EXT_LIB_DIR}/*.jar
+for i in "${EXT_LIB_DIR}"/*.jar
 do
     CLASSPATH="$i:$CLASSPATH"
 done
 
+if java -XX:+UnlockExperimentalVMOptions -XX:+UseCGroupMemoryLimitForHeap 
-version; then
+  JAVA_OPTS="${JAVA_OPTS} -XX:+UnlockExperimentalVMOptions 
-XX:+UseCGroupMemoryLimitForHeap"
+fi
+
 set -ex
-exec java -XX:+UnlockExperimentalVMOptions -XX:+UseCGroupMemoryLimitForHeap \
-     ${JAVA_OPTS} -classpath ${CLASSPATH} 
org.apache.skywalking.oap.server.starter.OAPServerStartUp "$@"
+
+exec java ${JAVA_OPTS} -classpath ${CLASSPATH} 
org.apache.skywalking.oap.server.starter.OAPServerStartUp "$@"
diff --git a/pom.xml b/pom.xml
index 4f21498..1aed5c6 100755
--- a/pom.xml
+++ b/pom.xml
@@ -219,6 +219,7 @@
         <gmaven-plugin.version>1.5</gmaven-plugin.version>
         <cobertura-maven-plugin.version>2.7</cobertura-maven-plugin.version>
         <checkstyle.fails.on.error>true</checkstyle.fails.on.error>
+        <javax.annotation-api.version>1.3.2</javax.annotation-api.version>
     </properties>
 
     <dependencies>
@@ -255,6 +256,12 @@
             <version>${lombok.version}</version>
             <scope>provided</scope>
         </dependency>
+        <dependency>
+            <groupId>javax.annotation</groupId>
+            <artifactId>javax.annotation-api</artifactId>
+            <version>${javax.annotation-api.version}</version>
+            <scope>provided</scope>
+        </dependency>
     </dependencies>
 
     <dependencyManagement>
diff --git 
a/test/e2e/e2e-common/src/main/java/org/apache/skywalking/e2e/SkyWalkingAnnotations.java
 
b/test/e2e/e2e-common/src/main/java/org/apache/skywalking/e2e/SkyWalkingAnnotations.java
index 34213cb..1dd7b6b 100644
--- 
a/test/e2e/e2e-common/src/main/java/org/apache/skywalking/e2e/SkyWalkingAnnotations.java
+++ 
b/test/e2e/e2e-common/src/main/java/org/apache/skywalking/e2e/SkyWalkingAnnotations.java
@@ -209,7 +209,9 @@ public final class SkyWalkingAnnotations {
         compose.withPull(true)
                .withLocalCompose(true)
                .withTailChildContainers(true)
-               .withRemoveImages(DockerComposeContainer.RemoveImages.ALL);
+               .withRemoveImages(
+                   IS_CI ? DockerComposeContainer.RemoveImages.ALL : 
DockerComposeContainer.RemoveImages.LOCAL
+               );
 
         if (IS_CI) {
             initLoggers(files, compose);
diff --git a/test/e2e/e2e-test/docker/base-compose.yml 
b/test/e2e/e2e-test/docker/base-compose.yml
index 1769914..78b20d0 100644
--- a/test/e2e/e2e-test/docker/base-compose.yml
+++ b/test/e2e/e2e-test/docker/base-compose.yml
@@ -35,7 +35,7 @@ services:
       JAVA_OPTS: >-
         
-javaagent:/jacoco/jacocoagent.jar=classdumpdir=/jacoco/classes/oap,destfile=/jacoco/oap.exec,includes=org.apache.skywalking.*,excludes=org.apache.skywalking.oap.query.*:org.apache.skywalking.oap.server.core.query.*
     healthcheck:
-      test: ["CMD", "bash", "-c", "cat < /dev/null > /dev/tcp/127.0.0.1/11800"]
+      test: ["CMD", "sh", "-c", "nc -zn 127.0.0.1 11800"]
       interval: 5s
       timeout: 60s
       retries: 120
@@ -59,7 +59,7 @@ services:
       JAVA_OPTS: >-
         
-javaagent:/jacoco/jacocoagent.jar=classdumpdir=/jacoco/classes/oap,destfile=/jacoco/oap.exec,includes=org.apache.skywalking.*,excludes=org.apache.skywalking.oap.query.*:org.apache.skywalking.oap.server.core.query.*
     healthcheck:
-      test: ["CMD", "bash", "-c", "cat < /dev/null > /dev/tcp/127.0.0.1/11800"]
+      test: ["CMD", "sh", "-c", "nc -zn 127.0.0.1 11800"]
       interval: 5s
       timeout: 60s
       retries: 120
diff --git a/test/e2e/e2e-test/docker/cluster/docker-compose.zk.mysql.yml 
b/test/e2e/e2e-test/docker/cluster/docker-compose.zk.mysql.yml
index 1d750ef..51ac958 100644
--- a/test/e2e/e2e-test/docker/cluster/docker-compose.zk.mysql.yml
+++ b/test/e2e/e2e-test/docker/cluster/docker-compose.zk.mysql.yml
@@ -41,7 +41,7 @@ services:
       SW_STORAGE: mysql
       JAVA_OPTS: >-
         
-javaagent:/jacoco/jacocoagent.jar=classdumpdir=/jacoco/classes/oap1,destfile=/jacoco/oap1.exec,includes=org.apache.skywalking.*,excludes=org.apache.skywalking.oap.query.*:org.apache.skywalking.oap.server.core.query.*
-    entrypoint: ['bash', '-c', '/download-mysql.sh && 
/skywalking/docker-entrypoint.sh']
+    entrypoint: ['sh', '-c', '/download-mysql.sh && 
/skywalking/docker-entrypoint.sh']
     depends_on:
       zk:
         condition: service_healthy
@@ -57,7 +57,7 @@ services:
       SW_STORAGE: mysql
       JAVA_OPTS: >-
         
-javaagent:/jacoco/jacocoagent.jar=classdumpdir=/jacoco/classes/oap2,destfile=/jacoco/oap2.exec,includes=org.apache.skywalking.*,excludes=org.apache.skywalking.oap.query.*:org.apache.skywalking.oap.server.core.query.*
-    entrypoint: ['bash', '-c', '/download-mysql.sh && 
/skywalking/docker-entrypoint.sh']
+    entrypoint: ['sh', '-c', '/download-mysql.sh && 
/skywalking/docker-entrypoint.sh']
     depends_on:
       zk:
         condition: service_healthy
diff --git a/test/e2e/e2e-test/docker/download-mysql.sh 
b/test/e2e/e2e-test/docker/download-mysql.sh
index 970937c..2c9b852 100755
--- a/test/e2e/e2e-test/docker/download-mysql.sh
+++ b/test/e2e/e2e-test/docker/download-mysql.sh
@@ -12,16 +12,16 @@
 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 # See the License for the specific language governing permissions and
 # limitations under the License.
-#!/usr/bin/env bash
 
 set -ex
 
+apk add curl
+
 SW_HOME=/skywalking
 
MYSQL_URL="https://repo.maven.apache.org/maven2/mysql/mysql-connector-java/8.0.13/mysql-connector-java-8.0.13.jar";
 MYSQL_DRIVER="mysql-connector-java-8.0.13.jar"
 
-curl -L -o "${SW_HOME}/oap-libs/${MYSQL_DRIVER}" ${MYSQL_URL}
-if [[ $? -ne 0 ]]; then
+if ! curl -Lo "${SW_HOME}/oap-libs/${MYSQL_DRIVER}" ${MYSQL_URL}; then
     echo "Fail to download ${MYSQL_DRIVER}."
     exit 1
 fi
diff --git a/test/e2e/e2e-test/docker/profile/docker-compose.mysql.yml 
b/test/e2e/e2e-test/docker/profile/docker-compose.mysql.yml
index aa4c5d1..0491780 100644
--- a/test/e2e/e2e-test/docker/profile/docker-compose.mysql.yml
+++ b/test/e2e/e2e-test/docker/profile/docker-compose.mysql.yml
@@ -41,7 +41,7 @@ services:
     depends_on:
       mysql:
         condition: service_healthy
-    entrypoint: ['bash', '-c', '/download-mysql.sh && 
/skywalking/docker-entrypoint.sh']
+    entrypoint: ['sh', '-c', '/download-mysql.sh && 
/skywalking/docker-entrypoint.sh']
 
 networks:
   e2e:
diff --git a/test/e2e/e2e-test/docker/storage/docker-compose.mysql.yml 
b/test/e2e/e2e-test/docker/storage/docker-compose.mysql.yml
index aa4c5d1..0491780 100644
--- a/test/e2e/e2e-test/docker/storage/docker-compose.mysql.yml
+++ b/test/e2e/e2e-test/docker/storage/docker-compose.mysql.yml
@@ -41,7 +41,7 @@ services:
     depends_on:
       mysql:
         condition: service_healthy
-    entrypoint: ['bash', '-c', '/download-mysql.sh && 
/skywalking/docker-entrypoint.sh']
+    entrypoint: ['sh', '-c', '/download-mysql.sh && 
/skywalking/docker-entrypoint.sh']
 
 networks:
   e2e:
diff --git a/test/e2e/e2e-test/docker/storage/download-mysql.sh 
b/test/e2e/e2e-test/docker/storage/download-mysql.sh
deleted file mode 100755
index 970937c..0000000
--- a/test/e2e/e2e-test/docker/storage/download-mysql.sh
+++ /dev/null
@@ -1,27 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements.  See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License.  You may obtain a copy of the License at
-#
-#     http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#!/usr/bin/env bash
-
-set -ex
-
-SW_HOME=/skywalking
-MYSQL_URL="https://repo.maven.apache.org/maven2/mysql/mysql-connector-java/8.0.13/mysql-connector-java-8.0.13.jar";
-MYSQL_DRIVER="mysql-connector-java-8.0.13.jar"
-
-curl -L -o "${SW_HOME}/oap-libs/${MYSQL_DRIVER}" ${MYSQL_URL}
-if [[ $? -ne 0 ]]; then
-    echo "Fail to download ${MYSQL_DRIVER}."
-    exit 1
-fi
diff --git 
a/test/e2e/e2e-test/src/test/java/org/apache/skywalking/e2e/profile/ProfileE2E.java
 
b/test/e2e/e2e-test/src/test/java/org/apache/skywalking/e2e/profile/ProfileE2E.java
index 118c32d..6be9faf 100644
--- 
a/test/e2e/e2e-test/src/test/java/org/apache/skywalking/e2e/profile/ProfileE2E.java
+++ 
b/test/e2e/e2e-test/src/test/java/org/apache/skywalking/e2e/profile/ProfileE2E.java
@@ -257,12 +257,14 @@ public class ProfileE2E extends SkyWalkingTestAdapter {
             "/skywalking/tools/profile-exporter/profile_exporter.sh 
--taskid=%s --traceid=%s /tmp",
             taskId, traceId
         );
-        final Container.ExecResult exportResult = 
oapContainer.execInContainer("/bin/bash", "-c", exportShell);
+        final Container.ExecResult exportResult = 
oapContainer.execInContainer("/bin/sh", "-c", exportShell);
 
         LOGGER.info("exported result: {}", exportResult);
 
+        assertThat(exportResult.getExitCode()).isEqualTo(0);
+
         final String lsExportedFileShell = String.format("ls /tmp/%s.tar.gz", 
traceId);
-        final Container.ExecResult checkExportedFileResult = 
oapContainer.execInContainer("/bin/bash", "-c", lsExportedFileShell);
+        final Container.ExecResult checkExportedFileResult = 
oapContainer.execInContainer("/bin/sh", "-c", lsExportedFileShell);
 
         LOGGER.info("check exported file result: {}", checkExportedFileResult);
 
diff --git a/tools/coverage/report.sh b/tools/coverage/report.sh
index 8dd5135..7953a25 100755
--- a/tools/coverage/report.sh
+++ b/tools/coverage/report.sh
@@ -28,6 +28,11 @@ ls -alh "${JACOCO_HOME}"
 for exec_data in "${JACOCO_HOME}"/*.exec; do
   exec_data=${exec_data/*\//}
   exec_data=${exec_data/.exec/}
+
+  sudo rm -rf 
"${JACOCO_HOME}"/classes/"${exec_data}"/org/apache/skywalking/oap/server/core/query/entity
 || true
+  sudo rm -rf 
"${JACOCO_HOME}"/classes/"${exec_data}"/org/apache/skywalking/testcase || true
+  sudo rm -rf 
"${JACOCO_HOME}"/classes/"${exec_data}"/org/apache/skywalking/e2e || true
+
   java -jar "${JACOCO_HOME}"/jacococli.jar report \
     --classfiles "${JACOCO_HOME}"/classes/"$exec_data" \
     --xml=/tmp/report-"$exec_data".xml \
diff --git a/tools/profile-exporter/profile_exporter.sh 
b/tools/profile-exporter/profile_exporter.sh
index 6d65887..98a5b56 100755
--- a/tools/profile-exporter/profile_exporter.sh
+++ b/tools/profile-exporter/profile_exporter.sh
@@ -1,4 +1,4 @@
-#!/usr/bin/env bash
+#!/usr/bin/env sh
 
 #
 # Licensed to the Apache Software Foundation (ASF) under one or more

Reply via email to