| # Copyright 2017 The Bazel Authors. All rights reserved. |
| # |
| # Licensed under the Apache License, Version 2.0 (the "License"); |
| # you may not use this file except in compliance with the License. |
| # You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, software |
| # distributed under the License is distributed on an "AS IS" BASIS, |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| # See the License for the specific language governing permissions and |
| # limitations under the License. |
| |
| workspace(name = "e2e_nodejs_image") |
| |
| load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") |
| |
| http_archive( |
| name = "build_bazel_rules_nodejs", |
| sha256 = "94070eff79305be05b7699207fbac5d2608054dd53e6109f7d00d923919ff45a", |
| urls = ["https://github.com/bazelbuild/rules_nodejs/releases/download/5.8.2/rules_nodejs-5.8.2.tar.gz"], |
| ) |
| |
| load("@build_bazel_rules_nodejs//:repositories.bzl", "build_bazel_rules_nodejs_dependencies") |
| |
| build_bazel_rules_nodejs_dependencies() |
| |
| load("@build_bazel_rules_nodejs//:index.bzl", "yarn_install") |
| |
| yarn_install( |
| name = "npm", |
| node_repository = "node16", |
| package_json = "//:package.json", |
| yarn_lock = "//:yarn.lock", |
| ) |
| |
| yarn_install( |
| name = "npm_linux", |
| # The `sharp` package from npm looks for these in a post-install script |
| # and determines which native code package to download. |
| # See https://www.electronjs.org/docs/latest/tutorial/using-native-node-modules#using-npm |
| environment = { |
| "npm_config_arch": "x64", |
| "npm_config_platform": "linux", |
| }, |
| package_json = "//:package.json", |
| yarn_lock = "//:yarn.lock", |
| ) |
| |
| http_archive( |
| name = "io_bazel_rules_docker", |
| sha256 = "db427107e4c36a3713c24daf5fcdf7719fe664e0c36e089b5b16d15cf331ce60", |
| strip_prefix = "rules_docker-8a4f73fb29a64ba813087220b200f49a1ca10faa", |
| urls = ["https://github.com/bazelbuild/rules_docker/archive/8a4f73fb29a64ba813087220b200f49a1ca10faa.tar.gz"], |
| ) |
| |
| load("@io_bazel_rules_docker//repositories:repositories.bzl", container_repositories = "repositories") |
| |
| container_repositories() |
| |
| load("@io_bazel_rules_docker//repositories:deps.bzl", container_deps = "deps") |
| |
| container_deps() |
| |
| load("@io_bazel_rules_docker//nodejs:image.bzl", nodejs_image_repositories = "repositories") |
| |
| nodejs_image_repositories() |
| |
| load("@rules_nodejs//nodejs:repositories.bzl", "nodejs_register_toolchains") |
| |
| # The order matters because Bazel will provide the first registered toolchain when a rule asks Bazel to select it |
| # This applies to the resolved_toolchain |
| nodejs_register_toolchains( |
| name = "node16", |
| node_version = "16.5.0", |
| ) |
| |
| nodejs_register_toolchains( |
| name = "node15", |
| node_version = "15.14.0", |
| ) |