From f2e590dff5a7f6bf9dcf0c35c55530bed978afa2 Mon Sep 17 00:00:00 2001 From: Viacheslav Rostovtsev <58152857+viacheslav-rostovtsev@users.noreply.github.com> Date: Tue, 2 Nov 2021 10:34:19 -0700 Subject: [PATCH] feat: remove old ruby and Csharp rules (#84) --- csharp/csharp_gapic.bzl | 112 ------------------------------------ csharp/csharp_gapic_pkg.bzl | 87 ---------------------------- ruby/ruby_gapic.bzl | 108 ---------------------------------- ruby/ruby_gapic_pkg.bzl | 81 -------------------------- 4 files changed, 388 deletions(-) delete mode 100644 csharp/csharp_gapic_pkg.bzl delete mode 100644 ruby/ruby_gapic_pkg.bzl diff --git a/csharp/csharp_gapic.bzl b/csharp/csharp_gapic.bzl index 45c2ccb..f8ea847 100644 --- a/csharp/csharp_gapic.bzl +++ b/csharp/csharp_gapic.bzl @@ -49,115 +49,3 @@ def csharp_grpc_library(name, srcs, deps, **kwargs): ], **kwargs ) - -def _csharp_gapic_postprocessed_srcjar_impl(ctx): - gapic_srcjar = ctx.file.gapic_srcjar - output_dir_name = ctx.label.name - - output_main = ctx.actions.declare_file("%s.srcjar" % output_dir_name) - output_test = ctx.actions.declare_file("%s-test.srcjar" % output_dir_name) - output_smoke_test = ctx.actions.declare_file("%s-smoke-test.srcjar" % output_dir_name) - output_pkg = ctx.actions.declare_file("%s-pkg.srcjar" % output_dir_name) - outputs = [output_main, output_test, output_smoke_test, output_pkg] - - output_dir_path = "%s/%s" % (output_main.dirname, output_dir_name) - - script = """ - unzip -q {gapic_srcjar} -d {output_dir_path} - pushd {output_dir_path} - zip -q -r {output_dir_name}-pkg.srcjar . -i "*.csproj" - find . -name "*.csproj" -delete - zip -q -r {output_dir_name}-smoke-test.srcjar */*.SmokeTests */*.Snippets - rm -rf **/*.SmokeTests */*.Snippets - zip -q -r {output_dir_name}-test.srcjar */*.Tests - rm -rf */*.Tests - zip -q -r {output_dir_name}.srcjar */* - popd - mv {output_dir_path}/{output_dir_name}.srcjar {output_main} - mv {output_dir_path}/{output_dir_name}-test.srcjar {output_test} - mv {output_dir_path}/{output_dir_name}-smoke-test.srcjar {output_smoke_test} - mv {output_dir_path}/{output_dir_name}-pkg.srcjar {output_pkg} - rm -rf {output_dir_path} - """.format( - gapic_srcjar = gapic_srcjar.path, - output_dir_path = output_dir_path, - output_dir_name = output_dir_name, - output_main = output_main.path, - output_test = output_test.path, - output_smoke_test = output_smoke_test.path, - output_pkg = output_pkg.path, - ) - - ctx.actions.run_shell( - inputs = [gapic_srcjar], - tools = [], - command = script, - outputs = outputs, - ) - - return [ - DefaultInfo( - files = depset(direct = outputs), - ), - GapicInfo( - main = output_main, - test = output_test, - smoke_test = output_smoke_test, - pkg = output_pkg, - ), - ] - -_csharp_gapic_postprocessed_srcjar = rule( - _csharp_gapic_postprocessed_srcjar_impl, - attrs = { - "gapic_srcjar": attr.label(mandatory = True, allow_single_file = True), - }, -) - -def csharp_gapic_srcjar(name, src, gapic_yaml, service_yaml, package, grpc_service_config = None, **kwargs): - raw_srcjar_name = "%s_raw" % name - - gapic_srcjar( - name = raw_srcjar_name, - src = src, - gapic_yaml = gapic_yaml, - service_yaml = service_yaml, - artifact_type = "LEGACY_GAPIC_AND_PACKAGE", - language = "csharp", - package = package, - grpc_service_config = grpc_service_config, - **kwargs - ) - - _csharp_gapic_postprocessed_srcjar( - name = name, - gapic_srcjar = ":%s" % raw_srcjar_name, - **kwargs - ) - -def csharp_gapic_library( - name, - src, - gapic_yaml, - service_yaml, - package = None, - deps = [], - grpc_service_config = None, - **kwargs): - srcjar_name = "%s_srcjar" % name - - csharp_gapic_srcjar( - name = srcjar_name, - src = src, - gapic_yaml = gapic_yaml, - service_yaml = service_yaml, - package = package, - grpc_service_config = grpc_service_config, - **kwargs - ) - - # Change with csharp_library if csharp gets full support in Bazel - native.alias( - name = name, - actual = ":%s" % srcjar_name, - ) diff --git a/csharp/csharp_gapic_pkg.bzl b/csharp/csharp_gapic_pkg.bzl deleted file mode 100644 index aa2b97e..0000000 --- a/csharp/csharp_gapic_pkg.bzl +++ /dev/null @@ -1,87 +0,0 @@ -# Copyright 2019 Google LLC -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# https://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -load("//:gapic.bzl", "CustomProtoInfo", "gapic_srcjar", "proto_custom_library", "GapicInfo") -load("//:gapic_pkg.bzl", "construct_package_dir_paths") - -def _csharp_gapic_src_pkg_impl(ctx): - proto_grpc_srcs = [] - gapic_main_src = None - gapic_srcs = [] - - for dep in ctx.attr.deps: - if ProtoInfo in dep or CustomProtoInfo in dep: - proto_grpc_srcs.extend(dep.files.to_list()) - elif GapicInfo in dep: - gapic_srcs.append(dep[GapicInfo].test) - gapic_srcs.append(dep[GapicInfo].smoke_test) - gapic_srcs.append(dep[GapicInfo].pkg) - gapic_main_src = dep[GapicInfo].main - else: - gapic_srcs.extend(dep.files.to_list()) - - paths = construct_package_dir_paths(ctx.attr.package_dir, ctx.outputs.pkg, ctx.label.name) - - script = """ - mkdir -p {package_dir_path} - # Main client folder is unzipped first, then proto and gRPC stubs are copied in this only folder - # (so {package_dir_path}/*/* is properly resolved by shell to the only subdirectory there) - unzip -q -o {gapic_main_src} -d {package_dir_path} - for proto_grpc_src in {proto_grpc_srcs}; do - unzip -q -o $proto_grpc_src -d {package_dir_path}/*/* - done - for gapic_src in {gapic_srcs}; do - unzip -q -o $gapic_src -d {package_dir_path} - done - cd {package_dir_path} - tar -zchpf {package_dir}.tar.gz {package_dir_expr}* - cd - - mv {package_dir_path}/{package_dir}.tar.gz {pkg} - rm -rf {package_dir_path} - """.format( - gapic_main_src = '%s' % gapic_main_src.path, - proto_grpc_srcs = " ".join(["'%s'" % f.path for f in proto_grpc_srcs]), - gapic_srcs = " ".join(["'%s'" % f.path for f in gapic_srcs]), - package_dir_path = paths.package_dir_path, - package_dir = paths.package_dir, - pkg = ctx.outputs.pkg.path, - package_dir_expr = paths.package_dir_expr, - ) - - ctx.actions.run_shell( - inputs = proto_grpc_srcs + gapic_srcs + [gapic_main_src], - command = script, - outputs = [ctx.outputs.pkg], - ) - -_csharp_gapic_src_pkg = rule( - attrs = { - "deps": attr.label_list(allow_files = True, mandatory = True), - "package_dir": attr.string(mandatory = True), - }, - outputs = {"pkg": "%{name}.tar.gz"}, - implementation = _csharp_gapic_src_pkg_impl, -) - -def csharp_gapic_assembly_pkg(name, deps, assembly_name = None, **kwargs): - package_dir = name - if assembly_name: - package_dir = "google-cloud-%s-%s" % (assembly_name, name) - _csharp_gapic_src_pkg( - name = name, - deps = deps, - package_dir = package_dir, - **kwargs - ) - diff --git a/ruby/ruby_gapic.bzl b/ruby/ruby_gapic.bzl index e798363..7854619 100644 --- a/ruby/ruby_gapic.bzl +++ b/ruby/ruby_gapic.bzl @@ -42,111 +42,3 @@ def ruby_grpc_library(name, srcs, deps, **kwargs): ], **kwargs ) - -def _ruby_gapic_postprocessed_srcjar_impl(ctx): - gapic_srcjar = ctx.file.gapic_srcjar - - output_main = ctx.outputs.main - output_test = ctx.outputs.test - output_smoke_test = ctx.outputs.smoke_test - output_pkg = ctx.outputs.pkg - - output_dir_name = ctx.label.name - output_dir_path = "%s/%s" % (output_main.dirname, output_dir_name) - - script = """ - unzip -q {gapic_srcjar} -d {output_dir_path} - pushd {output_dir_path} - zip -q -r {output_dir_name}.srcjar lib - zip -q -r {output_dir_name}-test.srcjar test - if [ -d "acceptance" ]; then - zip -q -r {output_dir_name}-smoke-test.srcjar acceptance - else - touch empty_file - zip -q -r {output_dir_name}-smoke-test.srcjar empty_file - zip -d {output_dir_name}-smoke-test.srcjar empty_file - fi - zip -q -r {output_dir_name}-pkg.srcjar . -i \ - './*.yaml' \ - './*.yml' \ - './*.md' \ - './*file' \ - './*.gemspec' \ - './LICENSE' \ - './.gitignore' \ - './.yardopts' - popd - mv {output_dir_path}/{output_dir_name}.srcjar {output_main} - mv {output_dir_path}/{output_dir_name}-test.srcjar {output_test} - mv {output_dir_path}/{output_dir_name}-smoke-test.srcjar {output_smoke_test} - mv {output_dir_path}/{output_dir_name}-pkg.srcjar {output_pkg} - rm -rf {output_dir_path} - """.format( - gapic_srcjar = gapic_srcjar.path, - output_dir_path = output_dir_path, - output_dir_name = output_dir_name, - output_main = output_main.path, - output_test = output_test.path, - output_smoke_test = output_smoke_test.path, - output_pkg = output_pkg.path, - ) - - ctx.actions.run_shell( - inputs = [gapic_srcjar], - tools = [], - command = script, - outputs = [output_main, output_test, output_pkg, output_smoke_test], - ) - -_ruby_gapic_postprocessed_srcjar = rule( - _ruby_gapic_postprocessed_srcjar_impl, - attrs = { - "gapic_srcjar": attr.label(mandatory = True, allow_single_file = True), - }, - outputs = { - "main": "%{name}.srcjar", - "test": "%{name}-test.srcjar", - "smoke_test": "%{name}-smoke-test.srcjar", - "pkg": "%{name}-pkg.srcjar", - }, -) - -def ruby_gapic_srcjar(name, src, gapic_yaml, service_yaml, package, grpc_service_config = None, **kwargs): - raw_srcjar_name = "%s_raw" % name - - gapic_srcjar( - name = raw_srcjar_name, - src = src, - gapic_yaml = gapic_yaml, - service_yaml = service_yaml, - artifact_type = "LEGACY_GAPIC_AND_PACKAGE", - language = "ruby", - package = package, - grpc_service_config = grpc_service_config, - **kwargs - ) - - _ruby_gapic_postprocessed_srcjar( - name = name, - gapic_srcjar = ":%s" % raw_srcjar_name, - **kwargs - ) - -def ruby_gapic_library(name, src, gapic_yaml, service_yaml, package = None, deps = [], grpc_service_config = None, **kwargs): - srcjar_name = "%s_srcjar" % name - - ruby_gapic_srcjar( - name = srcjar_name, - src = src, - gapic_yaml = gapic_yaml, - service_yaml = service_yaml, - package = package, - grpc_service_config = grpc_service_config, - **kwargs - ) - - # Change with ruby_library if Ruby gets full support in Bazel - native.alias( - name = name, - actual = ":%s" % srcjar_name, - ) diff --git a/ruby/ruby_gapic_pkg.bzl b/ruby/ruby_gapic_pkg.bzl deleted file mode 100644 index a310084..0000000 --- a/ruby/ruby_gapic_pkg.bzl +++ /dev/null @@ -1,81 +0,0 @@ -# Copyright 2019 Google LLC -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# https://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -load("//:gapic.bzl", "CustomProtoInfo", "gapic_srcjar", "proto_custom_library") -load("//:gapic_pkg.bzl", "construct_package_dir_paths") - -def _ruby_gapic_src_pkg_impl(ctx): - proto_grpc_srcs = [] - gapic_srcs = [] - - for dep in ctx.attr.deps: - if ProtoInfo in dep or CustomProtoInfo in dep: - proto_grpc_srcs.extend(dep.files.to_list()) - else: - gapic_srcs.extend(dep.files.to_list()) - - paths = construct_package_dir_paths(ctx.attr.package_dir, ctx.outputs.pkg, ctx.label.name) - - script = """ - for proto_grpc_src in {proto_grpc_srcs}; do - mkdir -p {package_dir_path}/lib - unzip -q -o $proto_grpc_src -d {package_dir_path}/lib - done - for gapic_src in {gapic_srcs}; do - mkdir -p {package_dir_path} - unzip -q -o $gapic_src -d {package_dir_path} - done - cd {package_dir_path} - tar -zchpf {package_dir}.tar.gz {package_dir_expr}* \ - {package_dir_expr}.gitignore \ - {package_dir_expr}.rubocop.yml \ - {package_dir_expr}.yardopts - cd - - mv {package_dir_path}/{package_dir}.tar.gz {pkg} - rm -rf {package_dir_path} - """.format( - proto_grpc_srcs = " ".join(["'%s'" % f.path for f in proto_grpc_srcs]), - gapic_srcs = " ".join(["'%s'" % f.path for f in gapic_srcs]), - package_dir_path = paths.package_dir_path, - package_dir = paths.package_dir, - pkg = ctx.outputs.pkg.path, - package_dir_expr = paths.package_dir_expr, - ) - - ctx.actions.run_shell( - inputs = proto_grpc_srcs + gapic_srcs, - command = script, - outputs = [ctx.outputs.pkg], - ) - -_ruby_gapic_src_pkg = rule( - attrs = { - "deps": attr.label_list(allow_files = True, mandatory = True), - "package_dir": attr.string(mandatory = True), - }, - outputs = {"pkg": "%{name}.tar.gz"}, - implementation = _ruby_gapic_src_pkg_impl, -) - -def ruby_gapic_assembly_pkg(name, deps, assembly_name = None, **kwargs): - package_dir = name - if assembly_name: - package_dir = "google-cloud-%s-%s" % (assembly_name, name) - _ruby_gapic_src_pkg( - name = name, - deps = deps, - package_dir = package_dir, - **kwargs - ) -