1load("@rules_proto//proto:defs.bzl", "proto_library") 2 3# This is an API workspace, having public visibility by default makes perfect sense. 4package(default_visibility = ["//visibility:public"]) 5 6############################################################################## 7# Common 8############################################################################## 9load("@com_google_googleapis_imports//:imports.bzl", "proto_library_with_info") 10 11_PROTO_SUBPACKAGE_DEPS = [ 12 "//google/cloud/oslogin/common:common_proto", 13] 14 15proto_library( 16 name = "oslogin_proto", 17 srcs = [ 18 "oslogin.proto", 19 ], 20 deps = [ 21 "//google/api:annotations_proto", 22 "//google/api:client_proto", 23 "//google/api:field_behavior_proto", 24 "//google/api:resource_proto", 25 "@com_google_protobuf//:empty_proto", 26 "@com_google_protobuf//:field_mask_proto", 27 ] + _PROTO_SUBPACKAGE_DEPS, 28) 29 30proto_library_with_info( 31 name = "oslogin_proto_with_info", 32 deps = [ 33 ":oslogin_proto", 34 "//google/cloud:common_resources_proto", 35 ] + _PROTO_SUBPACKAGE_DEPS, 36) 37 38############################################################################## 39# Java 40############################################################################## 41load( 42 "@com_google_googleapis_imports//:imports.bzl", 43 "java_gapic_assembly_gradle_pkg", 44 "java_gapic_library", 45 "java_gapic_test", 46 "java_grpc_library", 47 "java_proto_library", 48) 49 50_JAVA_PROTO_SUBPACKAGE_DEPS = [ 51 "//google/cloud/oslogin/common:common_java_proto", 52] 53 54_JAVA_GRPC_SUBPACKAGE_DEPS = [ 55 "//google/cloud/oslogin/common:common_java_grpc", 56] 57 58java_proto_library( 59 name = "oslogin_java_proto", 60 deps = [":oslogin_proto"], 61) 62 63java_grpc_library( 64 name = "oslogin_java_grpc", 65 srcs = [":oslogin_proto"], 66 deps = [":oslogin_java_proto"] + _JAVA_PROTO_SUBPACKAGE_DEPS, 67) 68 69java_gapic_library( 70 name = "oslogin_java_gapic", 71 srcs = [":oslogin_proto_with_info"], 72 grpc_service_config = "oslogin_grpc_service_config.json", 73 rest_numeric_enums = True, 74 service_yaml = "oslogin_v1beta.yaml", 75 test_deps = [":oslogin_java_grpc"], 76 transport = "grpc+rest", 77 deps = [ 78 ":oslogin_java_proto", 79 ] + _JAVA_PROTO_SUBPACKAGE_DEPS, 80) 81 82java_gapic_test( 83 name = "oslogin_java_gapic_test_suite", 84 test_classes = [ 85 "com.google.cloud.oslogin.v1beta.OsLoginServiceClientHttpJsonTest", 86 "com.google.cloud.oslogin.v1beta.OsLoginServiceClientTest", 87 ], 88 runtime_deps = [":oslogin_java_gapic_test"], 89) 90 91# Open Source Packages 92java_gapic_assembly_gradle_pkg( 93 name = "google-cloud-oslogin-v1beta-java", 94 transport = "grpc+rest", 95 deps = [ 96 ":oslogin_java_gapic", 97 ":oslogin_java_grpc", 98 ":oslogin_java_proto", 99 ":oslogin_proto", 100 ] + _JAVA_PROTO_SUBPACKAGE_DEPS + _PROTO_SUBPACKAGE_DEPS, 101) 102 103############################################################################## 104# Go 105############################################################################## 106load( 107 "@com_google_googleapis_imports//:imports.bzl", 108 "go_gapic_assembly_pkg", 109 "go_gapic_library", 110 "go_proto_library", 111) 112 113go_proto_library( 114 name = "oslogin_go_proto", 115 compilers = ["@io_bazel_rules_go//proto:go_grpc"], 116 importpath = "cloud.google.com/go/oslogin/apiv1beta/osloginpb", 117 protos = [":oslogin_proto"], 118 deps = [ 119 "//google/api:annotations_go_proto", 120 "//google/cloud/oslogin/common:common_go_proto", 121 ], 122) 123 124go_gapic_library( 125 name = "oslogin_go_gapic", 126 srcs = [":oslogin_proto_with_info"], 127 grpc_service_config = "oslogin_grpc_service_config.json", 128 importpath = "cloud.google.com/go/oslogin/apiv1beta;oslogin", 129 release_level = "beta", 130 rest_numeric_enums = True, 131 service_yaml = "oslogin_v1beta.yaml", 132 transport = "grpc+rest", 133 deps = [ 134 ":oslogin_go_proto", 135 "//google/cloud/oslogin/common:common_go_proto", 136 ], 137) 138 139# Open Source Packages 140go_gapic_assembly_pkg( 141 name = "gapi-cloud-oslogin-v1beta-go", 142 deps = [ 143 ":oslogin_go_gapic", 144 ":oslogin_go_gapic_srcjar-snippets.srcjar", 145 ":oslogin_go_gapic_srcjar-test.srcjar", 146 ":oslogin_go_proto", 147 "//google/cloud/oslogin/common:common_go_proto", 148 ], 149) 150 151############################################################################## 152# Python 153############################################################################## 154load( 155 "@com_google_googleapis_imports//:imports.bzl", 156 "py_gapic_assembly_pkg", 157 "py_gapic_library", 158) 159 160py_gapic_library( 161 name = "oslogin_py_gapic", 162 srcs = [ 163 ":oslogin_proto", 164 ], 165 grpc_service_config = "oslogin_grpc_service_config.json", 166 rest_numeric_enums = True, 167 service_yaml = "oslogin_v1beta.yaml", 168 transport = "grpc+rest", 169) 170 171# Uncomment once https://github.com/googleapis/gapic-generator-python/issues/1376 is fixed 172#py_test( 173# name = "oslogin_py_gapic_test", 174# srcs = [ 175# "oslogin_py_gapic_pytest.py", 176# "oslogin_py_gapic_test.py", 177# ], 178# legacy_create_init = False, 179# deps = [":oslogin_py_gapic"], 180#) 181 182py_gapic_assembly_pkg( 183 name = "oslogin-v1beta-py", 184 deps = [ 185 ":oslogin_py_gapic", 186 "//google/cloud/oslogin/common:common_py_gapic", 187 ], 188) 189 190############################################################################## 191# PHP 192############################################################################## 193load( 194 "@com_google_googleapis_imports//:imports.bzl", 195 "php_gapic_assembly_pkg", 196 "php_gapic_library", 197 "php_proto_library", 198) 199 200_PHP_SUBPACKAGE_DEPS = [ 201 "//google/cloud/oslogin/common:common_php_proto", 202] 203 204php_proto_library( 205 name = "oslogin_php_proto", 206 deps = [":oslogin_proto"], 207) 208 209php_gapic_library( 210 name = "oslogin_php_gapic", 211 srcs = [":oslogin_proto_with_info"], 212 grpc_service_config = "oslogin_grpc_service_config.json", 213 rest_numeric_enums = True, 214 service_yaml = "oslogin_v1beta.yaml", 215 transport = "grpc+rest", 216 deps = [":oslogin_php_proto"] + _PHP_SUBPACKAGE_DEPS, 217) 218 219# Open Source Packages 220php_gapic_assembly_pkg( 221 name = "google-cloud-oslogin-v1beta-php", 222 deps = [ 223 ":oslogin_php_gapic", 224 ":oslogin_php_proto", 225 ] + _PHP_SUBPACKAGE_DEPS, 226) 227 228############################################################################## 229# Node.js 230############################################################################## 231load( 232 "@com_google_googleapis_imports//:imports.bzl", 233 "nodejs_gapic_assembly_pkg", 234 "nodejs_gapic_library", 235) 236 237nodejs_gapic_library( 238 name = "oslogin_nodejs_gapic", 239 package_name = "@google-cloud/os-login", 240 src = ":oslogin_proto_with_info", 241 extra_protoc_parameters = ["metadata"], 242 grpc_service_config = "oslogin_grpc_service_config.json", 243 package = "google.cloud.oslogin.v1beta", 244 rest_numeric_enums = True, 245 service_yaml = "oslogin_v1beta.yaml", 246 transport = "grpc+rest", 247 deps = [], 248) 249 250nodejs_gapic_assembly_pkg( 251 name = "oslogin-v1beta-nodejs", 252 deps = [ 253 ":oslogin_nodejs_gapic", 254 ":oslogin_proto", 255 ] + _PROTO_SUBPACKAGE_DEPS, 256) 257 258############################################################################## 259# Ruby 260############################################################################## 261load( 262 "@com_google_googleapis_imports//:imports.bzl", 263 "ruby_cloud_gapic_library", 264 "ruby_gapic_assembly_pkg", 265 "ruby_grpc_library", 266 "ruby_proto_library", 267) 268 269_RUBY_SUBPACKAGE_DEPS = [ 270 "//google/cloud/oslogin/common:common_ruby_proto", 271 "//google/cloud/oslogin/common:common_ruby_grpc", 272] 273 274ruby_proto_library( 275 name = "oslogin_ruby_proto", 276 deps = [":oslogin_proto"], 277) 278 279ruby_grpc_library( 280 name = "oslogin_ruby_grpc", 281 srcs = [":oslogin_proto"], 282 deps = [":oslogin_ruby_proto"], 283) 284 285ruby_cloud_gapic_library( 286 name = "oslogin_ruby_gapic", 287 srcs = [":oslogin_proto_with_info"], 288 extra_protoc_parameters = [ 289 "ruby-cloud-gem-name=google-cloud-os_login-v1beta", 290 "ruby-cloud-env-prefix=OS_LOGIN", 291 "ruby-cloud-product-url=https://cloud.google.com/compute/docs/oslogin", 292 "ruby-cloud-api-id=oslogin.googleapis.com", 293 "ruby-cloud-api-shortname=oslogin", 294 ], 295 grpc_service_config = "oslogin_grpc_service_config.json", 296 rest_numeric_enums = True, 297 ruby_cloud_description = "Use OS Login to manage SSH access to your instances using IAM without having to create and manage individual SSH keys. OS Login maintains a consistent Linux user identity across VM instances and is the recommended way to manage many users across multiple instances or projects.", 298 ruby_cloud_title = "Cloud OS Login V1beta", 299 service_yaml = "oslogin_v1beta.yaml", 300 transport = "grpc+rest", 301 deps = [ 302 ":oslogin_ruby_grpc", 303 ":oslogin_ruby_proto", 304 ] + _RUBY_SUBPACKAGE_DEPS, 305) 306 307# Open Source Packages 308ruby_gapic_assembly_pkg( 309 name = "google-cloud-oslogin-v1beta-ruby", 310 deps = [ 311 ":oslogin_ruby_gapic", 312 ":oslogin_ruby_grpc", 313 ":oslogin_ruby_proto", 314 ] + _RUBY_SUBPACKAGE_DEPS, 315) 316 317############################################################################## 318# C# 319############################################################################## 320load( 321 "@com_google_googleapis_imports//:imports.bzl", 322 "csharp_gapic_assembly_pkg", 323 "csharp_gapic_library", 324 "csharp_grpc_library", 325 "csharp_proto_library", 326) 327 328_CSHARP_SUBPACKAGE_DEPS = [ 329 "//google/cloud/oslogin/common:common_csharp_proto", 330 "//google/cloud/oslogin/common:common_csharp_grpc", 331] 332 333csharp_proto_library( 334 name = "oslogin_csharp_proto", 335 deps = [":oslogin_proto"], 336) 337 338csharp_grpc_library( 339 name = "oslogin_csharp_grpc", 340 srcs = [":oslogin_proto"], 341 deps = [":oslogin_csharp_proto"], 342) 343 344csharp_gapic_library( 345 name = "oslogin_csharp_gapic", 346 srcs = [":oslogin_proto_with_info"], 347 common_resources_config = "@gax_dotnet//:Google.Api.Gax/ResourceNames/CommonResourcesConfig.json", 348 grpc_service_config = "oslogin_grpc_service_config.json", 349 rest_numeric_enums = True, 350 service_yaml = "oslogin_v1beta.yaml", 351 transport = "grpc+rest", 352 deps = [ 353 ":oslogin_csharp_grpc", 354 ":oslogin_csharp_proto", 355 ] + _CSHARP_SUBPACKAGE_DEPS, 356) 357 358# Open Source Packages 359csharp_gapic_assembly_pkg( 360 name = "google-cloud-oslogin-v1beta-csharp", 361 deps = [ 362 ":oslogin_csharp_gapic", 363 ":oslogin_csharp_grpc", 364 ":oslogin_csharp_proto", 365 ] + _CSHARP_SUBPACKAGE_DEPS, 366) 367 368############################################################################## 369# C++ 370############################################################################## 371# Put your C++ rules here 372