diff --git a/Dockerfile b/Dockerfile index 7085d7a8b8..3dbd3bc02f 100644 --- a/Dockerfile +++ b/Dockerfile @@ -2,7 +2,10 @@ FROM --platform=$BUILDPLATFORM golang:1.24.0-bookworm@sha256:b970e6d47c09fdd341 RUN apt-get update && apt-get install -y curl clang gcc llvm make libbpf-dev -WORKDIR /app +WORKDIR /usr/src/go.opentelemetry.io/auto/ + +# Copy auto/sdk so `go mod` finds the replaced module. +COPY sdk/ /usr/src/go.opentelemetry.io/auto/sdk/ # pre-copy/cache go.mod for pre-downloading dependencies and only redownloading # them in subsequent builds if they change @@ -19,5 +22,5 @@ RUN --mount=type=cache,target=/root/.cache/go-build \ GOARCH=$TARGETARCH make build FROM gcr.io/distroless/base-debian12@sha256:74ddbf52d93fafbdd21b399271b0b4aac1babf8fa98cab59e5692e01169a1348 -COPY --from=builder /app/otel-go-instrumentation / +COPY --from=builder /usr/src/go.opentelemetry.io/auto/otel-go-instrumentation / CMD ["/otel-go-instrumentation"] diff --git a/Makefile b/Makefile index edb212385e..9eb1407a06 100644 --- a/Makefile +++ b/Makefile @@ -57,8 +57,11 @@ $(TOOLS)/offsetgen: PACKAGE=go.opentelemetry.io/auto/$(TOOLS_MOD_DIR)/inspect/cm SYNCLIBBPF = $(TOOLS)/synclibbpf $(TOOLS)/synclibbpf: PACKAGE=go.opentelemetry.io/auto/$(TOOLS_MOD_DIR)/synclibbpf +CROSSLINK = $(TOOLS)/crosslink +$(TOOLS)/crosslink: PACKAGE=go.opentelemetry.io/build-tools/crosslink + .PHONY: tools -tools: $(GOLICENSES) $(MULTIMOD) $(GOLANGCI_LINT) $(DBOTCONF) $(OFFSETGEN) $(SYNCLIBBPF) +tools: $(GOLICENSES) $(MULTIMOD) $(GOLANGCI_LINT) $(DBOTCONF) $(OFFSETGEN) $(SYNCLIBBPF) $(CROSSLINK) TEST_TARGETS := test-verbose test-ebpf test-race .PHONY: $(TEST_TARGETS) test @@ -89,20 +92,24 @@ generate/all: .PHONY: docker-generate docker-generate: docker-build-base - docker run --rm -v $(shell pwd):/app $(IMG_NAME_BASE) /bin/sh -c "cd ../app && make generate" + docker run --rm -v $(shell pwd):/app $(IMG_NAME_BASE) /bin/sh -c "cd /app && make generate" .PHONY: docker-test docker-test: docker-build-base - docker run --rm -v $(shell pwd):/app $(IMG_NAME_BASE) /bin/sh -c "cd ../app && make test" + docker run --rm -v $(shell pwd):/app $(IMG_NAME_BASE) /bin/sh -c "cd /app && make test" .PHONY: docker-precommit docker-precommit: docker-build-base - docker run --rm -v $(shell pwd):/app $(IMG_NAME_BASE) /bin/sh -c "cd ../app && make precommit" + docker run --rm -v $(shell pwd):/app $(IMG_NAME_BASE) /bin/sh -c "cd /app && make precommit" + +.PHONY: crosslink +crosslink: $(CROSSLINK) + @$(CROSSLINK) --root=$(REPODIR) --prune .PHONY: go-mod-tidy go-mod-tidy: $(ALL_GO_MOD_DIRS:%=go-mod-tidy/%) go-mod-tidy/%: DIR=$* -go-mod-tidy/%: +go-mod-tidy/%: crosslink @cd $(DIR) && $(GOCMD) mod tidy -compat=1.20 .PHONY: golangci-lint golangci-lint-fix diff --git a/examples/kafka-go/consumer/go.mod b/examples/kafka-go/consumer/go.mod index 7ec61ee748..122ba5a0b8 100644 --- a/examples/kafka-go/consumer/go.mod +++ b/examples/kafka-go/consumer/go.mod @@ -16,3 +16,5 @@ require ( go.opentelemetry.io/auto/sdk v1.1.0 // indirect go.opentelemetry.io/otel/metric v1.34.0 // indirect ) + +replace go.opentelemetry.io/auto/sdk => ../../../sdk diff --git a/examples/kafka-go/consumer/go.sum b/examples/kafka-go/consumer/go.sum index 9ee698d487..dd2ef4a879 100644 --- a/examples/kafka-go/consumer/go.sum +++ b/examples/kafka-go/consumer/go.sum @@ -31,8 +31,6 @@ github.com/xdg-go/scram v1.1.2/go.mod h1:RT/sEzTbU5y00aCK8UOx6R7YryM0iF1N2MOmC3k github.com/xdg-go/stringprep v1.0.4 h1:XLI/Ng3O1Atzq0oBs3TWm+5ZVgkq2aqdlvP9JtoZ6c8= github.com/xdg-go/stringprep v1.0.4/go.mod h1:mPGuuIYwz7CmR2bT9j4GbQqutWS1zV24gijq1dTyGkM= github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY= -go.opentelemetry.io/auto/sdk v1.1.0 h1:cH53jehLUN6UFLY71z+NDOiNJqDdPRaXzTel0sJySYA= -go.opentelemetry.io/auto/sdk v1.1.0/go.mod h1:3wSPjt5PWp2RhlCcmmOial7AvC4DQqZb7a7wCow3W8A= go.opentelemetry.io/otel v1.34.0 h1:zRLXxLCgL1WyKsPVrgbSdMN4c0FMkDAskSTQP+0hdUY= go.opentelemetry.io/otel v1.34.0/go.mod h1:OWFPOQ+h4G8xpyjgqo4SxJYdDQ/qmRH+wivy7zzx9oI= go.opentelemetry.io/otel/metric v1.34.0 h1:+eTR3U0MyfWjRDhmFMxe2SsW64QrZ84AOhvqS7Y+PoQ= diff --git a/examples/rolldice/frontend/go.mod b/examples/rolldice/frontend/go.mod index 67c931ca51..44462d9879 100644 --- a/examples/rolldice/frontend/go.mod +++ b/examples/rolldice/frontend/go.mod @@ -5,3 +5,5 @@ go 1.23.0 replace go.opentelemetry.io/auto/examples/rolldice/user => ../user/ require go.opentelemetry.io/auto/examples/rolldice/user v0.0.0-20250113220501-95ff7a07d6ba + +replace go.opentelemetry.io/auto/sdk => ../../../sdk diff --git a/examples/rolldice/user/go.mod b/examples/rolldice/user/go.mod index 35af5b80b3..07c25ecad3 100644 --- a/examples/rolldice/user/go.mod +++ b/examples/rolldice/user/go.mod @@ -14,3 +14,5 @@ require ( go.opentelemetry.io/otel/metric v1.34.0 // indirect go.opentelemetry.io/otel/trace v1.34.0 // indirect ) + +replace go.opentelemetry.io/auto/sdk => ../../../sdk diff --git a/examples/rolldice/user/go.sum b/examples/rolldice/user/go.sum index 8c7e37a4dc..85d4ed488a 100644 --- a/examples/rolldice/user/go.sum +++ b/examples/rolldice/user/go.sum @@ -13,8 +13,6 @@ github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZb github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA= github.com/stretchr/testify v1.10.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= -go.opentelemetry.io/auto/sdk v1.1.0 h1:cH53jehLUN6UFLY71z+NDOiNJqDdPRaXzTel0sJySYA= -go.opentelemetry.io/auto/sdk v1.1.0/go.mod h1:3wSPjt5PWp2RhlCcmmOial7AvC4DQqZb7a7wCow3W8A= go.opentelemetry.io/otel v1.34.0 h1:zRLXxLCgL1WyKsPVrgbSdMN4c0FMkDAskSTQP+0hdUY= go.opentelemetry.io/otel v1.34.0/go.mod h1:OWFPOQ+h4G8xpyjgqo4SxJYdDQ/qmRH+wivy7zzx9oI= go.opentelemetry.io/otel/metric v1.34.0 h1:+eTR3U0MyfWjRDhmFMxe2SsW64QrZ84AOhvqS7Y+PoQ= diff --git a/go.mod b/go.mod index 291b02aa0e..a35c239f24 100644 --- a/go.mod +++ b/go.mod @@ -79,3 +79,5 @@ require ( google.golang.org/genproto/googleapis/rpc v0.0.0-20250227231956-55c901821b1e // indirect google.golang.org/protobuf v1.36.5 // indirect ) + +replace go.opentelemetry.io/auto/sdk => ./sdk diff --git a/go.sum b/go.sum index 37d1b72189..6e33272d0d 100644 --- a/go.sum +++ b/go.sum @@ -68,8 +68,8 @@ github.com/prometheus/common v0.62.0 h1:xasJaQlnWAeyHdUBeGjXmutelfJHWMRr+Fg4QszZ github.com/prometheus/common v0.62.0/go.mod h1:vyBcEuLSvWos9B1+CyL7JZ2up+uFzXhkqml0W5zIY1I= github.com/prometheus/procfs v0.15.1 h1:YagwOFzUgYfKKHX6Dr+sHT7km/hxC76UB0learggepc= github.com/prometheus/procfs v0.15.1/go.mod h1:fB45yRUv8NstnjriLhBQLuOUt+WW4BsoGhij/e3PBqk= -github.com/rogpeppe/go-internal v1.13.1 h1:KvO1DLK/DRN07sQ1LQKScxyZJuNnedQ5/wKSR38lUII= -github.com/rogpeppe/go-internal v1.13.1/go.mod h1:uMEvuHeurkdAXX61udpOXGD/AzZDWNMNyH2VO9fmH0o= +github.com/rogpeppe/go-internal v1.14.1 h1:UQB4HGPB6osV0SQTLymcB4TgvyWu6ZyliaW0tI/otEQ= +github.com/rogpeppe/go-internal v1.14.1/go.mod h1:MaRKkUm5W0goXpeCfT7UZI6fk/L7L7so1lCWt35ZSgc= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= github.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA= @@ -78,8 +78,6 @@ github.com/xwb1989/sqlparser v0.0.0-20180606152119-120387863bf2 h1:zzrxE1FKn5ryB github.com/xwb1989/sqlparser v0.0.0-20180606152119-120387863bf2/go.mod h1:hzfGeIUDq/j97IG+FhNqkowIyEcD88LrW6fyU3K3WqY= github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= -go.opentelemetry.io/auto/sdk v1.1.0 h1:cH53jehLUN6UFLY71z+NDOiNJqDdPRaXzTel0sJySYA= -go.opentelemetry.io/auto/sdk v1.1.0/go.mod h1:3wSPjt5PWp2RhlCcmmOial7AvC4DQqZb7a7wCow3W8A= go.opentelemetry.io/collector/pdata v1.25.0 h1:AmgBklQfbfy0lT8qsoJtRuYMZ7ZV3VZvkvhjSDentrg= go.opentelemetry.io/collector/pdata v1.25.0/go.mod h1:Zs7D4RXOGS7E2faGc/jfWdbmhoiHBxA7QbpuJOioxq8= go.opentelemetry.io/contrib/bridges/prometheus v0.59.0 h1:HY2hJ7yn3KuEBBBsKxvF3ViSmzLwsgeNvD+0utRMgzc= diff --git a/internal/test/e2e/grpc/Dockerfile b/internal/test/e2e/grpc/Dockerfile index 069cdd70f4..e01d36c4d0 100644 --- a/internal/test/e2e/grpc/Dockerfile +++ b/internal/test/e2e/grpc/Dockerfile @@ -3,10 +3,14 @@ FROM golang:1.24.0@sha256:3f7444391c51a11a039bf0359ee81cc64e663c17d787ad0e637a4d # pre-copy/cache go.mod for pre-downloading dependencies and only redownloading # them in subsequent builds if they change WORKDIR /usr/src/go.opentelemetry.io/auto/internal/test/e2e/grpc -COPY go.mod go.sum ./ + +# Copy auto/sdk so `go mod` finds the replaced module. +COPY sdk/ /usr/src/go.opentelemetry.io/auto/sdk/ + +COPY internal/test/e2e/grpc/go.mod internal/test/e2e/grpc/go.sum ./ RUN --mount=type=cache,target=/go/pkg go mod download && go mod verify -COPY *.go . +COPY internal/test/e2e/grpc/*.go . RUN --mount=type=cache,target=/root/.cache/go-build \ --mount=type=cache,target=/go/pkg \ go build -v -o /usr/local/bin/app . diff --git a/internal/test/e2e/grpc/build.sh b/internal/test/e2e/grpc/build.sh new file mode 100755 index 0000000000..c9cf032438 --- /dev/null +++ b/internal/test/e2e/grpc/build.sh @@ -0,0 +1,114 @@ +#!/usr/bin/env bash + +# Copyright The OpenTelemetry Authors +# SPDX-License-Identifier: Apache-2.0 + +usage() { + local progname + progname="$( basename "$0" )" + + cat <<-EOF + Usage: $progname [OPTIONS] + + Builds the SDK end-to-end testing docker image. + + OPTIONS: + -t --tag Docker tag to use ["sample-app"] + -h --help Show this help message +EOF +} + +parse_opts() { + # Make sure getopts starts at the beginning + OPTIND=1 + + local deliminator option + local arg= + + # Translate --gnu-long-options to -g (short options) + for arg + do + deliminator="" + case "$arg" in + --tag) + args="${args}-d " + ;; + --help) + args="${args}-h " + ;; + *) + [[ "${arg:0:1}" == "-" ]] || deliminator='"' + args="${args}${deliminator}${arg}${deliminator} " + ;; + esac + done + + # Reset the positional parameters to start parsing short options + eval set -- "$args" + + while getopts ":t:h" option + do + case "$option" in + t) + readonly TAG="$OPTARG" + ;; + h) + usage + exit 0 + ;; + *) + echo "Invalid option: -${option}" >&2 + usage + exit 1 + ;; + esac + done + + # Default values + [ -z "${TAG}" ] \ + && readonly TAG="sample-app" + + return 0 +} + +build() { + local root_dir="$1" + local local_dir="$2" + local dockerfile="${local_dir}/Dockerfile" + local tag_arg + + if [ ! -f "$dockerfile" ]; then + echo "Dockerfile does not exist: $dockerfile" + return 1 + fi + + if [ ! -d "$root_dir" ]; then + echo "Project root directory does not exist: $root_dir" + return 1 + fi + + if [ -n "$TAG" ]; then + tag_arg=("-t" "$TAG") + fi + + (cd "$root_dir" && docker build "${tag_arg[@]}" -f "$dockerfile" .) + return 0 +} + +main() { + local root_dir script_dir + + # Check dependencies + hash git 2>/dev/null\ + || { echo >&2 "Required git client not found"; exit 1; } + hash docker 2>/dev/null\ + || { echo >&2 "Required docker client not found"; exit 1; } + + parse_opts "$@" + + root_dir=$( git rev-parse --show-toplevel ) + script_dir=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) + build "$root_dir" "$script_dir" +} + +main "$@" diff --git a/internal/test/e2e/grpc/go.mod b/internal/test/e2e/grpc/go.mod index d1d33f9213..577c5763bb 100644 --- a/internal/test/e2e/grpc/go.mod +++ b/internal/test/e2e/grpc/go.mod @@ -20,3 +20,5 @@ require ( google.golang.org/genproto/googleapis/rpc v0.0.0-20250227231956-55c901821b1e // indirect google.golang.org/protobuf v1.36.5 // indirect ) + +replace go.opentelemetry.io/auto/sdk => ../../../../sdk diff --git a/internal/test/e2e/grpc/go.sum b/internal/test/e2e/grpc/go.sum index 46de6c69f3..b95b5fc7a5 100644 --- a/internal/test/e2e/grpc/go.sum +++ b/internal/test/e2e/grpc/go.sum @@ -15,8 +15,6 @@ github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZb github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA= github.com/stretchr/testify v1.10.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= -go.opentelemetry.io/auto/sdk v1.1.0 h1:cH53jehLUN6UFLY71z+NDOiNJqDdPRaXzTel0sJySYA= -go.opentelemetry.io/auto/sdk v1.1.0/go.mod h1:3wSPjt5PWp2RhlCcmmOial7AvC4DQqZb7a7wCow3W8A= go.opentelemetry.io/otel v1.34.0 h1:zRLXxLCgL1WyKsPVrgbSdMN4c0FMkDAskSTQP+0hdUY= go.opentelemetry.io/otel v1.34.0/go.mod h1:OWFPOQ+h4G8xpyjgqo4SxJYdDQ/qmRH+wivy7zzx9oI= go.opentelemetry.io/otel/metric v1.34.0 h1:+eTR3U0MyfWjRDhmFMxe2SsW64QrZ84AOhvqS7Y+PoQ= diff --git a/internal/test/e2e/otelglobal/Dockerfile b/internal/test/e2e/otelglobal/Dockerfile index cb515d411e..df471c3661 100644 --- a/internal/test/e2e/otelglobal/Dockerfile +++ b/internal/test/e2e/otelglobal/Dockerfile @@ -3,10 +3,14 @@ FROM golang:1.24.0@sha256:3f7444391c51a11a039bf0359ee81cc64e663c17d787ad0e637a4d # pre-copy/cache go.mod for pre-downloading dependencies and only redownloading # them in subsequent builds if they change WORKDIR /usr/src/go.opentelemetry.io/auto/internal/test/e2e/otelglobal -COPY go.mod go.sum ./ + +# Copy auto/sdk so `go mod` finds the replaced module. +COPY sdk/ /usr/src/go.opentelemetry.io/auto/sdk/ + +COPY internal/test/e2e/otelglobal/go.mod internal/test/e2e/otelglobal/go.sum ./ RUN --mount=type=cache,target=/go/pkg go mod download && go mod verify -COPY *.go . +COPY internal/test/e2e/otelglobal/*.go . RUN --mount=type=cache,target=/root/.cache/go-build \ --mount=type=cache,target=/go/pkg \ go build -v -o /usr/local/bin/app . diff --git a/internal/test/e2e/otelglobal/build.sh b/internal/test/e2e/otelglobal/build.sh new file mode 100755 index 0000000000..c9cf032438 --- /dev/null +++ b/internal/test/e2e/otelglobal/build.sh @@ -0,0 +1,114 @@ +#!/usr/bin/env bash + +# Copyright The OpenTelemetry Authors +# SPDX-License-Identifier: Apache-2.0 + +usage() { + local progname + progname="$( basename "$0" )" + + cat <<-EOF + Usage: $progname [OPTIONS] + + Builds the SDK end-to-end testing docker image. + + OPTIONS: + -t --tag Docker tag to use ["sample-app"] + -h --help Show this help message +EOF +} + +parse_opts() { + # Make sure getopts starts at the beginning + OPTIND=1 + + local deliminator option + local arg= + + # Translate --gnu-long-options to -g (short options) + for arg + do + deliminator="" + case "$arg" in + --tag) + args="${args}-d " + ;; + --help) + args="${args}-h " + ;; + *) + [[ "${arg:0:1}" == "-" ]] || deliminator='"' + args="${args}${deliminator}${arg}${deliminator} " + ;; + esac + done + + # Reset the positional parameters to start parsing short options + eval set -- "$args" + + while getopts ":t:h" option + do + case "$option" in + t) + readonly TAG="$OPTARG" + ;; + h) + usage + exit 0 + ;; + *) + echo "Invalid option: -${option}" >&2 + usage + exit 1 + ;; + esac + done + + # Default values + [ -z "${TAG}" ] \ + && readonly TAG="sample-app" + + return 0 +} + +build() { + local root_dir="$1" + local local_dir="$2" + local dockerfile="${local_dir}/Dockerfile" + local tag_arg + + if [ ! -f "$dockerfile" ]; then + echo "Dockerfile does not exist: $dockerfile" + return 1 + fi + + if [ ! -d "$root_dir" ]; then + echo "Project root directory does not exist: $root_dir" + return 1 + fi + + if [ -n "$TAG" ]; then + tag_arg=("-t" "$TAG") + fi + + (cd "$root_dir" && docker build "${tag_arg[@]}" -f "$dockerfile" .) + return 0 +} + +main() { + local root_dir script_dir + + # Check dependencies + hash git 2>/dev/null\ + || { echo >&2 "Required git client not found"; exit 1; } + hash docker 2>/dev/null\ + || { echo >&2 "Required docker client not found"; exit 1; } + + parse_opts "$@" + + root_dir=$( git rev-parse --show-toplevel ) + script_dir=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) + build "$root_dir" "$script_dir" +} + +main "$@" diff --git a/internal/test/e2e/otelglobal/go.mod b/internal/test/e2e/otelglobal/go.mod index e904db57a0..d6f264c3aa 100644 --- a/internal/test/e2e/otelglobal/go.mod +++ b/internal/test/e2e/otelglobal/go.mod @@ -13,3 +13,5 @@ require ( go.opentelemetry.io/auto/sdk v1.1.0 // indirect go.opentelemetry.io/otel/metric v1.34.0 // indirect ) + +replace go.opentelemetry.io/auto/sdk => ../../../../sdk diff --git a/internal/test/e2e/otelglobal/go.sum b/internal/test/e2e/otelglobal/go.sum index 93a3c61aee..c09ffb37bb 100644 --- a/internal/test/e2e/otelglobal/go.sum +++ b/internal/test/e2e/otelglobal/go.sum @@ -11,8 +11,6 @@ github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZb github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA= github.com/stretchr/testify v1.10.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= -go.opentelemetry.io/auto/sdk v1.1.0 h1:cH53jehLUN6UFLY71z+NDOiNJqDdPRaXzTel0sJySYA= -go.opentelemetry.io/auto/sdk v1.1.0/go.mod h1:3wSPjt5PWp2RhlCcmmOial7AvC4DQqZb7a7wCow3W8A= go.opentelemetry.io/otel v1.34.0 h1:zRLXxLCgL1WyKsPVrgbSdMN4c0FMkDAskSTQP+0hdUY= go.opentelemetry.io/otel v1.34.0/go.mod h1:OWFPOQ+h4G8xpyjgqo4SxJYdDQ/qmRH+wivy7zzx9oI= go.opentelemetry.io/otel/metric v1.34.0 h1:+eTR3U0MyfWjRDhmFMxe2SsW64QrZ84AOhvqS7Y+PoQ= diff --git a/internal/tools/go.mod b/internal/tools/go.mod index 3641aac972..bd8237cefa 100644 --- a/internal/tools/go.mod +++ b/internal/tools/go.mod @@ -8,6 +8,7 @@ require ( github.com/golangci/golangci-lint v1.64.5 github.com/google/go-licenses/v2 v2.0.0-alpha.1 go.opentelemetry.io/auto v0.21.0 + go.opentelemetry.io/build-tools/crosslink v0.19.0 go.opentelemetry.io/build-tools/dbotconf v0.19.0 go.opentelemetry.io/build-tools/multimod v0.19.0 golang.org/x/sync v0.11.0 @@ -249,3 +250,5 @@ require ( ) replace go.opentelemetry.io/auto => ../../ + +replace go.opentelemetry.io/auto/sdk => ../../sdk diff --git a/internal/tools/go.sum b/internal/tools/go.sum index 3a0dc85ae1..1a20d18ead 100644 --- a/internal/tools/go.sum +++ b/internal/tools/go.sum @@ -556,10 +556,10 @@ go-simpler.org/sloglint v0.9.0 h1:/40NQtjRx9txvsB/RN022KsUJU+zaaSb/9q9BSefSrE= go-simpler.org/sloglint v0.9.0/go.mod h1:G/OrAF6uxj48sHahCzrbarVMptL2kjWTaUeC8+fOGww= go.opencensus.io v0.24.0 h1:y73uSU6J157QMP2kn2r30vwW1A2W2WFwSCGnAVxeaD0= go.opencensus.io v0.24.0/go.mod h1:vNK8G9p7aAivkbmorf4v+7Hgx+Zs0yY+0fOtgBfjQKo= -go.opentelemetry.io/auto/sdk v1.1.0 h1:cH53jehLUN6UFLY71z+NDOiNJqDdPRaXzTel0sJySYA= -go.opentelemetry.io/auto/sdk v1.1.0/go.mod h1:3wSPjt5PWp2RhlCcmmOial7AvC4DQqZb7a7wCow3W8A= go.opentelemetry.io/build-tools v0.19.0 h1:8u+3+jQFNFkKqruvMJtf5PQLx2B+iqBk9BAvzo+x7gc= go.opentelemetry.io/build-tools v0.19.0/go.mod h1:fH3Wo56cH6GYjxZ1ajLMsyalBiFxJsYr5YBaSRO2TAI= +go.opentelemetry.io/build-tools/crosslink v0.19.0 h1:mfYtKmzn4XstxsJWVRkYJ6M7DGIVIgtsj0LsmzyaGEM= +go.opentelemetry.io/build-tools/crosslink v0.19.0/go.mod h1:m4waJzmx/wyEm/1h1eNmZ3slghTuNKZYTZFO8OJ7si8= go.opentelemetry.io/build-tools/dbotconf v0.19.0 h1:DYOK2L0U7GhPs7ZAV/2MJLcmQlNjZBKQRLoBweT1ZLM= go.opentelemetry.io/build-tools/dbotconf v0.19.0/go.mod h1:k7CMumGQalWs645OzjLga5QeqZD4JAs3rdh44bbu9N8= go.opentelemetry.io/build-tools/multimod v0.19.0 h1:P2kGUFPWIlJMZkJ6aQm1yO36Cl0SCpxX4RCjcvCUtI4= diff --git a/internal/tools/tools.go b/internal/tools/tools.go index 11a0c2a3b0..0f35a6f653 100644 --- a/internal/tools/tools.go +++ b/internal/tools/tools.go @@ -9,6 +9,7 @@ package tools // import "go.opentelemetry.io/auto/internal/tools" import ( _ "github.com/golangci/golangci-lint/cmd/golangci-lint" _ "github.com/google/go-licenses/v2" + _ "go.opentelemetry.io/build-tools/crosslink" _ "go.opentelemetry.io/build-tools/dbotconf" _ "go.opentelemetry.io/build-tools/multimod" )