BUILD 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123
  1. # Copyright 2017 gRPC authors.
  2. #
  3. # Licensed under the Apache License, Version 2.0 (the "License");
  4. # you may not use this file except in compliance with the License.
  5. # You may obtain a copy of the License at
  6. #
  7. # http://www.apache.org/licenses/LICENSE-2.0
  8. #
  9. # Unless required by applicable law or agreed to in writing, software
  10. # distributed under the License is distributed on an "AS IS" BASIS,
  11. # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  12. # See the License for the specific language governing permissions and
  13. # limitations under the License.
  14. load("//bazel:grpc_build_system.bzl", "grpc_cc_library", "grpc_cc_test", "grpc_package")
  15. licenses(["notice"])
  16. grpc_package(
  17. name = "test/cpp/end2end/xds",
  18. visibility = "public",
  19. ) # Allows external users to implement end2end tests.
  20. grpc_cc_library(
  21. name = "xds_server",
  22. testonly = True,
  23. srcs = ["xds_server.cc"],
  24. hdrs = ["xds_server.h"],
  25. external_deps = [
  26. "gtest",
  27. ],
  28. deps = [
  29. "//:gpr",
  30. "//:grpc",
  31. "//:grpc++",
  32. "//src/proto/grpc/testing/xds:ads_for_test_proto",
  33. "//src/proto/grpc/testing/xds:lrs_for_test_proto",
  34. "//src/proto/grpc/testing/xds/v3:ads_proto",
  35. "//src/proto/grpc/testing/xds/v3:cluster_proto",
  36. "//src/proto/grpc/testing/xds/v3:discovery_proto",
  37. "//src/proto/grpc/testing/xds/v3:endpoint_proto",
  38. "//src/proto/grpc/testing/xds/v3:listener_proto",
  39. "//src/proto/grpc/testing/xds/v3:lrs_proto",
  40. "//src/proto/grpc/testing/xds/v3:route_proto",
  41. "//test/core/util:grpc_test_util",
  42. "//test/cpp/end2end:counted_service",
  43. ],
  44. )
  45. grpc_cc_test(
  46. name = "xds_end2end_test",
  47. size = "large",
  48. srcs = ["xds_end2end_test.cc"],
  49. data = [
  50. "//src/core/tsi/test_creds:badclient.key",
  51. "//src/core/tsi/test_creds:badclient.pem",
  52. "//src/core/tsi/test_creds:ca.pem",
  53. "//src/core/tsi/test_creds:client.key",
  54. "//src/core/tsi/test_creds:client.pem",
  55. "//src/core/tsi/test_creds:server1.key",
  56. "//src/core/tsi/test_creds:server1.pem",
  57. ],
  58. external_deps = [
  59. "gtest",
  60. ],
  61. flaky = True, # TODO(b/144705388)
  62. linkstatic = True, # Fixes dyld error on MacOS
  63. shard_count = 50,
  64. tags = [
  65. "no_test_ios",
  66. "no_windows",
  67. ], # TODO(jtattermusch): fix test on windows
  68. deps = [
  69. ":xds_server",
  70. "//:gpr",
  71. "//:grpc",
  72. "//:grpc++",
  73. "//:grpc_resolver_fake",
  74. "//:grpcpp_csds",
  75. "//src/proto/grpc/testing:echo_messages_proto",
  76. "//src/proto/grpc/testing:echo_proto",
  77. "//src/proto/grpc/testing/duplicate:echo_duplicate_proto",
  78. "//src/proto/grpc/testing/xds:cds_for_test_proto",
  79. "//src/proto/grpc/testing/xds:eds_for_test_proto",
  80. "//src/proto/grpc/testing/xds:lds_rds_for_test_proto",
  81. "//src/proto/grpc/testing/xds/v3:aggregate_cluster_proto",
  82. "//src/proto/grpc/testing/xds/v3:cluster_proto",
  83. "//src/proto/grpc/testing/xds/v3:endpoint_proto",
  84. "//src/proto/grpc/testing/xds/v3:fault_common_proto",
  85. "//src/proto/grpc/testing/xds/v3:fault_proto",
  86. "//src/proto/grpc/testing/xds/v3:http_connection_manager_proto",
  87. "//src/proto/grpc/testing/xds/v3:http_filter_rbac_proto",
  88. "//src/proto/grpc/testing/xds/v3:listener_proto",
  89. "//src/proto/grpc/testing/xds/v3:route_proto",
  90. "//src/proto/grpc/testing/xds/v3:router_proto",
  91. "//src/proto/grpc/testing/xds/v3:tls_proto",
  92. "//test/core/util:grpc_test_util",
  93. "//test/cpp/end2end:counted_service",
  94. "//test/cpp/end2end:test_service_impl",
  95. "//test/cpp/util:test_config",
  96. "//test/cpp/util:test_util",
  97. "//test/cpp/util:tls_test_utils",
  98. ],
  99. )
  100. grpc_cc_test(
  101. name = "xds_credentials_end2end_test",
  102. srcs = ["xds_credentials_end2end_test.cc"],
  103. external_deps = [
  104. "gtest",
  105. ],
  106. tags = ["no_test_ios"],
  107. deps = [
  108. "//:gpr",
  109. "//:grpc",
  110. "//:grpc++",
  111. "//src/proto/grpc/testing:echo_messages_proto",
  112. "//src/proto/grpc/testing:echo_proto",
  113. "//test/core/util:grpc_test_util",
  114. "//test/cpp/end2end:test_service_impl",
  115. "//test/cpp/util:test_util",
  116. ],
  117. )