build(dev-infra): update package.json and :npm_package (#36434)
* Set up dev-infra's :npm_package to also contain benchmarking suite * Add benchmarking deps to dev-infra's package.json * Add a bazel workspace to dev-infra's package.json. This is so that when a project wants to use dev-infra's code and macros, they can just import the macros from their node_modules instead of loading it separately PR Close #36434
This commit is contained in:
parent
b7f2a033df
commit
d6f6cd0cb1
|
@ -34,10 +34,30 @@ genrule(
|
||||||
|
|
||||||
pkg_npm(
|
pkg_npm(
|
||||||
name = "npm_package",
|
name = "npm_package",
|
||||||
|
srcs = [
|
||||||
|
"BUILD.bazel",
|
||||||
|
"//dev-infra/benchmark:files",
|
||||||
|
],
|
||||||
|
substitutions = {
|
||||||
|
# angular/angular should not consume it's own packages, so we use
|
||||||
|
# substitutions to replace these in the deployed version of dev-infra.
|
||||||
|
"//dev-infra/": "@npm_dev_infra//",
|
||||||
|
"//packages/benchpress": "@npm//@angular/benchpress",
|
||||||
|
"//packages/bazel/src:esm5.bzl": "@npm_angular_bazel//src:esm5.bzl",
|
||||||
|
"//packages/zone.js/dist:zone.js": "@npm//:node_modules/zone.js/dist/zone.js",
|
||||||
|
"//packages/core": "@npm//@angular/core",
|
||||||
|
"//packages/platform-browser": "@npm//@angular/platform-browser",
|
||||||
|
|
||||||
|
# This substitution is particularly verbose because we need to make sure
|
||||||
|
# that only things available via Angular Bazel are imported from
|
||||||
|
# tools/defaults.bzl.
|
||||||
|
"load\(\"//tools:defaults.bzl\", \"ng_module\"\)": "load(\"@npm_angular_bazel//:index.bzl\", \"ng_module\")",
|
||||||
|
},
|
||||||
visibility = ["//visibility:public"],
|
visibility = ["//visibility:public"],
|
||||||
deps = [
|
deps = [
|
||||||
":cli",
|
":cli",
|
||||||
":package-json",
|
":package-json",
|
||||||
|
"//dev-infra/benchmark/driver-utilities",
|
||||||
"//dev-infra/commit-message",
|
"//dev-infra/commit-message",
|
||||||
"//dev-infra/ts-circular-dependencies",
|
"//dev-infra/ts-circular-dependencies",
|
||||||
],
|
],
|
||||||
|
|
|
@ -8,14 +8,42 @@
|
||||||
"ng-dev": "./cli.js",
|
"ng-dev": "./cli.js",
|
||||||
"ts-circular-deps": "./ts-circular-dependencies/index.js"
|
"ts-circular-deps": "./ts-circular-dependencies/index.js"
|
||||||
},
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"fs-extra": "<from-root>",
|
||||||
|
"node-uuid": "<from-root>"
|
||||||
|
},
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
|
"@angular/bazel": "^9.0.0",
|
||||||
|
"@angular/core": "^9.0.0",
|
||||||
|
"@angular/platform-browser": "^9.0.0",
|
||||||
|
"@angular/benchpress": "^0.1.0",
|
||||||
|
"@angular-devkit/build-optimizer": "<from-root>",
|
||||||
|
"@bazel/protractor": "<from-root>",
|
||||||
|
"@bazel/terser": "<from-root>",
|
||||||
|
"@bazel/typescript": "<from-root>",
|
||||||
|
"brotli": "<from-root>",
|
||||||
"chalk": "<from-root>",
|
"chalk": "<from-root>",
|
||||||
"glob": "<from-root>",
|
"glob": "<from-root>",
|
||||||
|
"json5": "<from-root>",
|
||||||
"minimatch": "<from-root>",
|
"minimatch": "<from-root>",
|
||||||
|
"node-uuid": "<from-root>",
|
||||||
|
"protractor": "<from-root>",
|
||||||
|
"rollup": "<from-root>",
|
||||||
|
"rollup-plugin-commonjs": "<from-root>",
|
||||||
|
"rollup-plugin-node-resolve": "<from-root>",
|
||||||
|
"rollup-plugin-sourcemaps": "<from-root>",
|
||||||
|
"selenium-webdriver": "<from-root>",
|
||||||
"shelljs": "<from-root>",
|
"shelljs": "<from-root>",
|
||||||
"typescript": "<from-root>",
|
"typescript": "<from-root>",
|
||||||
"yaml": "<from-root>",
|
"yaml": "<from-root>",
|
||||||
"yargs": "<from-root>",
|
"yargs": "<from-root>",
|
||||||
"tslib": "<from-root>"
|
"tslib": "<from-root>",
|
||||||
|
"zone.js": "^0.10.3"
|
||||||
|
},
|
||||||
|
"bazelWorkspaces": {
|
||||||
|
"npm_dev_infra": {
|
||||||
|
"version": "0.0.0-PLACEHOLDER",
|
||||||
|
"rootPath": "."
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,12 +0,0 @@
|
||||||
package(default_visibility = ["//visibility:public"])
|
|
||||||
|
|
||||||
# Make source files available for distribution via pkg_npm
|
|
||||||
filegroup(
|
|
||||||
name = "files",
|
|
||||||
srcs = glob(["*"]) + [
|
|
||||||
"//dev-infra/benchmark/brotli-cli:files",
|
|
||||||
"//dev-infra/benchmark/browsers:files",
|
|
||||||
"//dev-infra/benchmark/component_benchmark:files",
|
|
||||||
"//dev-infra/benchmark/ng_rollup_bundle:files",
|
|
||||||
],
|
|
||||||
)
|
|
Loading…
Reference in New Issue