| load("@aspect_bazel_lib//lib:jq.bzl", "jq") | |
| load("@aspect_rules_js//js:defs.bzl", "js_test") | |
| load("@aspect_rules_js//npm:defs.bzl", "npm_package") | |
| load(":version.bzl", "SM_VERSION") | |
| genrule( | |
| name = "license", | |
| srcs = ["//:license"], | |
| outs = [ | |
| "LICENSE", | |
| "NOTICE", | |
| ], | |
| cmd = "cp $(locations //:license) $(@D)", | |
| ) | |
| # The source manifest carries no version; stamping it here, platform pins | |
| # included, keeps every package at the root version.bzl value. | |
| jq( | |
| name = "package-json-stamped", | |
| srcs = ["package.json"], | |
| out = "stamped/package.json", | |
| filter = '.version = "%s" | .optionalDependencies |= map_values("%s")' % (SM_VERSION, SM_VERSION), | |
| ) | |
| npm_package( | |
| name = "selenium-manager", | |
| srcs = [ | |
| "README.md", | |
| "bin/selenium-manager.js", | |
| "index.js", | |
| ":license", | |
| ":package-json-stamped", | |
| ], | |
| package = "@selenium/manager", | |
| publishable = True, | |
| replace_prefixes = {"stamped/": ""}, | |
| tags = ["release-artifact"], | |
| version = SM_VERSION, | |
| visibility = ["//visibility:public"], | |
| ) | |
| js_test( | |
| name = "unit", | |
| size = "small", | |
| data = [ | |
| "bin/selenium-manager.js", | |
| "index.js", | |
| ], | |
| entry_point = "test/index_test.js", | |
| ) |