This is an automated email from the ASF dual-hosted git repository.
liuhan pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/skywalking-rover.git
The following commit(s) were added to refs/heads/main by this push:
new fed62bf chore(deps): bump up go (#202)
fed62bf is described below
commit fed62bfed6739af7d24eafc9ea2c26b4bb4352c8
Author: kezhenxu94 <[email protected]>
AuthorDate: Tue Nov 11 12:55:02 2025 +0800
chore(deps): bump up go (#202)
---
.github/workflows/compatibility.yaml | 2 +-
.github/workflows/rover.yaml | 31 +++++++++++-----------------
bpf/accesslog/accesslog.c | 7 ++-----
bpf/include/api.h | 40 ++++++++++++++++++++++++++++++++++++
bpf/profiling/continuous/network.c | 4 ----
bpf/profiling/network/netmonitor.c | 6 ++----
docker/Dockerfile.base | 6 +++---
go.mod | 4 +---
8 files changed, 61 insertions(+), 39 deletions(-)
diff --git a/.github/workflows/compatibility.yaml
b/.github/workflows/compatibility.yaml
index 4b50f9a..b2f8b8b 100644
--- a/.github/workflows/compatibility.yaml
+++ b/.github/workflows/compatibility.yaml
@@ -45,7 +45,7 @@ jobs:
- uses: actions/checkout@v3
with:
submodules: true
- - name: Set up Go 1.24
+ - name: Set up Go
uses: actions/setup-go@v2
with:
go-version: "1.24"
diff --git a/.github/workflows/rover.yaml b/.github/workflows/rover.yaml
index 986bec6..ba1467b 100644
--- a/.github/workflows/rover.yaml
+++ b/.github/workflows/rover.yaml
@@ -15,17 +15,15 @@
# limitations under the License.
name: CI
-
on:
pull_request:
-
jobs:
build:
name: Build and Test
runs-on: ubuntu-latest
timeout-minutes: 60
steps:
- - name: Set up Go 1.24
+ - name: Set up Go
uses: actions/setup-go@v2
with:
go-version: "1.24"
@@ -47,7 +45,6 @@ jobs:
run: make linux
- name: Check CI Consistency
run: make check
-
docker:
name: Docker images
runs-on: ubuntu-latest
@@ -65,10 +62,10 @@ jobs:
with:
name: docker-images-skywalking-rover
path: docker-images-skywalking-rover.tar
-
e2e-test:
name: E2E test
- needs: [ docker ]
+ needs:
+ - docker
runs-on: ubuntu-22.04
timeout-minutes: 60
strategy:
@@ -99,7 +96,6 @@ jobs:
docker:
file: Dockerfile.sqrt
name: test/oncpu-rust:test
-
- name: Golang Off CPU Profiling
base: test/e2e/cases/profiling/task/offcpu/golang
config: e2e.yaml
@@ -124,7 +120,6 @@ jobs:
docker:
file: Dockerfile.file
name: test/offcpu-rust:test
-
- name: Istio Process Finder 1.8.2
base: test/e2e/cases/process/istio
config: e2e.yaml
@@ -149,7 +144,6 @@ jobs:
base: test/e2e/cases/process/istio
config: e2e.yaml
env: ISTIO_VERSION=1.13.1
-
- name: Access Log
base: test/e2e/cases/access_log
config: e2e.yaml
@@ -178,11 +172,11 @@ jobs:
name: Upload Logs
with:
name: logs
- path: "${{ env.SW_INFRA_E2E_LOG_DIR }}"
-
+ path: ${{ env.SW_INFRA_E2E_LOG_DIR }}
network-profiling-https-e2e-test-prepare:
name: Prepare Network Profiling HTTPS E2E test
- needs: [ docker ]
+ needs:
+ - docker
runs-on: ubuntu-22.04
timeout-minutes: 60
steps:
@@ -208,10 +202,10 @@ jobs:
with:
name: docker-images-test-nginx
path: docker-images-nginx.tar
-
network-profiling-https-e2e-test:
name: Network Profiling HTTPS E2E test
- needs: [ network-profiling-https-e2e-test-prepare ]
+ needs:
+ - network-profiling-https-e2e-test-prepare
runs-on: ubuntu-22.04
timeout-minutes: 60
strategy:
@@ -281,11 +275,11 @@ jobs:
name: Upload Logs
with:
name: logs
- path: "${{ env.SW_INFRA_E2E_LOG_DIR }}"
-
+ path: ${{ env.SW_INFRA_E2E_LOG_DIR }}
continuous-profiling-e2e-tests:
name: Continuous Profiling E2E tests
- needs: [ docker ]
+ needs:
+ - docker
runs-on: ubuntu-22.04
timeout-minutes: 60
strategy:
@@ -343,8 +337,7 @@ jobs:
name: Upload Logs
with:
name: logs ${{ matrix.test.name }}
- path: "${{ env.SW_INFRA_E2E_LOG_DIR }}"
-
+ path: ${{ env.SW_INFRA_E2E_LOG_DIR }}
required:
if: always()
name: Required
diff --git a/bpf/accesslog/accesslog.c b/bpf/accesslog/accesslog.c
index a9e1088..bc8f7da 100644
--- a/bpf/accesslog/accesslog.c
+++ b/bpf/accesslog/accesslog.c
@@ -20,16 +20,13 @@
#include "syscall_reading.h"
#include "protocol_analyzer.h"
-#include <stddef.h>
-#include <stdlib.h>
-#include <string.h>
#include <linux/sched.h>
#include <linux/bpf.h>
#include <linux/ptrace.h>
#include <linux/socket.h>
+#include <linux/in.h>
+#include <linux/in6.h>
#include <asm/errno.h>
-#include <arpa/inet.h>
-#include <bpf/bpf_endian.h>
#include <bpf/bpf_helpers.h>
#include <bpf/bpf_tracing.h>
#include <bpf/bpf_core_read.h>
diff --git a/bpf/include/api.h b/bpf/include/api.h
index f27dd1c..33de9f3 100644
--- a/bpf/include/api.h
+++ b/bpf/include/api.h
@@ -20,6 +20,7 @@
// include linux relate bpf
#include <stddef.h>
+#include <linux/types.h>
#include <linux/sched.h>
#include <linux/bpf.h>
#include <linux/ptrace.h>
@@ -27,6 +28,45 @@
#include <bpf/bpf_tracing.h>
#include <bpf/bpf_core_read.h>
+// Define types commonly needed but not in BPF headers
+typedef __s64 ssize_t;
+typedef __s8 int8_t;
+typedef __s16 int16_t;
+typedef __s32 int32_t;
+typedef __s64 int64_t;
+typedef __u8 uint8_t;
+typedef __u16 uint16_t;
+typedef __u32 uint32_t;
+typedef __u64 uint64_t;
+// BSD-style type aliases
+typedef __u8 u_int8_t;
+typedef __u16 u_int16_t;
+typedef __u32 u_int32_t;
+typedef __u64 u_int64_t;
+
+struct iovec {
+ void *iov_base;
+ __kernel_size_t iov_len;
+};
+
+// Socket address family constants (from linux/socket.h)
+#ifndef AF_UNSPEC
+#define AF_UNSPEC 0
+#endif
+#ifndef AF_INET
+#define AF_INET 2
+#endif
+#ifndef AF_INET6
+#define AF_INET6 10
+#endif
+
+// Socket address structures (simplified for BPF)
+typedef unsigned short sa_family_t;
+struct sockaddr {
+ sa_family_t sa_family;
+ char sa_data[14];
+};
+
#define _KERNEL(P)
\
({ \
typeof(P) val; \
diff --git a/bpf/profiling/continuous/network.c
b/bpf/profiling/continuous/network.c
index a68dec2..dd64132 100644
--- a/bpf/profiling/continuous/network.c
+++ b/bpf/profiling/continuous/network.c
@@ -15,9 +15,6 @@
// specific language governing permissions and limitations
// under the License.
-#include <stddef.h>
-#include <stdlib.h>
-#include <string.h>
#include <linux/sched.h>
#include <linux/bpf.h>
#include <linux/ptrace.h>
@@ -29,7 +26,6 @@
#include <bpf/bpf_helpers.h>
#include <bpf/bpf_tracing.h>
#include <bpf/bpf_core_read.h>
-#include <sys/uio.h>
#include "network.h"
#include "protocol_analyzer.h"
#include "socket.h"
diff --git a/bpf/profiling/network/netmonitor.c
b/bpf/profiling/network/netmonitor.c
index 0567224..347f49b 100644
--- a/bpf/profiling/network/netmonitor.c
+++ b/bpf/profiling/network/netmonitor.c
@@ -18,15 +18,13 @@
// +build ignore
-#include <stddef.h>
-#include <stdlib.h>
-#include <string.h>
#include <linux/sched.h>
#include <linux/bpf.h>
#include <linux/ptrace.h>
#include <linux/socket.h>
+#include <linux/in.h>
+#include <linux/in6.h>
#include <asm/errno.h>
-#include <arpa/inet.h>
#include <bpf/bpf_endian.h>
#include <bpf/bpf_helpers.h>
#include <bpf/bpf_tracing.h>
diff --git a/docker/Dockerfile.base b/docker/Dockerfile.base
index da8ef9a..ef7d7e8 100644
--- a/docker/Dockerfile.base
+++ b/docker/Dockerfile.base
@@ -14,12 +14,12 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-FROM
golang:1.24@sha256:ef5b4be1f94b36c90385abd9b6b4f201723ae28e71acacb76d00687333c17282
+FROM
golang:1.24.8@sha256:273d4e65baa782dbe293c9192d600b72b17d415c1429e16bed99efcc5e61efb8
RUN apt update -y && apt upgrade -y && \
git clone --depth 1 --branch v1.1.0 https://github.com/libbpf/libbpf.git
&& \
mkdir -p /usr/include/bpf && cp libbpf/src/*.h /usr/include/bpf && \
- apt install -y lsb-release wget software-properties-common "$([ $(uname
-m) = "x86_64" ] && echo "libc6-dev-i386" || echo "libc6-dev-armhf-cross")" && \
+ apt install -y lsb-release wget "$([ $(uname -m) = "x86_64" ] && echo
"libc6-dev-i386" || echo "libc6-dev-armhf-cross")" && \
([ $(uname -m) = "x86_64" ] && cp -rf /usr/include/asm-generic/*
/usr/include/asm || cp -rf /usr/include/$(uname -m)*/* /usr/include/) && \
apt-get -y install build-essential libelf-dev libz-dev libcap-dev
binutils-dev pkg-config libelf1 && \
git clone --depth 1 --recurse-submodules --branch v7.2.0
https://github.com/libbpf/bpftool.git && \
@@ -29,4 +29,4 @@ RUN apt update -y && apt upgrade -y && \
./llvm.sh 18 && \
apt install -y llvm-18
-ENV PATH="${PATH}:/usr/lib/llvm-18/bin"
\ No newline at end of file
+ENV PATH="${PATH}:/usr/lib/llvm-18/bin"
diff --git a/go.mod b/go.mod
index ed1fe5b..f145619 100644
--- a/go.mod
+++ b/go.mod
@@ -1,8 +1,6 @@
module github.com/apache/skywalking-rover
-go 1.24
-
-toolchain go1.24.2
+go 1.24.8
require (
github.com/agiledragon/gomonkey/v2 v2.9.0