diff --git a/.gitignore b/.gitignore index 9cda4995743ac..c4da13b5c79b7 100644 --- a/.gitignore +++ b/.gitignore @@ -128,11 +128,7 @@ rust/target rust/.idea # Bazel stuff -bazel-bin -bazel-genfiles -bazel-out -bazel-selenium -bazel-testlogs +/bazel-* MODULE.bazel.lock /.vscode/ diff --git a/dotnet/private/docfx.bzl b/dotnet/private/docfx.bzl index cfeb98971f250..535699a0d2d84 100644 --- a/dotnet/private/docfx.bzl +++ b/dotnet/private/docfx.bzl @@ -35,14 +35,18 @@ def _docfx_impl(ctx): _UNIX_TEMPLATE = """#!/usr/bin/env bash set -euo pipefail cd "$BUILD_WORKSPACE_DIRECTORY" -exec "$BUILD_WORKSPACE_DIRECTORY/bazel-selenium/{dotnet}" exec \ - "$BUILD_WORKSPACE_DIRECTORY/bazel-selenium/{docfx}" {config} "$@" +EXEC_ROOT=$(bazel info execution_root) +exec "$EXEC_ROOT/{dotnet}" exec \ + "$EXEC_ROOT/{docfx}" {config} "$@" """ _WINDOWS_TEMPLATE = """@echo off +setlocal cd /d "%BUILD_WORKSPACE_DIRECTORY%" -"%BUILD_WORKSPACE_DIRECTORY%\\bazel-selenium\\{dotnet}" exec ^ - "%BUILD_WORKSPACE_DIRECTORY%\\bazel-selenium\\{docfx}" {config} %* +for /f "tokens=*" %%i in ('bazel info execution_root') do set "EXEC_ROOT=%%i" +"%EXEC_ROOT%\\{dotnet}" exec ^ + "%EXEC_ROOT%\\{docfx}" {config} %* +endlocal """ docfx = rule( diff --git a/dotnet/update-deps.sh b/dotnet/update-deps.sh index 646ee5671321c..b7fa1f7fd74f2 100755 --- a/dotnet/update-deps.sh +++ b/dotnet/update-deps.sh @@ -3,12 +3,16 @@ SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) REPO_ROOT="$SCRIPT_DIR/.." -if [[ -d "$REPO_ROOT/bazel-selenium/external" ]]; then - DOTNET_DIR=$(find "$REPO_ROOT/bazel-selenium/external" -maxdepth 1 -name "rules_dotnet++dotnet+dotnet_*" -type d | head -1) +OUTPUT_BASE=$(cd "$REPO_ROOT" && bazel info output_base 2>/dev/null) +if [[ -n "$OUTPUT_BASE" && -d "$OUTPUT_BASE/external" ]]; then + EXTERNAL_DIR="$OUTPUT_BASE/external" + DOTNET_DIR=$(find "$EXTERNAL_DIR" -maxdepth 1 -name "rules_dotnet++dotnet+dotnet_*" -type d 2>/dev/null | head -1) if [[ -n "$DOTNET_DIR" && -x "$DOTNET_DIR/dotnet" ]]; then DOTNET="$DOTNET_DIR/dotnet" echo "Using bazel-managed dotnet: $DOTNET" fi +else + echo "Warning: bazel info output_base failed; falling back to system dotnet" >&2 fi DOTNET="${DOTNET:-dotnet}"