| package( |
| default_visibility = ["//visibility:public"]) |
| |
| load('//tools/bzl:genrule2.bzl', 'genrule2') |
| load( |
| "//tools/bzl:js.bzl", |
| "bower_component_bundle", "vulcanize", |
| "bower_component", "js_component") |
| |
| vulcanize( |
| name = "gr-app", |
| app = 'elements/gr-app.html', |
| srcs = glob( |
| ['**/*.html', '**/*.js'], |
| exclude = [ |
| 'bower_components/**', |
| 'index.html', |
| 'test/**', |
| '**/*_test.html', |
| ]), |
| deps = [ "//polygerrit-ui:polygerrit_components.bower_components"], |
| ) |
| |
| filegroup( |
| name = "top_sources", |
| srcs = [ |
| 'favicon.ico', |
| 'index.html', |
| ], |
| ) |
| |
| filegroup( |
| name = "css_sources", |
| srcs = glob(['styles/**/*.css']) |
| ) |
| |
| genrule2( |
| name = "polygerrit_ui", |
| cmd = " && ".join([ |
| "mkdir -p $$TMP/polygerrit_ui/{styles,fonts,bower_components/{highlightjs,webcomponentsjs},elements}", |
| "cp $(locations :gr-app) $$TMP/polygerrit_ui/elements/", |
| "cp $(locations //lib/fonts:sourcecodepro) $$TMP/polygerrit_ui/fonts/", |
| "for f in $(locations :top_sources); do cp $$f $$TMP/polygerrit_ui/; done", |
| "for f in $(locations :css_sources); do cp $$f $$TMP/polygerrit_ui/styles; done", |
| "for f in $(locations //lib/js:highlightjs_files); do cp $$f $$TMP/polygerrit_ui/bower_components/highlightjs/ ; done", |
| "unzip -qd $$TMP/polygerrit_ui/bower_components $(location @webcomponentsjs//:zipfile) webcomponentsjs/webcomponents-lite.js", |
| "cd $$TMP", |
| "find . -exec touch -t 198001010000 '{}' ';'", |
| "zip -qr $$ROOT/$@ *", |
| ]), |
| srcs = [ |
| "//lib/fonts:sourcecodepro", |
| "//lib/js:highlightjs_files", |
| ":top_sources", |
| ":css_sources", |
| ":gr-app", |
| # we extract from the zip, but depend on the component for license checking. |
| "@webcomponentsjs//:zipfile", |
| "//lib/js:webcomponentsjs", |
| ], |
| outs = [ "polygerrit_ui.zip" ], |
| ) |
| |
| bower_component_bundle( |
| name = 'test_components', |
| testonly = 1, |
| deps = [ |
| '//polygerrit-ui:polygerrit_components.bower_components', |
| '//lib/js:iron-test-helpers', |
| '//lib/js:test-fixture', |
| '//lib/js:web-component-tester', |
| ], |
| ) |
| |
| filegroup( |
| name = "pg_code", |
| srcs = glob([ |
| '**/*.html', |
| '**/*.js', |
| ], exclude = [ |
| 'bower_components/**', |
| ]) |
| ) |
| |
| genrule2( |
| name = "pg_code_zip", |
| outs = [ "pg_code.zip", ], |
| srcs = [ ":pg_code" ], |
| cmd = " && ".join([ |
| ("tar -hcf- $(locations :pg_code) |" |
| + " tar --strip-components=2 -C $$TMP/ -xf-"), |
| "cd $$TMP", |
| "find . -exec touch -t 198001010000 '{}' ';'", |
| "zip -rq $$ROOT/$@ *"]) |
| ) |
| |
| sh_test( |
| name = "wct_test", |
| srcs = [ "wct_test.sh" ], |
| data = [ |
| ":pg_code.zip", |
| ":test_components.zip", |
| "test/index.html", |
| ], |
| size = "large", |
| # Should not run sandboxed. |
| tags = ["local", "manual"], |
| ) |