Skip to content

Commit 190a20f

Browse files
erock2112SkCQ
authored andcommitted
[bazel] Move google_chrome to MODULE.bazel
This just wraps the existing repository_rule into a module_extension and fixes the resulting path. Bug: b/458681039 Change-Id: Iccbaa4393ab68d48842d28bdf61dc01e3dd7d4e1 Reviewed-on: https://skia-review.googlesource.com/c/buildbot/+/1122263 Reviewed-by: Kaylee Lubick <[email protected]> Commit-Queue: Kaylee Lubick <[email protected]> Auto-Submit: Eric Boren <[email protected]>
1 parent dd22b78 commit 190a20f

File tree

7 files changed

+49
-15
lines changed

7 files changed

+49
-15
lines changed

MODULE.bazel

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -650,3 +650,12 @@ http_file(
650650
google_cloud_sdk = use_extension("//bazel/external:google_cloud_sdk.bzl", "google_cloud_sdk")
651651
google_cloud_sdk.download(name = "google_cloud_sdk")
652652
use_repo(google_cloud_sdk, "google_cloud_sdk")
653+
654+
####################################################################################################
655+
# Google Chrome and Fonts (needed for Karma and Puppeteer tests, respectively).
656+
####################################################################################################
657+
658+
# TODO(borenet): we should be able to use this from rules_browsers.
659+
google_chrome = use_extension("//bazel/external:google_chrome.bzl", "google_chrome")
660+
google_chrome.download(name = "google_chrome")
661+
use_repo(google_chrome, "google_chrome")

MODULE.bazel.lock

Lines changed: 17 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

WORKSPACE

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -32,12 +32,3 @@ load("@bazel_toolchains//rules/exec_properties:exec_properties.bzl", "rbe_exec_p
3232
rbe_exec_properties(
3333
name = "exec_properties",
3434
)
35-
36-
# #################################################################################
37-
# # Google Chrome and Fonts (needed for Karma and Puppeteer tests, respectively). #
38-
# #################################################################################
39-
40-
# TODO(borenet): we should be able to use this from rules_browsers.
41-
load("//bazel/external:google_chrome.bzl", "google_chrome")
42-
43-
google_chrome(name = "google_chrome")

bazel/external/google_chrome.bzl

Lines changed: 20 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ _DEB_PACKAGES_LINUX_AMD64 = [
5353
},
5454
]
5555

56-
def _google_chrome_impl(repository_ctx):
56+
def _google_chrome_repo_impl(repository_ctx):
5757
is_linux = repository_ctx.os.name.lower().startswith("linux")
5858

5959
if not is_linux:
@@ -395,7 +395,24 @@ filegroup(
395395
)
396396
""")
397397

398-
google_chrome = repository_rule(
399-
implementation = _google_chrome_impl,
398+
_google_chrome = repository_rule(
399+
implementation = _google_chrome_repo_impl,
400400
doc = "Hermetically installs Google Chrome, and all required libraries and fonts.",
401401
)
402+
403+
_download = tag_class(attrs = {
404+
"name": attr.string(mandatory = True),
405+
})
406+
407+
def _google_chrome_impl(ctx):
408+
for module in ctx.modules:
409+
for tag in module.tags.download:
410+
_google_chrome(name = tag.name)
411+
412+
google_chrome = module_extension(
413+
doc = "Bzlmod extension used to hermetically download Google Chrome, and all required libraries and fonts.",
414+
implementation = _google_chrome_impl,
415+
tag_classes = {
416+
"download": _download,
417+
},
418+
)

debugger-app/modules/debugger-page-sk/debugger.karma.conf.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ const isBazelTest = !process.env.BUILD_WORKSPACE_DIRECTORY; // Set when running
2222
const bazelRunfilesDir = `${process.env.RUNFILES_DIR}/${process.env.TEST_WORKSPACE}`;
2323

2424
// Forces Karma to use the Bazel-downloaded Google Chrome browser.
25-
process.env.CHROME_BIN = `${bazelRunfilesDir}/external/google_chrome/opt/google/chrome/chrome`;
25+
process.env.CHROME_BIN = `${bazelRunfilesDir}/external/_main~google_chrome~google_chrome/opt/google/chrome/chrome`;
2626

2727
module.exports = function (config) {
2828
config.set({

infra-sk/karma_test/karma.conf.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ const isBazelTest = !process.env.BUILD_WORKSPACE_DIRECTORY; // Set when running
2626
const bazelRunfilesDir = `${process.env.RUNFILES_DIR}/${process.env.TEST_WORKSPACE}`;
2727

2828
// Forces Karma to use the Bazel-downloaded Google Chrome browser.
29-
process.env.CHROME_BIN = `${bazelRunfilesDir}/external/google_chrome/opt/google/chrome/chrome`;
29+
process.env.CHROME_BIN = `${bazelRunfilesDir}/external/_main~google_chrome~google_chrome/opt/google/chrome/chrome`;
3030

3131
module.exports = function (config) {
3232
config.set({

shaders/shaders.karma.conf.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ const isBazelTest = !process.env.BUILD_WORKSPACE_DIRECTORY; // Set when running
3333
const bazelRunfilesDir = `${process.env.RUNFILES_DIR}/${process.env.TEST_WORKSPACE}`;
3434

3535
// Forces Karma to use the Bazel-downloaded Google Chrome browser.
36-
process.env.CHROME_BIN = `${bazelRunfilesDir}/external/google_chrome/opt/google/chrome/chrome`;
36+
process.env.CHROME_BIN = `${bazelRunfilesDir}/external/_main~google_chrome~google_chrome/opt/google/chrome/chrome`;
3737

3838
module.exports = function (config) {
3939
config.set({

0 commit comments

Comments
 (0)