workspace(name = "e2e_packages")

load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")

http_archive(
    name = "build_bazel_rules_nodejs",
    sha256 = "64a71a64ac58b8969bb19b1c9258a973b6433913e958964da698943fb5521d98",
    urls = ["https://github.com/bazelbuild/rules_nodejs/releases/download/2.2.1/rules_nodejs-2.2.1.tar.gz"],
)

load("@build_bazel_rules_nodejs//:index.bzl", "check_rules_nodejs_version", "node_repositories", "npm_install", "yarn_install")

# Test that check_rules_nodejs_version works as expected
check_rules_nodejs_version(minimum_version_string = "0.11.2")

node_repositories()

npm_install(
    name = "e2e_packages_npm_install",
    args = ["--production"],
    data = ["//:postinstall.js"],
    package_json = "//:npm1/package.json",
    package_lock_json = "//:npm1/package-lock.json",
    symlink_node_modules = False,
)

npm_install(
    name = "e2e_packages_npm_install_duplicate_for_determinism_testing",
    args = ["--production"],
    data = ["//:postinstall.js"],
    package_json = "//:npm2/package.json",
    package_lock_json = "//:npm2/package-lock.json",
    symlink_node_modules = False,
)

yarn_install(
    name = "e2e_packages_yarn_install",
    args = ["--prod"],
    data = ["//:postinstall.js"],
    package_json = "//:yarn1/package.json",
    symlink_node_modules = False,
    yarn_lock = "//:yarn1/yarn.lock",
)

yarn_install(
    name = "e2e_packages_yarn_install_duplicate_for_determinism_testing",
    args = ["--prod"],
    data = ["//:postinstall.js"],
    package_json = "//:yarn2/package.json",
    symlink_node_modules = False,
    yarn_lock = "//:yarn2/yarn.lock",
)
