Skip to content

Commit 5f0d5e9

Browse files
gregmagolanAndrewKushnir
authored andcommitted
build: update to nodejs rules 0.34.0 and bazel 0.28.1 (angular#31824)
nodejs rules 0.34.0 now includes protractor_web_test_suite rule (via new @bazel/protractor rule) so we switch to that location for that rule in this PR so that /packages/bazel/src/protractor can be removed in a future PR this PR also brings in node toolchain support which was released in nodejs rules 0.33.0. this is a prerequisite for RBE for mac & windows users bazel schematics also updated with the same. @bazel/bazel 0.28.1 npm package includes transitive dep on hide-bazel-files so we're able to remove an explicit dep on that as well. PR Close angular#31824
1 parent 5296c04 commit 5f0d5e9

File tree

31 files changed

+246
-285
lines changed

31 files changed

+246
-285
lines changed

Diff for: WORKSPACE

+9-3
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,8 @@ http_archive(
2121
patch_args = ["-p1"],
2222
# Patch https://github.com/bazelbuild/rules_nodejs/pull/903
2323
patches = ["//tools:rollup_bundle_commonjs_ignoreGlobal.patch"],
24-
sha256 = "6d4edbf28ff6720aedf5f97f9b9a7679401bf7fca9d14a0fff80f644a99992b4",
25-
urls = ["https://github.com/bazelbuild/rules_nodejs/releases/download/0.32.2/rules_nodejs-0.32.2.tar.gz"],
24+
sha256 = "7c4a690268be97c96f04d505224ec4cb1ae53c2c2b68be495c9bd2634296a5cd",
25+
urls = ["https://github.com/bazelbuild/rules_nodejs/releases/download/0.34.0/rules_nodejs-0.34.0.tar.gz"],
2626
)
2727

2828
# Check the bazel version and download npm dependencies
@@ -53,7 +53,8 @@ Try running `yarn bazel` instead.
5353
# - 0.32.0 yarn_install and npm_install no longer puts build files under symlinked node_modules
5454
# - 0.32.1 remove override of @bazel/tsetse & exclude typescript lib declarations in node_module_library transitive_declarations
5555
# - 0.32.2 resolves bug in @bazel/hide-bazel-files postinstall step
56-
check_rules_nodejs_version(minimum_version_string = "0.32.2")
56+
# - 0.34.0 introduces protractor rule
57+
check_rules_nodejs_version(minimum_version_string = "0.34.0")
5758

5859
# Setup the Node.js toolchain
5960
node_repositories(
@@ -91,6 +92,11 @@ load("//packages/bazel:package.bzl", "rules_angular_dev_dependencies")
9192

9293
rules_angular_dev_dependencies()
9394

95+
# Load protractor dependencies
96+
load("@npm_bazel_protractor//:package.bzl", "npm_bazel_protractor_dependencies")
97+
98+
npm_bazel_protractor_dependencies()
99+
94100
# Load karma dependencies
95101
load("@npm_bazel_karma//:package.bzl", "rules_karma_dependencies")
96102

Diff for: integration/bazel/WORKSPACE

+7-2
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,8 @@ load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
88
# Fetch rules_nodejs so we can install our npm dependencies
99
http_archive(
1010
name = "build_bazel_rules_nodejs",
11-
sha256 = "6d4edbf28ff6720aedf5f97f9b9a7679401bf7fca9d14a0fff80f644a99992b4",
12-
urls = ["https://github.com/bazelbuild/rules_nodejs/releases/download/0.32.2/rules_nodejs-0.32.2.tar.gz"],
11+
sha256 = "7c4a690268be97c96f04d505224ec4cb1ae53c2c2b68be495c9bd2634296a5cd",
12+
urls = ["https://github.com/bazelbuild/rules_nodejs/releases/download/0.34.0/rules_nodejs-0.34.0.tar.gz"],
1313
)
1414

1515
# Fetch sass rules for compiling sass files
@@ -62,6 +62,11 @@ load("@npm//:install_bazel_dependencies.bzl", "install_bazel_dependencies")
6262

6363
install_bazel_dependencies()
6464

65+
# Load protractor dependencies
66+
load("@npm_bazel_protractor//:package.bzl", "npm_bazel_protractor_dependencies")
67+
68+
npm_bazel_protractor_dependencies()
69+
6570
# Load karma dependencies
6671
load("@npm_bazel_karma//:package.bzl", "rules_karma_dependencies")
6772

Diff for: integration/bazel/package.json

+3-4
Original file line numberDiff line numberDiff line change
@@ -23,11 +23,10 @@
2323
"@angular/compiler": "file:../../dist/packages-dist/compiler",
2424
"@angular/compiler-cli": "file:../../dist/packages-dist/compiler-cli",
2525
"@bazel/bazel": "file:../../node_modules/@bazel/bazel",
26-
"@bazel/hide-bazel-files": "0.32.2",
27-
"@bazel/karma": "0.32.2",
28-
"@bazel/typescript": "0.32.2",
26+
"@bazel/karma": "0.34.0",
27+
"@bazel/protractor": "0.34.0",
28+
"@bazel/typescript": "0.34.0",
2929
"@types/jasmine": "2.8.8",
30-
"protractor": "5.1.2",
3130
"typescript": "3.4.2"
3231
},
3332
"scripts": {

Diff for: integration/bazel/test/e2e/BUILD.bazel

+4-12
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
1+
load("@npm_bazel_protractor//:index.bzl", "protractor_web_test_suite")
12
load("@npm_bazel_typescript//:index.bzl", "ts_library")
2-
load("@npm_angular_bazel//:index.bzl", "protractor_web_test_suite")
33

44
ts_library(
55
name = "e2e",
66
testonly = 1,
77
srcs = ["app.spec.ts"],
88
tsconfig = ":tsconfig.json",
99
deps = [
10-
"@npm//@types",
10+
"@npm//@types/jasmine",
1111
"@npm//protractor",
1212
],
1313
)
@@ -18,19 +18,15 @@ ts_library(
1818
srcs = ["on-prepare.ts"],
1919
tsconfig = ":tsconfig.json",
2020
deps = [
21-
"@npm//@angular/bazel",
22-
"@npm//@types",
21+
"@npm//@bazel/protractor",
22+
"@npm//@types/node",
2323
"@npm//protractor",
2424
],
2525
)
2626

2727
protractor_web_test_suite(
2828
name = "devserver_test",
2929
configuration = "//:protractor.conf.js",
30-
data = [
31-
"@npm//@angular/bazel",
32-
"@npm//protractor",
33-
],
3430
on_prepare = ":ts_on_prepare",
3531
server = "//src:devserver",
3632
deps = [":e2e"],
@@ -39,10 +35,6 @@ protractor_web_test_suite(
3935
protractor_web_test_suite(
4036
name = "prodserver_test",
4137
configuration = "//:protractor.conf.js",
42-
data = [
43-
"@npm//@angular/bazel",
44-
"@npm//protractor",
45-
],
4638
on_prepare = ":ts_on_prepare",
4739
server = "//src:prodserver",
4840
deps = [":e2e"],

Diff for: integration/bazel/test/e2e/on-prepare.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import { browser } from 'protractor';
2-
import {OnPrepareConfig, runServer} from '@angular/bazel/protractor-utils';
2+
import {OnPrepareConfig, runServer} from '@bazel/protractor/protractor-utils';
33

44
export = function(config: OnPrepareConfig) {
55
const portFlag = /prodserver(\.exe)?$/.test(config.server) ? '-p' : '-port';

0 commit comments

Comments
 (0)