Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

bazel: update to Bazel 7 #123237

Open
rickystewart opened this issue Apr 29, 2024 · 1 comment · May be fixed by #123245
Open

bazel: update to Bazel 7 #123237

rickystewart opened this issue Apr 29, 2024 · 1 comment · May be fixed by #123245
Labels
A-build-system C-enhancement Solution expected to add code/behavior + preserve backward-compat (pg compat issues are exception) T-dev-inf

Comments

@rickystewart
Copy link
Collaborator

rickystewart commented Apr 29, 2024

Epic: CRDB-17171

Jira issue: CRDB-38254

@rickystewart rickystewart added C-enhancement Solution expected to add code/behavior + preserve backward-compat (pg compat issues are exception) A-build-system T-dev-inf labels Apr 29, 2024
@rickystewart
Copy link
Collaborator Author

The following patch is mostly there:

commit 1a23540304f23f4a348c5de12dbe07781619eab2
Author: Ricky Stewart <ricky@cockroachlabs.com>
Date:   Mon Apr 29 13:35:46 2024 -0500

    bazel: update to bazel 7.1.1
    
    Epic: CRDB-17171
    Release note: None

diff --git a/.bazelrc b/.bazelrc
index 6cfda5657e4..206f86347da 100644
--- a/.bazelrc
+++ b/.bazelrc
@@ -46,6 +46,7 @@ build --ui_event_filters=-DEBUG
 query --ui_event_filters=-DEBUG
 clean --ui_event_filters=-WARNING
 info --ui_event_filters=-WARNING
+common --enable_bzlmod=false
 
 build:race --@io_bazel_rules_go//go/config:race "--test_env=GORACE=halt_on_error=1 log_path=stdout"
 test:test --test_env=TZ=
@@ -130,7 +131,6 @@ build:engflowbase --experimental_remote_cache_compression=true
 build:engflowbase --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1
 build:engflowbase --extra_execution_platforms=//build/toolchains:cross_linux
 build:engflowbase --remote_upload_local_results=false
-build:engflowbase --remote_download_toplevel
 build:engflowbase --config=cibase
 test:engflowbase --test_env=REMOTE_EXEC=1
 test:engflowbase --test_env=GOTRACEBACK=all
