From 2aabbc51faa98487ffa888376f24548a4921e203 Mon Sep 17 00:00:00 2001 From: Jeremy Elbourn Date: Fri, 23 Mar 2018 15:32:10 -0700 Subject: [PATCH] fix(bazel): ng_package packages attr not forwarded to npm_package (#22967) PR Close #22967 --- packages/bazel/src/ng_package/ng_package.bzl | 6 +++++- packages/bazel/test/ng_package/example/BUILD.bazel | 9 +++++++++ .../ng_package/example/arbitrary-npm-package-main.js | 9 +++++++++ packages/bazel/test/ng_package/example_package.golden | 6 ++++++ 4 files changed, 29 insertions(+), 1 deletion(-) create mode 100644 packages/bazel/test/ng_package/example/arbitrary-npm-package-main.js diff --git a/packages/bazel/src/ng_package/ng_package.bzl b/packages/bazel/src/ng_package/ng_package.bzl index 76e06c773f..ede153ec8f 100644 --- a/packages/bazel/src/ng_package/ng_package.bzl +++ b/packages/bazel/src/ng_package/ng_package.bzl @@ -239,7 +239,11 @@ def _ng_package_impl(ctx): for d in ctx.attr.deps: devfiles = depset(transitive = [devfiles, d.files, d.node_sources]) - package_dir = create_package(ctx, devfiles.to_list(), [npm_package_directory]) + # Re-use the create_package function from the nodejs npm_package rule. + package_dir = create_package( + ctx, + devfiles.to_list(), + [npm_package_directory] + ctx.files.packages) return struct( files = depset([package_dir]) ) diff --git a/packages/bazel/test/ng_package/example/BUILD.bazel b/packages/bazel/test/ng_package/example/BUILD.bazel index fefc424bba..9b336fa8b9 100644 --- a/packages/bazel/test/ng_package/example/BUILD.bazel +++ b/packages/bazel/test/ng_package/example/BUILD.bazel @@ -1,6 +1,7 @@ package(default_visibility = ["//packages/bazel/test:__subpackages__"]) load("//packages/bazel:index.bzl", "ng_module", "ng_package") +load("//tools:defaults.bzl", "npm_package") ng_module( name = "example", @@ -21,6 +22,9 @@ ng_package( ":extra-styles.css", ], entry_point = "packages/bazel/test/ng_package/example/index.js", + packages = [ + ":arbitrary_npm_package", + ], deps = [ ":example", "//packages/bazel/test/ng_package/example/secondary", @@ -43,3 +47,8 @@ genrule( cmd = "echo World > $@", output_to_bindir = True, ) + +npm_package( + name = "arbitrary_npm_package", + srcs = [":arbitrary-npm-package-main.js"], +) diff --git a/packages/bazel/test/ng_package/example/arbitrary-npm-package-main.js b/packages/bazel/test/ng_package/example/arbitrary-npm-package-main.js new file mode 100644 index 0000000000..d9b04a8937 --- /dev/null +++ b/packages/bazel/test/ng_package/example/arbitrary-npm-package-main.js @@ -0,0 +1,9 @@ +/** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ + +const x = 1; diff --git a/packages/bazel/test/ng_package/example_package.golden b/packages/bazel/test/ng_package/example_package.golden index 3cbb38d515..d3b0337275 100644 --- a/packages/bazel/test/ng_package/example_package.golden +++ b/packages/bazel/test/ng_package/example_package.golden @@ -1,3 +1,4 @@ +arbitrary-npm-package-main.js arbitrary_bin.txt arbitrary_genfiles.txt bundles @@ -68,6 +69,11 @@ secondary secondary.d.ts secondary.metadata.json some-file.txt +--- arbitrary-npm-package-main.js --- + +const x = 1; + + --- arbitrary_bin.txt --- World