From 6d15e809ea865dd20d8f1e109feb2f6ed6913cf7 Mon Sep 17 00:00:00 2001 From: Fabian Meumertzheim Date: Thu, 13 Feb 2025 11:10:36 +0100 Subject: [PATCH] Add googleapis --- .../0.0.0-20241220-5e258e33/MODULE.bazel | 21 ++++++++++ .../overlay/MODULE.bazel | 1 + .../overlay/extensions.bzl | 30 ++++++++++++++ .../overlay/tests/bcr/.bazelrc | 5 +++ .../overlay/tests/bcr/BUILD.bazel | 41 +++++++++++++++++++ .../overlay/tests/bcr/MODULE.bazel | 13 ++++++ .../overlay/tests/bcr/failure_test.bzl | 11 +++++ .../0.0.0-20241220-5e258e33/presubmit.yml | 14 +++++++ .../0.0.0-20241220-5e258e33/source.json | 13 ++++++ modules/googleapis/metadata.json | 3 +- 10 files changed, 151 insertions(+), 1 deletion(-) create mode 100644 modules/googleapis/0.0.0-20241220-5e258e33/MODULE.bazel create mode 120000 modules/googleapis/0.0.0-20241220-5e258e33/overlay/MODULE.bazel create mode 100644 modules/googleapis/0.0.0-20241220-5e258e33/overlay/extensions.bzl create mode 100644 modules/googleapis/0.0.0-20241220-5e258e33/overlay/tests/bcr/.bazelrc create mode 100644 modules/googleapis/0.0.0-20241220-5e258e33/overlay/tests/bcr/BUILD.bazel create mode 100644 modules/googleapis/0.0.0-20241220-5e258e33/overlay/tests/bcr/MODULE.bazel create mode 100644 modules/googleapis/0.0.0-20241220-5e258e33/overlay/tests/bcr/failure_test.bzl create mode 100644 modules/googleapis/0.0.0-20241220-5e258e33/presubmit.yml create mode 100644 modules/googleapis/0.0.0-20241220-5e258e33/source.json diff --git a/modules/googleapis/0.0.0-20241220-5e258e33/MODULE.bazel b/modules/googleapis/0.0.0-20241220-5e258e33/MODULE.bazel new file mode 100644 index 00000000000..7e00aa99e7f --- /dev/null +++ b/modules/googleapis/0.0.0-20241220-5e258e33/MODULE.bazel @@ -0,0 +1,21 @@ +module( + name = "googleapis", + version = "0.0.0-20241220-5e258e33", + repo_name = "com_google_googleapis", + bazel_compatibility = [">=7.2.1"], +) + +# Only needed for well-known protos. +bazel_dep(name = "protobuf", version = "21.7", repo_name = "com_google_protobuf") + +# Only needed for proto_library. +bazel_dep(name = "rules_proto", version = "5.3.0-21.7") + +bazel_dep(name = "googleapis-rules-registry", version = "1.0.0") + +rules_registry = use_extension("@googleapis-rules-registry//private/extensions:rules_registry.bzl", "rules_registry") +use_repo( + rules_registry, + "com_google_googleapis_imports", + "io_bazel_rules_go", +) diff --git a/modules/googleapis/0.0.0-20241220-5e258e33/overlay/MODULE.bazel b/modules/googleapis/0.0.0-20241220-5e258e33/overlay/MODULE.bazel new file mode 120000 index 00000000000..9b599e3ad9c --- /dev/null +++ b/modules/googleapis/0.0.0-20241220-5e258e33/overlay/MODULE.bazel @@ -0,0 +1 @@ +../MODULE.bazel \ No newline at end of file diff --git a/modules/googleapis/0.0.0-20241220-5e258e33/overlay/extensions.bzl b/modules/googleapis/0.0.0-20241220-5e258e33/overlay/extensions.bzl new file mode 100644 index 00000000000..4cf4289d9c7 --- /dev/null +++ b/modules/googleapis/0.0.0-20241220-5e258e33/overlay/extensions.bzl @@ -0,0 +1,30 @@ +_use_languages_tag = tag_class( + attrs = { + "cc": attr.bool(default = False), + "csharp": attr.bool(default = False), + "gapic": attr.bool(default = False), + "go": attr.bool(default = False), + "go_test": attr.bool(default = False), + "grpc": attr.bool(default = False), + "java": attr.bool(default = False), + "nodejs": attr.bool(default = False), + "php": attr.bool(default = False), + "python": attr.bool(default = False), + "ruby": attr.bool(default = False), + }, +) + +def _switched_rules_impl(_ctx): + fail(""" +The 'switched_rules' extension is no longer supported due to problems inherent to its design. +Instead, add 'bazel_dep(name = "googleapis-", version = "1.0.0")' to your MODULE.bazel file to use '_proto_library' targets in 'googleapis'. +To see error messages with the exact 'bazel_dep's to add, remove the 'switched_rules' usage and build your project. +The available individual modules can be found at https://registry.bazel.build/search?q=googleapis. +""") + +switched_rules = module_extension( + implementation = _switched_rules_impl, + tag_classes = { + "use_languages": _use_languages_tag, + }, +) diff --git a/modules/googleapis/0.0.0-20241220-5e258e33/overlay/tests/bcr/.bazelrc b/modules/googleapis/0.0.0-20241220-5e258e33/overlay/tests/bcr/.bazelrc new file mode 100644 index 00000000000..467f4958072 --- /dev/null +++ b/modules/googleapis/0.0.0-20241220-5e258e33/overlay/tests/bcr/.bazelrc @@ -0,0 +1,5 @@ +common --java_runtime_version=remotejdk_11 + +# Disable warnings for external dependencies. +common --per_file_copt=external/.*@-w +common --host_per_file_copt=external/.*@-w diff --git a/modules/googleapis/0.0.0-20241220-5e258e33/overlay/tests/bcr/BUILD.bazel b/modules/googleapis/0.0.0-20241220-5e258e33/overlay/tests/bcr/BUILD.bazel new file mode 100644 index 00000000000..e8adedeab5c --- /dev/null +++ b/modules/googleapis/0.0.0-20241220-5e258e33/overlay/tests/bcr/BUILD.bazel @@ -0,0 +1,41 @@ +load(":failure_test.bzl", "php_proto_library_fails_with_message_test") + +alias( + name = "bytestream_proto", + actual = "@googleapis//google/bytestream:bytestream_proto", +) + +alias( + name = "bytestream_cc_proto", + actual = "@googleapis//google/bytestream:bytestream_cc_proto", +) + +alias( + name = "bytestream_go_proto", + actual = "@googleapis//google/bytestream:bytestream_go_proto", +) + +alias( + name = "bytestream_java_proto", + actual = "@googleapis//google/bytestream:bytestream_java_proto", +) + +alias( + name = "date_py_proto", + actual = "@googleapis//google/type:date_py_proto", +) + +alias( + name = "spanner_cc_grpc", + actual = "@googleapis//google/spanner/v1:spanner_cc_grpc", +) + +alias( + name = "spanner_java_grpc", + actual = "@googleapis//google/spanner/v1:spanner_java_grpc", +) + +php_proto_library_fails_with_message_test( + name = "php_proto_library_fails_with_message_test", + target_under_test = "@googleapis//google/bytestream:bytestream_php_proto", +) diff --git a/modules/googleapis/0.0.0-20241220-5e258e33/overlay/tests/bcr/MODULE.bazel b/modules/googleapis/0.0.0-20241220-5e258e33/overlay/tests/bcr/MODULE.bazel new file mode 100644 index 00000000000..b386199da87 --- /dev/null +++ b/modules/googleapis/0.0.0-20241220-5e258e33/overlay/tests/bcr/MODULE.bazel @@ -0,0 +1,13 @@ +bazel_dep(name = "bazel_skylib", version = "1.7.1") +bazel_dep(name = "googleapis") +bazel_dep(name = "googleapis-cc", version = "1.0.0") +bazel_dep(name = "googleapis-go", version = "1.0.0") +bazel_dep(name = "googleapis-java", version = "1.0.0") +bazel_dep(name = "googleapis-python", version = "1.0.0") +bazel_dep(name = "googleapis-grpc-cc", version = "1.0.0") +bazel_dep(name = "googleapis-grpc-java", version = "1.0.0") + +local_path_override( + module_name = "googleapis", + path = "../..", +) diff --git a/modules/googleapis/0.0.0-20241220-5e258e33/overlay/tests/bcr/failure_test.bzl b/modules/googleapis/0.0.0-20241220-5e258e33/overlay/tests/bcr/failure_test.bzl new file mode 100644 index 00000000000..772c3747ed7 --- /dev/null +++ b/modules/googleapis/0.0.0-20241220-5e258e33/overlay/tests/bcr/failure_test.bzl @@ -0,0 +1,11 @@ +load("@bazel_skylib//lib:unittest.bzl", "analysistest", "asserts") + +def _php_proto_library_fails_with_message_test_impl(ctx): + env = analysistest.begin(ctx) + asserts.expect_failure(env, """php_proto_library targets in googleapis are not supported with Bzlmod. If you need them, please file an issue at https://github.com/bazelbuild/bazel-central-registry.""") + return analysistest.end(env) + +php_proto_library_fails_with_message_test = analysistest.make( + _php_proto_library_fails_with_message_test_impl, + expect_failure = True, +) diff --git a/modules/googleapis/0.0.0-20241220-5e258e33/presubmit.yml b/modules/googleapis/0.0.0-20241220-5e258e33/presubmit.yml new file mode 100644 index 00000000000..4627dc581ad --- /dev/null +++ b/modules/googleapis/0.0.0-20241220-5e258e33/presubmit.yml @@ -0,0 +1,14 @@ +bcr_test_module: + module_path: "tests/bcr" + matrix: + platform: ["debian10", "macos", "ubuntu2004", "windows"] + bazel: ["7.x", "8.x"] + tasks: + run_tests: + name: "Run test module" + bazel: ${{ bazel }} + platform: ${{ platform }} + build_targets: + - "//..." + test_targets: + - "//..." diff --git a/modules/googleapis/0.0.0-20241220-5e258e33/source.json b/modules/googleapis/0.0.0-20241220-5e258e33/source.json new file mode 100644 index 00000000000..f7a3cd55f05 --- /dev/null +++ b/modules/googleapis/0.0.0-20241220-5e258e33/source.json @@ -0,0 +1,13 @@ +{ + "integrity": "sha256-ftfNAEA+XKYX5I+kRRNhXnnfyBert9Rgq1WQ6sJ0Pvk=", + "strip_prefix": "googleapis-5e258e334154da04dcd0a567a61ac21518cac81b", + "url": "https://github.com/googleapis/googleapis/archive/5e258e334154da04dcd0a567a61ac21518cac81b.tar.gz", + "overlay": { + "MODULE.bazel": "sha256-VxsBhkSSAwL1ppUguR2uGJwX1WbnMKG4fJ2+7+Ob1qU=", + "extensions.bzl": "sha256-7C/04C9c7meY0eqFSdgSm6i1MTCAd5QarXTsBRJ4aN4=", + "tests/bcr/.bazelrc": "sha256-hFZT+gits3VtXcUkKuh3NCEC9FgBNGuNxaOVCuOiFPk=", + "tests/bcr/BUILD.bazel": "sha256-KZzDURLUNDOiMsurUHrnuWYogHPFs7W+Ar9ZrilPLuE=", + "tests/bcr/MODULE.bazel": "sha256-4zmBG1uAn7W3ExjUMQChBcrJVSNCE6K8PhIs9SfKy1U=", + "tests/bcr/failure_test.bzl": "sha256-pKImfWiY7m3EB1w0n4C66/LABDBwTYr/2nqxoC+gvBc=" + } +} diff --git a/modules/googleapis/metadata.json b/modules/googleapis/metadata.json index 49396c3abc7..073ab146c34 100644 --- a/modules/googleapis/metadata.json +++ b/modules/googleapis/metadata.json @@ -11,7 +11,8 @@ ], "versions": [ "0.0.0-20240326-1c8d509c5", - "0.0.0-20240819-fe8ba054a" + "0.0.0-20240819-fe8ba054a", + "0.0.0-20241220-5e258e33" ], "yanked_versions": {} }