diff --git a/.bazelversion b/.bazelversion
index 1f625f42aa5..ec6366011b3 100644
--- a/.bazelversion
+++ b/.bazelversion
@@ -1 +1 @@
-cockroachdb/6.2.1
+cockroachdb/7.1.1
diff --git a/WORKSPACE b/WORKSPACE
index db2f07c6324..dc01ca4e15c 100644
--- a/WORKSPACE
+++ b/WORKSPACE
@@ -20,9 +20,9 @@ http_archive(
 # Like the above, but for JS.
 http_archive(
     name = "aspect_rules_js",
-    sha256 = "08061ba5e5e7f4b1074538323576dac819f9337a0c7d75aee43afc8ae7cb6e18",
-    strip_prefix = "rules_js-1.26.1",
-    url = "https://storage.googleapis.com/public-bazel-artifacts/js/rules_js-v1.26.1.tar.gz",
+    sha256 = "bc9b4a01ef8eb050d8a7a050eedde8ffb1e45a56b0e4094e26f06c17d5fcf1d5",
+    strip_prefix = "rules_js-1.41.2",
+    url = "https://storage.googleapis.com/public-bazel-artifacts/js/rules_js-v1.41.2.tar.gz",
 )
 
 http_archive(
@@ -99,10 +99,9 @@ http_archive(
 
 http_archive(
     name = "bazel_skylib",
-    sha256 = "4ede85dfaa97c5662c3fb2042a7ac322d5f029fdc7a6b9daa9423b746e8e8fc0",
-    strip_prefix = "bazelbuild-bazel-skylib-6a17363",
+    sha256 = "b8a1527901774180afc798aeb28c4634bdccf19c4d98e7bdd1ce79d1fe9aaad7",
     urls = [
-        "https://storage.googleapis.com/public-bazel-artifacts/bazel/bazelbuild-bazel-skylib-1.3.0-0-g6a17363.tar.gz",
+        "https://storage.googleapis.com/public-bazel-artifacts/bazel/bazel-skylib-1.4.1.tar.gz",
     ],
 )
 
@@ -206,18 +205,25 @@ go_register_toolchains(nogo = "@com_github_cockroachdb_cockroach//:crdb_nogo")
 
 # bazel_skylib handled above.
 
+http_archive(
+    name = "bazel_features",
+    sha256 = "f3082bfcdca73dc77dcd68faace806135a2e08c230b02b1d9fbdbd7db9d9c450",
+    strip_prefix = "bazel_features-0.1.0",
+    urls = ["https://storage.googleapis.com/public-bazel-artifacts/bazel/bazel_features-v0.1.0.tar.gz"],
+)
+
 # The rules_nodejs "core" module.
 http_archive(
     name = "rules_nodejs",
-    sha256 = "764a3b3757bb8c3c6a02ba3344731a3d71e558220adcb0cf7e43c9bba2c37ba8",
-    urls = ["https://storage.googleapis.com/public-bazel-artifacts/js/rules_nodejs-core-5.8.2.tar.gz"],
+    sha256 = "8fc8e300cb67b89ceebd5b8ba6896ff273c84f6099fc88d23f24e7102319d8fd",
+    urls = ["https://storage.googleapis.com/public-bazel-artifacts/js/rules_nodejs-core-5.8.4.tar.gz"],
 )
 
 http_archive(
     name = "aspect_bazel_lib",
-    sha256 = "0da75299c5a52737b2ac39458398b3f256e41a1a6748e5457ceb3a6225269485",
-    strip_prefix = "bazel-lib-1.31.2",
-    url = "https://storage.googleapis.com/public-bazel-artifacts/bazel/bazel-lib-v1.31.2.tar.gz",
+    sha256 = "d0529773764ac61184eb3ad3c687fb835df5bee01afedf07f0cf1a45515c96bc",
+    strip_prefix = "bazel-lib-1.42.3",
+    urls = ["https://storage.googleapis.com/public-bazel-artifacts/bazel/bazel-lib-v1.42.3.tar.gz"],
 )
 
 # Load custom toolchains.
diff --git a/build/STRINGER.bzl b/build/STRINGER.bzl
index f6f104f5357..30c8e404ee5 100644
--- a/build/STRINGER.bzl
+++ b/build/STRINGER.bzl
@@ -12,7 +12,7 @@ $(location //pkg/build/bazel/util/tinystringer) -output=$@ -type={typ} {args} $<
          args = " ".join(additional_args),
         ),
         visibility = [":__pkg__", "//pkg/gen:__pkg__"],
-        exec_tools = [
+        tools = [
             "//pkg/build/bazel/util/tinystringer",
         ],
     )
diff --git a/build/bazelutil/distdir_files.bzl b/build/bazelutil/distdir_files.bzl
index 4836703b3a1..4cc7383026b 100644
Binary files a/build/bazelutil/distdir_files.bzl and b/build/bazelutil/distdir_files.bzl differ
diff --git a/build/nodejs.bzl b/build/nodejs.bzl
index 02ad2279416..09657a5a1a0 100644
--- a/build/nodejs.bzl
+++ b/build/nodejs.bzl
@@ -14,29 +14,24 @@ _VERSIONS = {
 }
 
 # Versions of copy_directory and copy_to_directory from bazel-lib (github.com/aspect-build/bazel-lib)
-# NOTE(ricky): I had to build my own version of these binaries and mirror them
-# myself using a version of the code you can find at aspect-build/bazel-lib#447.
-# We can use an updated version when that PR is merged. Note we still need this
-# bespoke code to set up the repos because our build process must go through our
-# infra/storage.
-_COPY_DIRECTORY_URL_PREFIX = "https://storage.googleapis.com/public-bazel-artifacts/js/aspect-bazel-lib-utils-2023-06-05/copy_directory-"
+_COPY_DIRECTORY_URL_PREFIX = "https://storage.googleapis.com/public-bazel-artifacts/js/aspect-bazel-lib-utils-2024-04-29/copy_directory-"
 
 _COPY_DIRECTORY_VERSIONS = {
-    "darwin_amd64": "b4d39cd9498b8367ba75ad6c13c7687562dabafbf8c782883815314061f9f043",
-    "darwin_arm64": "1fd4268a242181d7cdbee7f8035b34548b895fd9e438fab05d48e4627e072e53",
-    "linux_amd64": "ce4aaaf41b3b8f9589290d0f3d657400514b7361b9c27f85ac8f966ee4d663b8",
-    "linux_arm64": "51099a643689c2e563ab7cd9e14345dd9670ee4814ac4046501675d402decdf4",
-    "windows_amd64": "6df30928734abb48515ea16d1273a829651adb77b9ecbbe49e02d17cfffab519",
+    "darwin_amd64": "107e90a5ffc8cc86869dc8a037e70c736c426f40b75ee57c23871406d699ec61",
+    "darwin_arm64": "0c7daf978934312ca9fa59ef7e288ebb489f73eb594a025420e16d85238c32f8",
+    "linux_amd64": "406148a22bdcd33f766daae4c3f24be0b6e0815f3d9e609fb119032bb7f3e206",
+    "linux_arm64": "9525248829a141a4b13cd0da5bc372f9c8a95b57dcbcda205f9131df3375efce",
+    "windows_amd64": "8a8014c5c48984c446eed8216510c7fd68c04d41148d5c8d3750acd81028cc9b",
 }
 
-_COPY_TO_DIRECTORY_URL_PREFIX = "https://storage.googleapis.com/public-bazel-artifacts/js/aspect-bazel-lib-utils-2023-06-05/copy_to_directory-"
+_COPY_TO_DIRECTORY_URL_PREFIX = "https://storage.googleapis.com/public-bazel-artifacts/js/aspect-bazel-lib-utils-2024-04-29/copy_to_directory-"
 
 _COPY_TO_DIRECTORY_VERSIONS = {
-    "darwin_amd64": "dadf2fc200a14968664c4b740a76fcee700cb975eb5bfcd3215d253b97a28b23",
-    "darwin_arm64": "97ae06279adf44786c1151aa3e4715474603a4792fa64ec6bccb1b52fa00abc1",
-    "linux_amd64": "cfac1d923b7039555265ecf1558200d391ffbed62804a4b8c4510b12a18d6e70",
-    "linux_arm64": "5c4c69f6f20ba0d6646435ad9922d6193871f3b4262cbc65295e4b89ece667a4",
-    "windows_amd64": "2be5d8b2771ffa3922438cda8899f782046633d6d230f744bf63031888a8bf48",
+    "darwin_amd64": "1f415f43721b17d4579743b22e45479f335612d910b8b66af3629362f8437a5e",
+    "darwin_arm64": "3372dc06b0aa23966f799a9ea377fbf13449db579b593400fed0ce7c0ba5daad",
+    "linux_amd64": "ccd984ed134c4d126aad4db0d380b7b7003734aabb1ef1545a29b61c1c09e0a8",
+    "linux_arm64": "5611bf54c941c07c3ebccbfc805251d45758b945dbf3937f0844e611e75f1fb6",
+    "windows_amd64": "f8270fb9f4f49c3e1729b6542072b847e28a885cc2d448ebffc4a39e8dda1d1a",
 }
 
 # NOTE: This code is adapted from upstream at
@@ -45,7 +40,7 @@ _COPY_TO_DIRECTORY_VERSIONS = {
 def _copy_directory_platform_repo_impl(rctx):
     plat = rctx.attr.platform
     is_windows = "windows" in rctx.attr.platform
-    url = "https://storage.googleapis.com/public-bazel-artifacts/js/aspect-bazel-lib-utils-2023-06-05/copy_directory-" + plat + (".exe" if is_windows else "")
+    url = _COPY_DIRECTORY_URL_PREFIX + plat + (".exe" if is_windows else "")
     rctx.download(
         url = url,
         output = "copy_directory.exe" if is_windows else "copy_directory",
@@ -71,7 +66,7 @@ copy_directory_platform_repo = repository_rule(
 def _copy_to_directory_platform_repo_impl(rctx):
     plat = rctx.attr.platform
     is_windows = "windows" in rctx.attr.platform
-    url = "https://storage.googleapis.com/public-bazel-artifacts/js/aspect-bazel-lib-utils-2023-06-05/copy_to_directory-" + plat + (".exe" if is_windows else "")
+    url = _COPY_TO_DIRECTORY_URL_PREFIX + plat + (".exe" if is_windows else "")
     rctx.download(
         url = url,
         output = "copy_to_directory.exe" if is_windows else "copy_to_directory",
diff --git a/docs/generated/BUILD.bazel b/docs/generated/BUILD.bazel
index 06a0de822eb..a38577762e8 100644
--- a/docs/generated/BUILD.bazel
+++ b/docs/generated/BUILD.bazel
@@ -14,7 +14,7 @@ genrule(
         $(location //pkg/util/log/gen) $(location //pkg/util/log/logpb:log.proto) \
           logging.md $(location logging.md)
        """,
-    exec_tools = [
+    tools = [
         "//pkg/util/log/gen",
     ],
     visibility = [
@@ -32,7 +32,7 @@ genrule(
     cmd = """
     $(location //pkg/util/log/logconfig:gen) < $(location //pkg/util/log/logconfig:config.go) > $(location logsinks.md)
     """,
-    exec_tools = [
+    tools = [
         "//pkg/util/log/logconfig:gen",
     ],
     visibility = [
@@ -50,8 +50,8 @@ genrule(
         {} \
         >$(location eventlog.md)
     """.format(_EVENTPB_PROTO_LOCATIONS),
-    exec_tools = [
-        "//pkg/util/log/eventpb/eventpbgen:eventpbgen",
+    tools = [
+        "//pkg/util/log/eventpb/eventpbgen",
     ],
     visibility = [
         ":__pkg__",
@@ -63,7 +63,7 @@ genrule(
     name = "gen-logformats-md",
     outs = ["logformats.md"],
     cmd = "$(location //pkg/cmd/docgen) logformats $(location logformats.md)",
-    exec_tools = ["//pkg/cmd/docgen"],
+    tools = ["//pkg/cmd/docgen"],
     visibility = [
         ":__pkg__",
         "//pkg/gen:__pkg__",
diff --git a/docs/generated/http/BUILD.bazel b/docs/generated/http/BUILD.bazel
index 5ea9c1a990b..5e0782b4815 100644
--- a/docs/generated/http/BUILD.bazel
+++ b/docs/generated/http/BUILD.bazel
@@ -23,10 +23,10 @@ genrule(
           --out $(RULEDIR) \
           --protoc-flags "--descriptor_set_in $$DESCRIPTOR_SET_IN server/serverpb/status.proto server/serverpb/admin.proto server/status/statuspb/status.proto"
     """,
-    exec_tools = [
-        "@com_google_protobuf//:protoc",
-        "@com_github_pseudomuto_protoc_gen_doc//cmd/protoc-gen-doc",
+    tools = [
         "//pkg/cmd/docgen",
+        "@com_github_pseudomuto_protoc_gen_doc//cmd/protoc-gen-doc",
+        "@com_google_protobuf//:protoc",
     ],
     visibility = [
         ":__pkg__",
diff --git a/docs/generated/metrics/BUILD.bazel b/docs/generated/metrics/BUILD.bazel
index 348ffd13c5b..50a74bf9543 100644
--- a/docs/generated/metrics/BUILD.bazel
+++ b/docs/generated/metrics/BUILD.bazel
@@ -2,7 +2,7 @@ genrule(
     name = "metrics",
     outs = ["metrics.html"],
     cmd = "$(location //pkg/cmd/cockroach-short) gen metric-list --format=unnumbered-html --logtostderr=NONE > $@",
-    exec_tools = ["//pkg/cmd/cockroach-short"],
+    tools = ["//pkg/cmd/cockroach-short"],
     visibility = [
         ":__pkg__",
         "//pkg/gen:__pkg__",
diff --git a/docs/generated/settings/BUILD.bazel b/docs/generated/settings/BUILD.bazel
index e387b558f60..c208f0d4179 100644
--- a/docs/generated/settings/BUILD.bazel
+++ b/docs/generated/settings/BUILD.bazel
@@ -2,7 +2,7 @@ genrule(
     name = "settings",
     outs = ["settings.html"],
     cmd = "$(location //pkg/cmd/cockroach-short) gen settings-list --show-class --format=rawhtml --class-header-label 'Supported Deployments' --class-labels 'Dedicated/Self-Hosted,Serverless/Dedicated/Self-Hosted (read-only),Serverless/Dedicated/Self-Hosted' > $@",
-    exec_tools = ["//pkg/cmd/cockroach-short"],
+    tools = ["//pkg/cmd/cockroach-short"],
     visibility = [
         ":__pkg__",
         "//pkg/gen:__pkg__",
@@ -13,7 +13,7 @@ genrule(
     name = "settings_for_tenants",
     outs = ["settings-for-tenants.txt"],
     cmd = "$(location //pkg/cmd/cockroach-short) gen settings-list --show-class --without-system-only > $@",
-    exec_tools = ["//pkg/cmd/cockroach-short"],
+    tools = ["//pkg/cmd/cockroach-short"],
     visibility = [
         ":__pkg__",
         "//pkg/gen:__pkg__",
diff --git a/docs/generated/sql/BUILD.bazel b/docs/generated/sql/BUILD.bazel
index 076c35eb773..143ef0129e5 100644
--- a/docs/generated/sql/BUILD.bazel
+++ b/docs/generated/sql/BUILD.bazel
@@ -9,7 +9,7 @@ genrule(
     cmd = """
 $(location //pkg/cmd/docgen) functions $(RULEDIR) --quiet
 """,
-    exec_tools = ["//pkg/cmd/docgen"],
+    tools = ["//pkg/cmd/docgen"],
     visibility = [
         ":__pkg__",
         "//pkg/gen:__pkg__",
diff --git a/docs/generated/sql/bnf/BUILD.bazel b/docs/generated/sql/bnf/BUILD.bazel
index f03adaccc73..287bf3e5782 100644
--- a/docs/generated/sql/bnf/BUILD.bazel
+++ b/docs/generated/sql/bnf/BUILD.bazel
@@ -304,7 +304,7 @@ genrule(
         fi
     done
     """,
-    exec_tools = ["//pkg/cmd/docgen"],
+    tools = ["//pkg/cmd/docgen"],
     visibility = [
         ":__pkg__",
         "//pkg/gen:__pkg__",
@@ -323,7 +323,7 @@ genrule(
     bnf_locs=$$(echo $(locations :bnf) | cut -d' ' -f1 | xargs dirname)
     COCKROACH_REQUIRE_RAILROAD=1 $(location //pkg/cmd/docgen) grammar svg $$bnf_locs $(RULEDIR) --addr $(location //pkg/sql/parser:sql.y) --railroad $(location @railroadjar//:rr.war)
     """,
-    exec_tools = ["//pkg/cmd/docgen"],
+    tools = ["//pkg/cmd/docgen"],
     visibility = [
         ":__pkg__",
         "//pkg/gen:__pkg__",
diff --git a/pkg/build/util/util_test.go b/pkg/build/util/util_test.go
index ddcab6b0de8..f153c2ff411 100644
--- a/pkg/build/util/util_test.go
+++ b/pkg/build/util/util_test.go
@@ -46,7 +46,7 @@ func TestOutputsOfGenrule(t *testing.T) {
 <query version="2">
     <rule class="genrule" location="/Users/ricky/go/src/github.com/cockroachdb/cockroach/docs/generated/sql/BUILD.bazel:1:8" name="//docs/generated/sql:sql">
         <string name="name" value="sql"/>
-        <list name="exec_tools">
+        <list name="tools">
             <label value="//pkg/cmd/docgen:docgen"/>
         </list>
         <list name="outs">
diff --git a/pkg/ccl/backupccl/BUILD.bazel b/pkg/ccl/backupccl/BUILD.bazel
index 13ebba53723..159d4e471f3 100644
--- a/pkg/ccl/backupccl/BUILD.bazel
+++ b/pkg/ccl/backupccl/BUILD.bazel
@@ -364,7 +364,7 @@ genrule(
         $(location //pkg/ccl/backupccl/testgen) \
         -data-driven=$(location data_driven_generated_test.go) 
        """,
-    exec_tools = [
+    tools = [
         "//pkg/ccl/backupccl/testgen",
     ],
     visibility = [
diff --git a/pkg/ccl/kvccl/kvtenantccl/upgradeinterlockccl/BUILD.bazel b/pkg/ccl/kvccl/kvtenantccl/upgradeinterlockccl/BUILD.bazel
index ab4a1c7f9a6..21833c9a5b0 100644
--- a/pkg/ccl/kvccl/kvtenantccl/upgradeinterlockccl/BUILD.bazel
+++ b/pkg/ccl/kvccl/kvtenantccl/upgradeinterlockccl/BUILD.bazel
@@ -47,7 +47,7 @@ genrule(
     cmd = """
         $(location //pkg/ccl/kvccl/kvtenantccl/upgradeinterlockccl/testgen) -output-file-path=$(location generated_test.go)
        """,
-    exec_tools = [
+    tools = [
         "//pkg/ccl/kvccl/kvtenantccl/upgradeinterlockccl/testgen",
     ],
     visibility = [
diff --git a/pkg/col/coldata/BUILD.bazel b/pkg/col/coldata/BUILD.bazel
index c2eb7bd7e14..09ab126474a 100644
--- a/pkg/col/coldata/BUILD.bazel
+++ b/pkg/col/coldata/BUILD.bazel
@@ -70,12 +70,12 @@ $(location //pkg/sql/colexec/execgen/cmd/execgen) \
     -fmt=false pkg/col/coldata/$@ > $@
 $(location @com_github_cockroachdb_gostdlib//x/tools/cmd/goimports) -w $@
 """,
-    exec_tools = [
+    tags = ["no-remote-exec"],  # keep
+    tools = [
         "//pkg/sql/colexec/execgen/cmd/execgen",
         "@com_github_cockroachdb_gostdlib//x/tools/cmd/goimports",
         "@go_sdk//:bin/go",
     ],
-    tags = ["no-remote-exec"],  # keep
     visibility = [
         ":__pkg__",
         "//pkg/gen:__pkg__",
diff --git a/pkg/gen/genbzl/targets.go b/pkg/gen/genbzl/targets.go
index 0bd979ca6dd..2ac6a324e57 100644
--- a/pkg/gen/genbzl/targets.go
+++ b/pkg/gen/genbzl/targets.go
@@ -50,12 +50,12 @@ labels("outs",  filter("-stringer$", kind("genrule rule", {{ .All }})))`,
 		query: `
 let genrules = kind("genrule rule",  {{ .All }})
 in labels("outs",  attr("tools", "execgen", $genrules)
-  + attr("exec_tools", "execgen", $genrules))`,
+  + attr("tools", "execgen", $genrules))`,
 	},
 	{
 		target: "optgen",
 		query: `
-let targets = attr("exec_tools", "(opt|lang)gen",  kind("genrule rule",  {{ .All }}))
+let targets = attr("tools", "(opt|lang)gen",  kind("genrule rule",  {{ .All }}))
 in let og = labels("outs",  $targets)
 in $og - filter(".*:.*(-gen|gen-).*", $og)`,
 	},
diff --git a/pkg/roachprod/vm/aws/BUILD.bazel b/pkg/roachprod/vm/aws/BUILD.bazel
index 7b8a9055443..57024382df9 100644
--- a/pkg/roachprod/vm/aws/BUILD.bazel
+++ b/pkg/roachprod/vm/aws/BUILD.bazel
@@ -35,7 +35,7 @@ genrule(
     cmd = """
       $(location //pkg/roachprod/vm/aws/terraformgen) -o $@
     """,
-    exec_tools = ["//pkg/roachprod/vm/aws/terraformgen"],
+    tools = ["//pkg/roachprod/vm/aws/terraformgen"],
     visibility = [
         ":__pkg__",
         "//pkg/gen:__pkg__",
diff --git a/pkg/sql/colexec/COLEXEC.bzl b/pkg/sql/colexec/COLEXEC.bzl
index 0d7492edcfa..4d6e2c33ef7 100644
--- a/pkg/sql/colexec/COLEXEC.bzl
+++ b/pkg/sql/colexec/COLEXEC.bzl
@@ -18,7 +18,7 @@ export GOROOT=
 $(location :execgen) -template $(SRCS) -fmt=false pkg/sql/colexec/$@ > $@
 $(location :goimports) -w $@
 """,
-        exec_tools = [
+        tools = [
             "@go_sdk//:bin/go",
             ":execgen",
             ":goimports",
@@ -44,7 +44,7 @@ export COCKROACH_INTERNAL_DISABLE_METAMORPHIC_TESTING=true
 $(location :execgen) -template $(SRCS) -fmt=false pkg/sql/colexec/colexecprojconst/$@ > $@
 $(location :goimports) -w $@
 """,
-        exec_tools = [
+        tools = [
             "@go_sdk//:bin/go",
             ":execgen",
             ":goimports",
diff --git a/pkg/sql/colexecop/EXECGEN.bzl b/pkg/sql/colexecop/EXECGEN.bzl
index ec7d81b34cf..79bde5060fb 100644
--- a/pkg/sql/colexecop/EXECGEN.bzl
+++ b/pkg/sql/colexecop/EXECGEN.bzl
@@ -43,7 +43,7 @@ $(location :execgen) -template $(SRCS) \
         -fmt=false pkg/sql/colexec/$@ > $@
 $(location :goimports) -w $@
 """,
-            exec_tools = [
+            tools = [
                 "@go_sdk//:bin/go",
                 ":execgen",
                 ":goimports",
diff --git a/pkg/sql/lexbase/BUILD.bazel b/pkg/sql/lexbase/BUILD.bazel
index 0fd5b51adc3..6b7af8b886b 100644
--- a/pkg/sql/lexbase/BUILD.bazel
+++ b/pkg/sql/lexbase/BUILD.bazel
@@ -39,7 +39,7 @@ genrule(
     cmd = """
         $(location //pkg/sql/lexbase/allkeywords) < $(location //pkg/sql/parser:sql.y) > $@
     """,
-    exec_tools = [
+    tools = [
         "//pkg/sql/lexbase/allkeywords",
     ],
     visibility = [
@@ -60,7 +60,7 @@ genrule(
      echo; \
      grep '^const [A-Z][_A-Z0-9]* ' $(location //pkg/sql/parser:sql-goyacc)) > $@
     """,
-    exec_tools = [
+    tools = [
         "//pkg/sql/parser:sql-goyacc",
     ],
     visibility = [
diff --git a/pkg/sql/opt/BUILD.bazel b/pkg/sql/opt/BUILD.bazel
index 6b7f31a982d..f299a667ad1 100644
--- a/pkg/sql/opt/BUILD.bazel
+++ b/pkg/sql/opt/BUILD.bazel
@@ -111,7 +111,7 @@ genrule(
     cmd = """
       $(location //pkg/sql/opt/optgen/cmd/optgen) -out $@ ops $(locations :ops)
     """,
-    exec_tools = ["//pkg/sql/opt/optgen/cmd/optgen"],
+    tools = ["//pkg/sql/opt/optgen/cmd/optgen"],
     visibility = [
         ":__pkg__",
         "//pkg/gen:__pkg__",
@@ -131,7 +131,7 @@ genrule(
       $(location //pkg/sql/opt/optgen/cmd/optgen) -out $@ rulenames \
           $(locations :ops) $(locations //pkg/sql/opt/norm:rules) $(locations //pkg/sql/opt/xform:rules)
     """,
-    exec_tools = ["//pkg/sql/opt/optgen/cmd/optgen"],
+    tools = ["//pkg/sql/opt/optgen/cmd/optgen"],
     visibility = [
         ":__pkg__",
         "//pkg/gen:__pkg__",
@@ -155,7 +155,7 @@ genrule(
       $(location //pkg/build/bazel/util/tinystringer) -output=$@ \
           -type=RuleName `dirname $(location :gen-rulenames)`/rule_name.go $(location :gen-rulenames)
     """,
-    exec_tools = [
+    tools = [
         "//pkg/build/bazel/util/tinystringer",
     ],
     visibility = [
diff --git a/pkg/sql/opt/exec/BUILD.bazel b/pkg/sql/opt/exec/BUILD.bazel
index 3c62f50ec72..abe9180e180 100644
--- a/pkg/sql/opt/exec/BUILD.bazel
+++ b/pkg/sql/opt/exec/BUILD.bazel
@@ -43,7 +43,7 @@ genrule(
     cmd = """
       $(location //pkg/sql/opt/optgen/cmd/optgen) -out $@ execfactory $(locations :defs)
     """,
-    exec_tools = ["//pkg/sql/opt/optgen/cmd/optgen"],
+    tools = ["//pkg/sql/opt/optgen/cmd/optgen"],
     visibility = [
         ":__pkg__",
         "//pkg/gen:__pkg__",
diff --git a/pkg/sql/opt/exec/explain/BUILD.bazel b/pkg/sql/opt/exec/explain/BUILD.bazel
index 60bd28def39..126108f0447 100644
--- a/pkg/sql/opt/exec/explain/BUILD.bazel
+++ b/pkg/sql/opt/exec/explain/BUILD.bazel
@@ -104,7 +104,7 @@ genrule(
     cmd = """
       $(location //pkg/sql/opt/optgen/cmd/optgen) -out $@ execexplain $(locations //pkg/sql/opt/exec:defs)
     """,
-    exec_tools = ["//pkg/sql/opt/optgen/cmd/optgen"],
+    tools = ["//pkg/sql/opt/optgen/cmd/optgen"],
     visibility = [
         ":__pkg__",
         "//pkg/gen:__pkg__",
@@ -122,7 +122,7 @@ genrule(
     cmd = """
       $(location //pkg/sql/opt/optgen/cmd/optgen) -out $@ execplangist $(locations //pkg/sql/opt/exec:defs)
     """,
-    exec_tools = ["//pkg/sql/opt/optgen/cmd/optgen"],
+    tools = ["//pkg/sql/opt/optgen/cmd/optgen"],
     visibility = [
         ":__pkg__",
         "//pkg/gen:__pkg__",
diff --git a/pkg/sql/opt/memo/BUILD.bazel b/pkg/sql/opt/memo/BUILD.bazel
index e32109368eb..df7e0ba9b5d 100644
--- a/pkg/sql/opt/memo/BUILD.bazel
+++ b/pkg/sql/opt/memo/BUILD.bazel
@@ -125,7 +125,7 @@ genrule(
     cmd = """
       $(location //pkg/sql/opt/optgen/cmd/optgen) -out $@ exprs $(locations //pkg/sql/opt:ops)
     """,
-    exec_tools = ["//pkg/sql/opt/optgen/cmd/optgen"],
+    tools = ["//pkg/sql/opt/optgen/cmd/optgen"],
     visibility = ["//visibility:public"],
 )
 
diff --git a/pkg/sql/opt/norm/BUILD.bazel b/pkg/sql/opt/norm/BUILD.bazel
index a0c90940f0c..a167e1cb442 100644
--- a/pkg/sql/opt/norm/BUILD.bazel
+++ b/pkg/sql/opt/norm/BUILD.bazel
@@ -118,7 +118,7 @@ genrule(
     cmd = """
       $(location //pkg/sql/opt/optgen/cmd/optgen) -out $@ factory $(locations //pkg/sql/opt:ops) $(locations :rules)
     """,
-    exec_tools = ["//pkg/sql/opt/optgen/cmd/optgen"],
+    tools = ["//pkg/sql/opt/optgen/cmd/optgen"],
     visibility = [
         ":__pkg__",
         "//pkg/gen:__pkg__",
diff --git a/pkg/sql/opt/optgen/lang/BUILD.bazel b/pkg/sql/opt/optgen/lang/BUILD.bazel
index bcbc67c53cb..8b4e652f918 100644
--- a/pkg/sql/opt/optgen/lang/BUILD.bazel
+++ b/pkg/sql/opt/optgen/lang/BUILD.bazel
@@ -50,7 +50,7 @@ genrule(
     cmd = """
       $(location //pkg/sql/opt/optgen/cmd/langgen) -out $@ exprs $(location lang.opt)
     """,
-    exec_tools = ["//pkg/sql/opt/optgen/cmd/langgen"],
+    tools = ["//pkg/sql/opt/optgen/cmd/langgen"],
     visibility = [
         ":__pkg__",
         "//pkg/gen:__pkg__",
@@ -64,7 +64,7 @@ genrule(
     cmd = """
       $(location //pkg/sql/opt/optgen/cmd/langgen) -out $@ ops $(location lang.opt)
     """,
-    exec_tools = ["//pkg/sql/opt/optgen/cmd/langgen"],
+    tools = ["//pkg/sql/opt/optgen/cmd/langgen"],
     visibility = [
         ":__pkg__",
         "//pkg/gen:__pkg__",
diff --git a/pkg/sql/opt/xform/BUILD.bazel b/pkg/sql/opt/xform/BUILD.bazel
index 29f2542cf96..c45d407c200 100644
--- a/pkg/sql/opt/xform/BUILD.bazel
+++ b/pkg/sql/opt/xform/BUILD.bazel
@@ -120,7 +120,7 @@ genrule(
     cmd = """
       $(location //pkg/sql/opt/optgen/cmd/optgen) -out $@ explorer $(locations //pkg/sql/opt:ops) $(locations :rules)
     """,
-    exec_tools = ["//pkg/sql/opt/optgen/cmd/optgen"],
+    tools = ["//pkg/sql/opt/optgen/cmd/optgen"],
     visibility = [
         ":__pkg__",
         "//pkg/gen:__pkg__",
diff --git a/pkg/sql/parser/BUILD.bazel b/pkg/sql/parser/BUILD.bazel
index b9bb467341d..d22cac6f92e 100644
--- a/pkg/sql/parser/BUILD.bazel
+++ b/pkg/sql/parser/BUILD.bazel
@@ -100,12 +100,12 @@ export GOROOT=
 $(location :sql-gen) $(location sql.y) sql $(location replace_help_rules.awk) \
     $(location sql.go) $(location @org_golang_x_tools//cmd/goyacc)
 """,
-    exec_tools = [
+    tags = ["no-remote-exec"],  # keep
+    tools = [
         ":sql-gen",
         "@go_sdk//:bin/go",
         "@org_golang_x_tools//cmd/goyacc",
     ],
-    tags = ["no-remote-exec"],  # keep
     visibility = ["//visibility:public"],
 )
 
@@ -125,7 +125,7 @@ genrule(
       $(location :help-gen-test) < $< >$@.tmp
       mv -f $@.tmp $@
     """,
-    exec_tools = [
+    tools = [
         ":help-gen-test",
     ],
     visibility = [
diff --git a/pkg/sql/pgrepl/pgreplparser/BUILD.bazel b/pkg/sql/pgrepl/pgreplparser/BUILD.bazel
index 26bde9251a1..cdeaee3b32a 100644
--- a/pkg/sql/pgrepl/pgreplparser/BUILD.bazel
+++ b/pkg/sql/pgrepl/pgreplparser/BUILD.bazel
@@ -18,7 +18,7 @@ genrule(
           $(location pgrepl.go) $(location @org_golang_x_tools//cmd/goyacc)
 
     """,
-    exec_tools = [
+    tools = [
         ":pgrepl-gen",
         "@org_golang_x_tools//cmd/goyacc",
     ],
diff --git a/pkg/sql/plpgsql/parser/BUILD.bazel b/pkg/sql/plpgsql/parser/BUILD.bazel
index b8985109306..066e3955db3 100644
--- a/pkg/sql/plpgsql/parser/BUILD.bazel
+++ b/pkg/sql/plpgsql/parser/BUILD.bazel
@@ -18,7 +18,7 @@ genrule(
           $(location plpgsql.go) $(location @org_golang_x_tools//cmd/goyacc)
 
     """,
-    exec_tools = [
+    tools = [
         ":plpgsql-gen",
         "@org_golang_x_tools//cmd/goyacc",
     ],
diff --git a/pkg/sql/plpgsql/parser/lexbase/BUILD.bazel b/pkg/sql/plpgsql/parser/lexbase/BUILD.bazel
index 18e2d23305c..d14618cb62b 100644
--- a/pkg/sql/plpgsql/parser/lexbase/BUILD.bazel
+++ b/pkg/sql/plpgsql/parser/lexbase/BUILD.bazel
@@ -22,7 +22,7 @@ genrule(
      echo; \
      grep '^const [A-Z][_A-Z0-9]* ' $(location //pkg/sql/plpgsql/parser:plpgsql-goyacc)) > $@
     """,
-    exec_tools = [
+    tools = [
         "//pkg/sql/plpgsql/parser:plpgsql-goyacc",
     ],
     visibility = [
@@ -41,7 +41,7 @@ genrule(
     cmd = """
         $(location //pkg/sql/lexbase/allkeywords) < $(location //pkg/sql/plpgsql/parser:plpgsql.y) > $@
     """,
-    exec_tools = [
+    tools = [
         "//pkg/sql/lexbase/allkeywords",
     ],
     visibility = [
diff --git a/pkg/sql/scanner/BUILD.bazel b/pkg/sql/scanner/BUILD.bazel
index ff1030311f7..9838602bc68 100644
--- a/pkg/sql/scanner/BUILD.bazel
+++ b/pkg/sql/scanner/BUILD.bazel
@@ -43,7 +43,7 @@ genrule(
      awk '{printf("%d: \\"%s\\",\\n", $$4, $$2)}'; \
      echo "}" )> $@
     """,
-    exec_tools = [
+    tools = [
         "//pkg/sql/parser:sql-goyacc",
     ],
     visibility = [
diff --git a/pkg/sql/schemachanger/BUILD.bazel b/pkg/sql/schemachanger/BUILD.bazel
index f1267954f3a..9f26b79c29c 100644
--- a/pkg/sql/schemachanger/BUILD.bazel
+++ b/pkg/sql/schemachanger/BUILD.bazel
@@ -115,7 +115,7 @@ genrule(
     cmd = """
         $(location //pkg/sql/schemachanger/sctest/sccomparatortestgen) -out-file=$(location comparator_generated_test.go)
     """,
-    exec_tools = [
+    tools = [
         "//pkg/sql/schemachanger/sctest/sccomparatortestgen",
     ],
     visibility = [
diff --git a/pkg/sql/schemachanger/scop/BUILD.bazel b/pkg/sql/schemachanger/scop/BUILD.bazel
index e69b575c97d..e88117a4ae1 100644
--- a/pkg/sql/schemachanger/scop/BUILD.bazel
+++ b/pkg/sql/schemachanger/scop/BUILD.bazel
@@ -49,7 +49,7 @@ genrule(
     cmd = """
         $(location :gen-visitors) scop ImmediateMutation $(location immediate_mutation.go) $(location immediate_mutation_visitor_generated.go)
        """,
-    exec_tools = [
+    tools = [
         ":gen-visitors",
     ],
     visibility = [
@@ -65,7 +65,7 @@ genrule(
     cmd = """
         $(location :gen-visitors) scop DeferredMutation $(location deferred_mutation.go) $(location deferred_mutation_visitor_generated.go)
        """,
-    exec_tools = [
+    tools = [
         ":gen-visitors",
     ],
     visibility = [
@@ -81,7 +81,7 @@ genrule(
     cmd = """
         $(location :gen-visitors) scop Backfill $(location backfill.go) $(location backfill_visitor_generated.go)
        """,
-    exec_tools = [
+    tools = [
         ":gen-visitors",
     ],
     visibility = [
@@ -97,7 +97,7 @@ genrule(
     cmd = """
         $(location :gen-visitors) scop Validation $(location validation.go) $(location validation_visitor_generated.go)
        """,
-    exec_tools = [
+    tools = [
         ":gen-visitors",
     ],
     visibility = [
diff --git a/pkg/sql/schemachanger/scpb/BUILD.bazel b/pkg/sql/schemachanger/scpb/BUILD.bazel
index 15c7963eedc..636b00c83ea 100644
--- a/pkg/sql/schemachanger/scpb/BUILD.bazel
+++ b/pkg/sql/schemachanger/scpb/BUILD.bazel
@@ -80,7 +80,7 @@ genrule(
     cmd = """
         $(location :element-generator) --in $< --out $(location elements_generated.go)
        """,
-    exec_tools = [
+    tools = [
         ":element-generator",
     ],
     visibility = [
@@ -105,7 +105,7 @@ genrule(
     cmd = """
         $(location :element-uml-generator) --out $(location uml/table.puml)
        """,
-    exec_tools = [
+    tools = [
         ":element-uml-generator",
     ],
     visibility = [
diff --git a/pkg/sql/sem/tree/BUILD.bazel b/pkg/sql/sem/tree/BUILD.bazel
index d66b089947d..5298c6b3d43 100644
--- a/pkg/sql/sem/tree/BUILD.bazel
+++ b/pkg/sql/sem/tree/BUILD.bazel
@@ -291,7 +291,7 @@ genrule(
     ),
     outs = eval_generated,
     cmd = "$(location //pkg/sql/sem/tree/evalgen) --out $(@D) $(SRCS)",
-    exec_tools = ["//pkg/sql/sem/tree/evalgen"],
+    tools = ["//pkg/sql/sem/tree/evalgen"],
     visibility = [
         ":__pkg__",
         "//pkg/gen:__pkg__",
diff --git a/pkg/testutils/serverutils/BUILD.bazel b/pkg/testutils/serverutils/BUILD.bazel
index 86d3f6230e5..1d149530350 100644
--- a/pkg/testutils/serverutils/BUILD.bazel
+++ b/pkg/testutils/serverutils/BUILD.bazel
@@ -64,8 +64,8 @@ genrule(
        ApplicationLayerInterface
 $(location @com_github_cockroachdb_gostdlib//x/tools/cmd/goimports) -w $@
 """,
-    exec_tools = [
-        "//pkg/testutils/serverutils/fwgen:fwgen",
+    tools = [
+        "//pkg/testutils/serverutils/fwgen",
         "@com_github_cockroachdb_gostdlib//x/tools/cmd/goimports",
     ],
     visibility = [
@@ -84,8 +84,8 @@ genrule(
        StorageLayerInterface
 $(location @com_github_cockroachdb_gostdlib//x/tools/cmd/goimports) -w $@
 """,
-    exec_tools = [
-        "//pkg/testutils/serverutils/fwgen:fwgen",
+    tools = [
+        "//pkg/testutils/serverutils/fwgen",
         "@com_github_cockroachdb_gostdlib//x/tools/cmd/goimports",
     ],
     visibility = [
@@ -104,8 +104,8 @@ genrule(
        TenantControlInterface
 $(location @com_github_cockroachdb_gostdlib//x/tools/cmd/goimports) -w $@
 """,
-    exec_tools = [
-        "//pkg/testutils/serverutils/fwgen:fwgen",
+    tools = [
+        "//pkg/testutils/serverutils/fwgen",
         "@com_github_cockroachdb_gostdlib//x/tools/cmd/goimports",
     ],
     visibility = [
@@ -124,8 +124,8 @@ genrule(
        TestServerController
 $(location @com_github_cockroachdb_gostdlib//x/tools/cmd/goimports) -w $@
 """,
-    exec_tools = [
-        "//pkg/testutils/serverutils/fwgen:fwgen",
+    tools = [
+        "//pkg/testutils/serverutils/fwgen",
         "@com_github_cockroachdb_gostdlib//x/tools/cmd/goimports",
     ],
     visibility = [
diff --git a/pkg/ui/distccl/BUILD.bazel b/pkg/ui/distccl/BUILD.bazel
index 89feeb79a04..1fa88be634f 100644
--- a/pkg/ui/distccl/BUILD.bazel
+++ b/pkg/ui/distccl/BUILD.bazel
@@ -5,7 +5,7 @@ genrule(
     srcs = ["//pkg/ui/workspaces/db-console:db-console-ccl"],
     outs = ["assets.tar.gz"],
     cmd = """$(location //pkg/util/targz/gen) $@ $(SRCS)""",
-    exec_tools = ["//pkg/util/targz/gen"],
+    tools = ["//pkg/util/targz/gen"],
     visibility = ["//pkg/gen:__subpackages__"],
 )
 
diff --git a/pkg/ui/distoss/BUILD.bazel b/pkg/ui/distoss/BUILD.bazel
index 3643720d926..2a3617ad475 100644
--- a/pkg/ui/distoss/BUILD.bazel
+++ b/pkg/ui/distoss/BUILD.bazel
@@ -5,7 +5,7 @@ genrule(
     srcs = ["//pkg/ui/workspaces/db-console:db-console-oss"],
     outs = ["assets.tar.gz"],
     cmd = """$(location //pkg/util/targz/gen) $@ $(SRCS)""",
-    exec_tools = ["//pkg/util/targz/gen"],
+    tools = ["//pkg/util/targz/gen"],
     visibility = ["//pkg/gen:__subpackages__"],
 )
 
diff --git a/pkg/util/encoding/BUILD.bazel b/pkg/util/encoding/BUILD.bazel
index e13ee3a0599..d0d0d00299d 100644
--- a/pkg/util/encoding/BUILD.bazel
+++ b/pkg/util/encoding/BUILD.bazel
@@ -79,7 +79,7 @@ genrule(
        sed -e 's/type Type encodingtype.T/type Type int/' $(location encoding.go) > encoding_tmp.go && \
          $(location //pkg/build/bazel/util/tinystringer) -output=$@ -type=Type encoding_tmp.go
     """,
-    exec_tools = [
+    tools = [
         "//pkg/build/bazel/util/tinystringer",
     ],
     visibility = [
diff --git a/pkg/util/fsm/gen/REPORTS.bzl b/pkg/util/fsm/gen/REPORTS.bzl
index 01b9a7302e2..d48714a41c4 100644
--- a/pkg/util/fsm/gen/REPORTS.bzl
+++ b/pkg/util/fsm/gen/REPORTS.bzl
@@ -64,6 +64,6 @@ $(location :{template_name}_bin) $(location {lower}_diagram.gv) $(location {lowe
             lower + "_diagram.gv",
             lower + "_report.txt",
         ],
-        exec_tools = [":" + template_name + "_bin"],
+        tools = [":" + template_name + "_bin"],
         visibility = [":__pkg__", "//pkg/gen:__pkg__"],
     )
diff --git a/pkg/util/interval/generic/gen.bzl b/pkg/util/interval/generic/gen.bzl
index 4292fca81c7..0efa8e9641f 100644
--- a/pkg/util/interval/generic/gen.bzl
+++ b/pkg/util/interval/generic/gen.bzl
@@ -6,7 +6,7 @@ def gen_interval_btree(name, type, package):
         name = name,
         srcs = ["//pkg/util/interval/generic:gen_srcs"],
         outs = [src_out, test_out],
-        exec_tools = [
+        tools = [
             "@com_github_cockroachdb_crlfmt//:crlfmt",
             "@com_github_mmatczuk_go_generics//cmd/go_generics",
         ],
diff --git a/pkg/util/log/BUILD.bazel b/pkg/util/log/BUILD.bazel
index dc8948b4cf1..1194e80e4a6 100644
--- a/pkg/util/log/BUILD.bazel
+++ b/pkg/util/log/BUILD.bazel
@@ -204,7 +204,7 @@ genrule(
         $(location //pkg/util/log/gen) $(location //pkg/util/log/logpb:log.proto) \
           log_channels.go $(location log_channels_generated.go)
        """,
-    exec_tools = [
+    tools = [
         "//pkg/util/log/gen",
     ],
     visibility = [
diff --git a/pkg/util/log/channel/BUILD.bazel b/pkg/util/log/channel/BUILD.bazel
index 7d867b6c22d..65dd15fa241 100644
--- a/pkg/util/log/channel/BUILD.bazel
+++ b/pkg/util/log/channel/BUILD.bazel
@@ -20,7 +20,7 @@ genrule(
       $(location //pkg/util/log/gen) $(location //pkg/util/log/logpb:log.proto) \
         channel.go $(location channel_generated.go)
        """,
-    exec_tools = [
+    tools = [
         "//pkg/util/log/gen",
     ],
     visibility = [
diff --git a/pkg/util/log/eventpb/BUILD.bazel b/pkg/util/log/eventpb/BUILD.bazel
index cdc3e983833..fef5814735f 100644
--- a/pkg/util/log/eventpb/BUILD.bazel
+++ b/pkg/util/log/eventpb/BUILD.bazel
@@ -93,8 +93,8 @@ genrule(
         {} \
         >$(location eventlog_channels_generated.go)
     """.format(_EVENTPB_PROTO_LOCATIONS),
-    exec_tools = [
-        "//pkg/util/log/eventpb/eventpbgen:eventpbgen",
+    tools = [
+        "//pkg/util/log/eventpb/eventpbgen",
     ],
     visibility = [
         ":__pkg__",
@@ -113,8 +113,8 @@ genrule(
         {} \
         >$(location json_encode_generated.go)
     """.format(_EVENTPB_PROTO_LOCATIONS),
-    exec_tools = [
-        "//pkg/util/log/eventpb/eventpbgen:eventpbgen",
+    tools = [
+        "//pkg/util/log/eventpb/eventpbgen",
     ],
     visibility = [
         ":__pkg__",
diff --git a/pkg/util/log/logpb/BUILD.bazel b/pkg/util/log/logpb/BUILD.bazel
index a8e3c9f433a..56854f72419 100644
--- a/pkg/util/log/logpb/BUILD.bazel
+++ b/pkg/util/log/logpb/BUILD.bazel
@@ -59,8 +59,8 @@ genrule(
         $(location event.proto) \
         >$(location json_encode_generated.go)
     """,
-    exec_tools = [
-        "//pkg/util/log/eventpb/eventpbgen:eventpbgen",
+    tools = [
+        "//pkg/util/log/eventpb/eventpbgen",
     ],
     visibility = [
         ":__pkg__",
diff --git a/pkg/util/log/severity/BUILD.bazel b/pkg/util/log/severity/BUILD.bazel
index 63d26d6ff25..086045496cc 100644
--- a/pkg/util/log/severity/BUILD.bazel
+++ b/pkg/util/log/severity/BUILD.bazel
@@ -20,7 +20,7 @@ genrule(
       $(location //pkg/util/log/gen) $(location //pkg/util/log/logpb:log.proto) \
         severity.go $(location severity_generated.go)
        """,
-    exec_tools = [
+    tools = [
         "//pkg/util/log/gen",
     ],
     visibility = [
diff --git a/pkg/util/timeutil/BUILD.bazel b/pkg/util/timeutil/BUILD.bazel
index 2592bcd9659..0bf61bab326 100644
--- a/pkg/util/timeutil/BUILD.bazel
+++ b/pkg/util/timeutil/BUILD.bazel
@@ -63,7 +63,7 @@ genrule(
       --zoneinfo=$(location @go_sdk//:lib/time/zoneinfo.zip) \
       --crlfmt=$(location @com_github_cockroachdb_crlfmt//:crlfmt)
        """,
-    exec_tools = [
+    tools = [
         "//pkg/util/timeutil/gen",
         "@com_github_cockroachdb_crlfmt//:crlfmt",
     ],

However, I still get warnings like the following:

WARNING: /Users/ricky/go/src/github.com/cockroachdb/cockroach/pkg/ui/BUILD.bazel:5:22: input 'package' to //pkg/ui:.aspect_rules_js/node_modules/esbuild-linux-32@0.14.43/lc is a directory; dependency checking of directories is unsound
WARNING: /Users/ricky/go/src/github.com/cockroachdb/cockroach/pkg/ui/BUILD.bazel:5:22: input 'package' to //pkg/ui:.aspect_rules_js/node_modules/esbuild-freebsd-arm64@0.14.43/lc is a directory; dependency checking of directories is unsound
WARNING: /Users/ricky/go/src/github.com/cockroachdb/cockroach/pkg/ui/BUILD.bazel:5:22: input 'package' to //pkg/ui:.aspect_rules_js/node_modules/esbuild-freebsd-64@0.14.43/lc is a directory; dependency checking of directories is unsound

I'm not sure if this is unsafe to proceed with and this will need more investigation.

@rickystewart rickystewart linked a pull request Apr 29, 2024 that will close this issue
rickystewart added a commit to rickystewart/cockroach that referenced this issue Apr 29, 2024
Closes cockroachdb#123237.

Epic: CRDB-17171
Release note: None
rickystewart added a commit to rickystewart/cockroach that referenced this issue May 2, 2024
Closes cockroachdb#123237.

Epic: CRDB-17171
Release note: None
rickystewart added a commit to rickystewart/cockroach that referenced this issue May 2, 2024
Closes cockroachdb#123237.

Epic: CRDB-17171
Release note: None
rickystewart added a commit to rickystewart/cockroach that referenced this issue May 2, 2024
Closes cockroachdb#123237.

Epic: CRDB-17171
Release note: None
rickystewart added a commit to rickystewart/cockroach that referenced this issue May 2, 2024
Closes cockroachdb#123237.

Epic: CRDB-17171
Release note: None
rickystewart added a commit to rickystewart/cockroach that referenced this issue May 2, 2024
Closes cockroachdb#123237.

Epic: CRDB-17171
Release note: None
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-build-system C-enhancement Solution expected to add code/behavior + preserve backward-compat (pg compat issues are exception) T-dev-inf
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant