build: Add .bzl/BUILD files to @angular/bazel package (#28769)

It's now possible to use it as a hybrid package in latest rules_nodejs, so no WORKSPACE dep is needed

PR Close #28769
This commit is contained in:
Alex Eagle
2019-02-19 16:15:06 -08:00
committed by Igor Minar
parent 2d804198d5
commit 1eccf64b15
20 changed files with 371 additions and 129 deletions

View File

@ -1,9 +1,8 @@
package(default_visibility = ["//visibility:public"])
package(default_visibility = ["//packages/bazel:__subpackages__"])
filegroup(
name = "package_assets",
srcs = ["modify_tsconfig.js"],
visibility = ["//packages/bazel:__subpackages__"],
srcs = glob(["*"]),
)
# For generating skydoc
@ -22,6 +21,12 @@ nodejs_binary(
],
entry_point = "ngdeps/node_modules/rollup/bin/rollup",
install_source_map_support = False,
visibility = ["//visibility:public"],
)
filegroup(
name = "empty_node_modules",
srcs = [],
)
nodejs_binary(
@ -29,4 +34,6 @@ nodejs_binary(
data = ["modify_tsconfig.js"],
entry_point = "angular/packages/bazel/src/modify_tsconfig.js",
install_source_map_support = False,
node_modules = ":empty_node_modules",
visibility = ["//visibility:public"],
)

View File

@ -1,6 +1,8 @@
package(default_visibility = ["//packages:__subpackages__"])
load("@build_bazel_rules_nodejs//:defs.bzl", "nodejs_binary")
# BEGIN-DEV-ONLY
load("//tools:defaults.bzl", "ts_library")
ts_library(
@ -15,6 +17,7 @@ ts_library(
],
)
# END-DEV-ONLY
nodejs_binary(
name = "api_extractor",
data = [
@ -25,3 +28,8 @@ nodejs_binary(
entry_point = "angular/packages/bazel/src/api-extractor/index.js",
visibility = ["//visibility:public"],
)
filegroup(
name = "package_assets",
srcs = ["BUILD.bazel"],
)

View File

@ -1,9 +1,9 @@
package(default_visibility = ["//visibility:public"])
load("@build_bazel_rules_nodejs//:defs.bzl", "nodejs_binary")
load("@build_bazel_rules_typescript//:defs.bzl", "ts_library")
exports_files(["ng_package.bzl"])
# BEGIN-DEV-ONLY
load("@build_bazel_rules_typescript//:defs.bzl", "ts_library")
ts_library(
name = "lib",
@ -16,6 +16,7 @@ ts_library(
],
)
# END-DEV-ONLY
nodejs_binary(
name = "packager",
data = [
@ -25,3 +26,10 @@ nodejs_binary(
entry_point = "angular/packages/bazel/src/ng_package/packager.js",
install_source_map_support = False,
)
exports_files(["ng_package.bzl"])
filegroup(
name = "package_assets",
srcs = glob(["*.bzl"]) + ["BUILD.bazel"],
)

View File

@ -32,7 +32,7 @@ nodejs_binary(
configuration_env_vars = ["compile"],
data = [
":ngc_lib",
"@build_bazel_rules_typescript//third_party/github.com/bazelbuild/bazel/src/main/protobuf:worker_protocol.proto",
"//packages/bazel/third_party/github.com/bazelbuild/bazel/src/main/protobuf:worker_protocol.proto",
"@ngdeps//source-map-support",
"@ngdeps//tslib",
],
@ -49,3 +49,9 @@ nodejs_binary(
entry_point = "angular/packages/bazel/src/ngc-wrapped/extract_i18n.js",
visibility = ["//visibility:public"],
)
filegroup(
name = "package_assets",
srcs = ["BUILD.bazel"],
visibility = ["//packages/bazel:__subpackages__"],
)

View File

@ -4,3 +4,8 @@ exports_files([
"protractor.conf.js",
"protractor_web_test.bzl",
])
filegroup(
name = "package_assets",
srcs = glob(["*"]),
)

View File

@ -22,7 +22,7 @@ ts_library(
protractor_web_test_suite(
name = "prodserver_test",
data = [
"@angular//packages/bazel/src/protractor/utils",
"@angular//" + "packages/bazel/src/protractor/utils",
"@npm//protractor",
],
on_prepare = ":protractor.on-prepare.js",
@ -33,7 +33,7 @@ protractor_web_test_suite(
protractor_web_test_suite(
name = "devserver_test",
data = [
"@angular//packages/bazel/src/protractor/utils",
"@angular//" + "packages/bazel/src/protractor/utils",
"@npm//protractor",
],
on_prepare = ":protractor.on-prepare.js",