diff --git a/.github/workflows/e2e.yaml b/.github/workflows/e2e.yaml
index 06d5fba7c..e19c1de3a 100644
--- a/.github/workflows/e2e.yaml
+++ b/.github/workflows/e2e.yaml
@@ -56,6 +56,8 @@ jobs:
run: export E2E_VERSION=jdk12-1.5 && bash -x test/e2e/run.sh e2e-single-service
- name: Agent Reboot Tests(JDK8)
run: export E2E_VERSION=jdk8-1.5 && bash -x test/e2e/run.sh e2e-agent-reboot
+ - name: Agent Auth Tests(JDK8)
+ run: export E2E_VERSION=jdk8-1.5 && bash -x test/e2e/run.sh e2e-agent-auth
Cluster:
runs-on: ubuntu-latest
diff --git a/test/e2e/e2e-agent-auth/pom.xml b/test/e2e/e2e-agent-auth/pom.xml
index 55e329ad9..31ff1728c 100755
--- a/test/e2e/e2e-agent-auth/pom.xml
+++ b/test/e2e/e2e-agent-auth/pom.xml
@@ -83,14 +83,12 @@
${e2e.container.name.prefix}
+ test-token
${project.build.finalName}.jar
- -Dskywalking.agent.cool_down_threshold=1
-
+webapp.host:webapp.port:8080
+client.host:client.port:9090
- +reboot.host:reboot.port:9091
@@ -100,8 +98,14 @@
- SkyWalking e2e container is ready for tests
-
+
+
+ http://${docker.host.address}:${client.port}/e2e/health-check
+
+ GET
+ 200
+
+
diff --git a/test/e2e/e2e-agent-auth/src/docker/rc.d/rc0-prepare.sh b/test/e2e/e2e-agent-auth/src/docker/rc.d/rc0-prepare.sh
deleted file mode 100755
index 5f771bd85..000000000
--- a/test/e2e/e2e-agent-auth/src/docker/rc.d/rc0-prepare.sh
+++ /dev/null
@@ -1,42 +0,0 @@
-#!/usr/bin/env bash
-# Licensed to the SkyAPM 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.
-
-# in order to make it easier to restart the OAP (by executing the restart script) from outside (container),
-# we'll expose a tcp port and whenever we receive a message on that port, we'll restart the OAP server,
-# socat will help on this to execute the script when receiving a message on that port
-
-apt-get update && apt-get -y install socat
-
-# socat will execute the command in a new shell, thus won't catch the original functions' declarations
-# so we'll put the restart command in a script file
-
-echo '
- ps -ef | grep -v grep | grep oap.logDir | awk '"'"'{print $2}'"'"' | xargs --no-run-if-empty kill -9
- rm -rf /tmp/oap/trace_buffer1
- rm -rf /tmp/oap/mesh_buffer1
- echo "restarting OAP server..." \
- && SW_RECEIVER_BUFFER_PATH=/tmp/oap/trace_buffer1 \
- && SW_SERVICE_MESH_BUFFER_PATH=/tmp/oap/mesh_buffer1 \
- && cd /sw \
- && bash bin/oapService.sh > /dev/null 2>&1 &
-' > /usr/bin/restart_oap
-
-sync
-
-chmod +x /usr/bin/restart_oap
-
-sync
diff --git a/test/e2e/e2e-agent-auth/src/docker/rc.d/rc1-startup.sh b/test/e2e/e2e-agent-auth/src/docker/rc.d/rc1-startup.sh
index 3b1388c22..a19df3686 100755
--- a/test/e2e/e2e-agent-auth/src/docker/rc.d/rc1-startup.sh
+++ b/test/e2e/e2e-agent-auth/src/docker/rc.d/rc1-startup.sh
@@ -15,15 +15,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-# set up the tcp server to listen for the restart command
-
-socat -u tcp-l:9091,fork system:'bash restart_oap' &
-
echo 'starting OAP server...' \
- && SW_STORAGE_ES_BULK_ACTIONS=1 \
- && SW_STORAGE_ES_FLUSH_INTERVAL=1 \
- && SW_RECEIVER_BUFFER_PATH=/tmp/oap/trace_buffer1 \
- && SW_SERVICE_MESH_BUFFER_PATH=/tmp/oap/mesh_buffer1 \
&& SW_AUTHENTICATION="test-token" \
&& start_oap 'init'
diff --git a/test/e2e/e2e-agent-auth/src/test/java/org/apache/skywalking/e2e/SampleVerificationITCase.java b/test/e2e/e2e-agent-auth/src/test/java/org/apache/skywalking/e2e/SampleVerificationITCase.java
index 0d290bd0a..ec7328852 100644
--- a/test/e2e/e2e-agent-auth/src/test/java/org/apache/skywalking/e2e/SampleVerificationITCase.java
+++ b/test/e2e/e2e-agent-auth/src/test/java/org/apache/skywalking/e2e/SampleVerificationITCase.java
@@ -101,7 +101,8 @@ public class SampleVerificationITCase {
try {
final Map user = new HashMap<>();
user.put("name", "SkyWalking");
- final ResponseEntity responseEntity = restTemplate.postForEntity(instrumentedServiceUrl + "/e2e/users", user, String.class);
+ final ResponseEntity responseEntity = restTemplate.postForEntity(
+ instrumentedServiceUrl + "/e2e/users", user, String.class);
LOGGER.info("responseEntity: {}", responseEntity);
assertThat(responseEntity.getStatusCode()).isEqualTo(HttpStatus.OK);
final List traces = queryClient.traces(new TracesQuery().start(minutesAgo)
@@ -156,7 +157,8 @@ public class SampleVerificationITCase {
.end(now));
LOGGER.info("topoData: {}", topoData);
- InputStream expectedInputStream = new ClassPathResource("expected-data/org.apache.skywalking.e2e.SampleVerificationITCase.topo.yml")
+ InputStream expectedInputStream = new ClassPathResource(
+ "expected-data/org.apache.skywalking.e2e.SampleVerificationITCase.topo.yml")
.getInputStream();
final TopoMatcher topoMatcher = new Yaml().loadAs(expectedInputStream, TopoMatcher.class);
@@ -167,18 +169,21 @@ public class SampleVerificationITCase {
private void verifyServiceInstanceTopo(LocalDateTime minutesAgo) throws Exception {
final LocalDateTime now = LocalDateTime.now(ZoneOffset.UTC);
- final ServiceInstanceTopoData topoData = queryClient.serviceInstanceTopo(new ServiceInstanceTopoQuery().stepByMinute()
- .start(minutesAgo
- .minusDays(1))
- .end(now)
- .clientServiceId("1")
- .serverServiceId("2"));
+ final ServiceInstanceTopoData topoData = queryClient.serviceInstanceTopo(
+ new ServiceInstanceTopoQuery().stepByMinute()
+ .start(minutesAgo
+ .minusDays(1))
+ .end(now)
+ .clientServiceId("1")
+ .serverServiceId("2"));
LOGGER.info("instanceTopoData: {}", topoData);
- InputStream expectedInputStream = new ClassPathResource("expected-data/org.apache.skywalking.e2e.SampleVerificationITCase.serviceInstanceTopo.yml")
+ InputStream expectedInputStream = new ClassPathResource(
+ "expected-data/org.apache.skywalking.e2e.SampleVerificationITCase.serviceInstanceTopo.yml")
.getInputStream();
- final ServiceInstanceTopoMatcher topoMatcher = new Yaml().loadAs(expectedInputStream, ServiceInstanceTopoMatcher.class);
+ final ServiceInstanceTopoMatcher topoMatcher = new Yaml().loadAs(
+ expectedInputStream, ServiceInstanceTopoMatcher.class);
topoMatcher.verify(topoData);
verifyServiceInstanceRelationMetrics(topoData.getCalls(), minutesAgo);
}
@@ -189,7 +194,8 @@ public class SampleVerificationITCase {
final List services = queryClient.services(new ServicesQuery().start(minutesAgo).end(now));
LOGGER.info("services: {}", services);
- InputStream expectedInputStream = new ClassPathResource("expected-data/org.apache.skywalking.e2e.SampleVerificationITCase.services.yml")
+ InputStream expectedInputStream = new ClassPathResource(
+ "expected-data/org.apache.skywalking.e2e.SampleVerificationITCase.services.yml")
.getInputStream();
final ServicesMatcher servicesMatcher = new Yaml().loadAs(expectedInputStream, ServicesMatcher.class);
@@ -211,13 +217,14 @@ public class SampleVerificationITCase {
}
private Instances verifyServiceInstances(LocalDateTime minutesAgo, LocalDateTime now,
- Service service) throws Exception {
+ Service service) throws Exception {
InputStream expectedInputStream;
Instances instances = queryClient.instances(new InstancesQuery().serviceId(service.getKey())
.start(minutesAgo)
.end(now));
LOGGER.info("instances: {}", instances);
- expectedInputStream = new ClassPathResource("expected-data/org.apache.skywalking.e2e.SampleVerificationITCase.instances.yml")
+ expectedInputStream = new ClassPathResource(
+ "expected-data/org.apache.skywalking.e2e.SampleVerificationITCase.instances.yml")
.getInputStream();
final InstancesMatcher instancesMatcher = new Yaml().loadAs(expectedInputStream, InstancesMatcher.class);
instancesMatcher.verify(instances);
@@ -225,10 +232,11 @@ public class SampleVerificationITCase {
}
private Endpoints verifyServiceEndpoints(LocalDateTime minutesAgo, LocalDateTime now,
- Service service) throws Exception {
+ Service service) throws Exception {
Endpoints instances = queryClient.endpoints(new EndpointQuery().serviceId(service.getKey()));
LOGGER.info("instances: {}", instances);
- InputStream expectedInputStream = new ClassPathResource("expected-data/org.apache.skywalking.e2e.SampleVerificationITCase.endpoints.yml")
+ InputStream expectedInputStream = new ClassPathResource(
+ "expected-data/org.apache.skywalking.e2e.SampleVerificationITCase.endpoints.yml")
.getInputStream();
final EndpointsMatcher endpointsMatcher = new Yaml().loadAs(expectedInputStream, EndpointsMatcher.class);
endpointsMatcher.verify(instances);
@@ -296,7 +304,8 @@ public class SampleVerificationITCase {
final List traces = queryClient.traces(new TracesQuery().start(minutesAgo).end(now).orderByDuration());
LOGGER.info("traces: {}", traces);
- InputStream expectedInputStream = new ClassPathResource("expected-data/org.apache.skywalking.e2e.SampleVerificationITCase.traces.yml")
+ InputStream expectedInputStream = new ClassPathResource(
+ "expected-data/org.apache.skywalking.e2e.SampleVerificationITCase.traces.yml")
.getInputStream();
final TracesMatcher tracesMatcher = new Yaml().loadAs(expectedInputStream, TracesMatcher.class);
@@ -304,16 +313,20 @@ public class SampleVerificationITCase {
}
private void verifyServiceInstanceRelationMetrics(List calls,
- final LocalDateTime minutesAgo) throws Exception {
- verifyRelationMetrics(calls, minutesAgo, ALL_SERVICE_INSTANCE_RELATION_CLIENT_METRICS, ALL_SERVICE_INSTANCE_RELATION_SERVER_METRICS);
+ final LocalDateTime minutesAgo) throws Exception {
+ verifyRelationMetrics(
+ calls, minutesAgo, ALL_SERVICE_INSTANCE_RELATION_CLIENT_METRICS,
+ ALL_SERVICE_INSTANCE_RELATION_SERVER_METRICS
+ );
}
private void verifyServiceRelationMetrics(List calls, final LocalDateTime minutesAgo) throws Exception {
- verifyRelationMetrics(calls, minutesAgo, ALL_SERVICE_RELATION_CLIENT_METRICS, ALL_SERVICE_RELATION_SERVER_METRICS);
+ verifyRelationMetrics(
+ calls, minutesAgo, ALL_SERVICE_RELATION_CLIENT_METRICS, ALL_SERVICE_RELATION_SERVER_METRICS);
}
private void verifyRelationMetrics(List calls, final LocalDateTime minutesAgo, String[] relationClientMetrics,
- String[] relationServerMetrics) throws Exception {
+ String[] relationServerMetrics) throws Exception {
for (Call call : calls) {
for (String detectPoint : call.getDetectPoints()) {
switch (detectPoint) {