gerrit/Documentation
Dave Borowitz ffe301570c Build bower_components with buck
Add support for downloading npm binaries including dependencies and
running them in buck genrules. In npm land, transitive dependencies
are generally included in the package distribution, and there are a
*lot* of them. Since we aren't redistributing these binaries and
they're only part of the build process, we don't have to worry too
much about licensing, only that they don't have anything totally
crazy.

We assume packages have a certain format and we can detect the binary
to run from the genrule output filename. Actually running the binary
is tricky as well, since we have to extract it first. But it might be
large, so we don't want to extract it on every invocation; and naive
extraction to a common location (in buck-out) is racy. So we need a
custom extractor scheme using atomic rename to make this work.

Download bower as an npm package and use it to download bower
packages. Bower packages can come from a variety of sources, usually
git repositories, so we can't simply use download_file. There is
additional logic in bower to read bower.json and strip out unneeded
files, so I didn't want to get into reimplementing that. The tricky
thing about bower is convincing it to avoid transitive dependencies so
we can let Buck handle parallelism and caching. To do this, we need to
read the package information from the upstream bower repository, and
explicitly ignore all listed dependencies when downloading.

We combine the flattened list of bower packages in a single
bower_components rule. It would be nice to have deps of each
bower_component so we didn't need to flatten these, but Buck genrules
don't have deps so this is a nonstarter. Considering we only expect to
have a single bower_components for the whole project, hopefully this
is not too onerous.

This change just gets us the bower_components directory. We still have
some work to do to use this from Gerrit. Plus even more work to
replace the gulpfile and actually package this stuff together into a
compiled JS app for the war distribution.

Change-Id: Id277d2d812ffcc3bce87ff00b5894bacdffc038e
2015-11-12 19:01:53 -05:00
..
images Remove documentation of "Edit Message" feature 2015-01-30 05:32:46 +00:00
.gitignore Ignore /Documentation/*.html 2015-05-06 11:25:51 -07:00
access-control.txt Add a Maintain Server global capability 2015-06-12 11:15:57 -04:00
asciidoc.defs Pack prettify.min.{js,css} into documentation. 2015-06-26 03:04:09 +00:00
BUCK Build bower_components with buck 2015-11-12 19:01:53 -05:00
cmd-apropos.txt Use the new section title style in Asciidoctor. 2013-12-20 12:55:51 -08:00
cmd-ban-commit.txt Use the new section title style in Asciidoctor. 2013-12-20 12:55:51 -08:00
cmd-cherry-pick.txt Use the new section title style in Asciidoctor. 2013-12-20 12:55:51 -08:00
cmd-close-connection.txt Add command to close SSH connection 2015-01-19 09:54:55 -05:00
cmd-create-account.txt Use the new section title style in Asciidoctor. 2013-12-20 12:55:51 -08:00
cmd-create-branch.txt Use the new section title style in Asciidoctor. 2013-12-20 12:55:51 -08:00
cmd-create-group.txt Use the new section title style in Asciidoctor. 2013-12-20 12:55:51 -08:00
cmd-create-project.txt Remove deprecated --name option from create project SSH command 2015-07-21 15:42:04 +02:00
cmd-flush-caches.txt Add a Maintain Server global capability 2015-06-12 11:15:57 -04:00
cmd-gc.txt Add "aggressive" option to ssh command "GC" 2015-03-19 15:45:29 +01:00
cmd-gsql.txt Use the new section title style in Asciidoctor. 2013-12-20 12:55:51 -08:00
cmd-hook-commit-msg.txt Use the new section title style in Asciidoctor. 2013-12-20 12:55:51 -08:00
cmd-index-activate.txt Add ssh command to activate the latest index 2015-07-09 08:05:11 -04:00
cmd-index-start.txt Add ssh command to restart online indexer 2015-07-09 08:05:11 -04:00
cmd-index.txt Merge branch 'stable-2.11' 2015-07-14 11:33:11 +09:00
cmd-kill.txt Revert "== GERRIT" in documentation. 2014-03-25 19:44:49 +00:00
cmd-logging-ls-level.txt Add SSH to configure logging level at runtime 2014-09-26 09:13:35 -04:00
cmd-logging-set-level.txt Add SSH to configure logging level at runtime 2014-09-26 09:13:35 -04:00
cmd-ls-groups.txt Use the new section title style in Asciidoctor. 2013-12-20 12:55:51 -08:00
cmd-ls-members.txt Documentation: Format fix headlines 2014-03-24 18:32:42 -07:00
cmd-ls-projects.txt Use the new section title style in Asciidoctor. 2013-12-20 12:55:51 -08:00
cmd-ls-user-refs.txt Use the new section title style in Asciidoctor. 2013-12-20 12:55:51 -08:00
cmd-plugin-enable.txt Documentation update for cmd-plugin 2015-01-21 11:03:08 +09:00
cmd-plugin-install.txt Documentation update for cmd-plugin 2015-01-21 11:03:08 +09:00
cmd-plugin-ls.txt Correct documentation of required capabilities for listing plugins 2015-04-30 00:58:28 +00:00
cmd-plugin-reload.txt Documentation update for cmd-plugin 2015-01-21 11:03:08 +09:00
cmd-plugin-remove.txt Documentation update for cmd-plugin 2015-01-21 11:03:08 +09:00
cmd-query.txt Terminate sortkey with prejudice 2014-12-23 14:48:06 -08:00
cmd-receive-pack.txt Use the new section title style in Asciidoctor. 2013-12-20 12:55:51 -08:00
cmd-rename-group.txt Use the new section title style in Asciidoctor. 2013-12-20 12:55:51 -08:00
cmd-review.txt Add --rebase option to review command 2014-09-09 13:08:04 -04:00
cmd-set-account.txt Fix minor typo in set-account command documentation 2015-05-12 05:03:16 +00:00
cmd-set-head.txt Update set-head ssh command documentation 2015-03-05 09:50:10 +01:00
cmd-set-members.txt Use the new section title style in Asciidoctor. 2013-12-20 12:55:51 -08:00
cmd-set-project-parent.txt Use the new section title style in Asciidoctor. 2013-12-20 12:55:51 -08:00
cmd-set-project.txt Fix inconsistency in documentation 2014-05-07 14:51:17 +02:00
cmd-set-reviewers.txt Consistently refer to Change-Id in documentation 2014-09-04 13:12:24 +09:00
cmd-show-caches.txt Add a Maintain Server global capability 2015-06-12 11:15:57 -04:00
cmd-show-connections.txt Use the new section title style in Asciidoctor. 2013-12-20 12:55:51 -08:00
cmd-show-queue.txt Use the new section title style in Asciidoctor. 2013-12-20 12:55:51 -08:00
cmd-stream-events.txt Add the ability to run a new project created hook 2015-04-21 14:53:53 +09:00
cmd-suexec.txt Use the new section title style in Asciidoctor. 2013-12-20 12:55:51 -08:00
cmd-test-submit-rule.txt Use the new section title style in Asciidoctor. 2013-12-20 12:55:51 -08:00
cmd-test-submit-type.txt Use the new section title style in Asciidoctor. 2013-12-20 12:55:51 -08:00
cmd-version.txt Use the new section title style in Asciidoctor. 2013-12-20 12:55:51 -08:00
config-auto-site-initialization.txt Control which plugins will be auto installed on auto init 2014-02-24 11:11:04 +01:00
config-cla.txt Remove contact store functionality 2015-08-28 14:08:58 -04:00
config-gerrit.txt Add hmac-sha2-256 and hmac-sha2-512 as MACs for sshd 2015-11-11 01:43:19 +00:00
config-gitweb.txt Document gitweb URL set, cgi unset configuration 2015-06-22 11:09:31 -07:00
config-hooks.txt Merge branch 'stable-2.11' 2015-04-27 18:25:04 +09:00
config-labels.txt Provide a way to lock patch sets 2015-11-09 12:51:13 -08:00
config-login-register.txt Use the new section title style in Asciidoctor. 2013-12-20 12:55:51 -08:00
config-mail.txt Add notification when adding keys 2015-09-08 13:37:55 +09:00
config-plugins.txt Add metrics reporter plugins to the list of plugins 2015-11-11 19:50:03 +00:00
config-project-config.txt Add project config boolean to require signed push on a project 2015-10-21 09:09:20 -04:00
config-reverseproxy.txt Update reverse proxy configuration example for nginx 2015-07-06 01:50:38 +00:00
config-sso.txt OpenID: Remove support for Google Accounts 2015-03-01 22:25:50 +01:00
config-themes.txt Remove deprecated gerrit_addHistoryHook(f) JavaScript function 2015-07-21 16:02:44 +02:00
config-validation.txt Added OutgoingEmailValidationListener 2015-01-06 09:02:39 +01:00
config.defs Pack prettify.min.{js,css} into documentation. 2015-06-26 03:04:09 +00:00
database-setup.txt database-setup: Fix typo in Derby section anchor name 2015-10-22 13:59:15 +09:00
dev-buck.txt Update installation guide, gcc is required to build buck 2015-11-11 18:11:49 +00:00
dev-build-plugins.txt Add HOWTO documentation about building of plugins 2014-01-24 23:16:25 +01:00
dev-contributing.txt Document 'Feature' footer in contribution guide 2015-06-02 12:52:48 +02:00
dev-design.txt Update out of date hyperlinks 2015-06-17 22:38:13 +00:00
dev-eclipse.txt Dev doc: Document the maxCompiledUnitsAtOnce setting in Eclipse 2015-08-28 10:31:47 +09:00
dev-inspector.txt Fix various spelling mistakes 2015-05-19 15:05:26 +09:00
dev-plugins.txt Set version to 2.13-SNAPSHOT 2015-11-09 21:44:27 +00:00
dev-readme.txt Update buck to the latest version 2015-10-09 08:51:35 +02:00
dev-release-deploy-config.txt dev-release-deploy-config: Update Maven config for Google Storage 2015-04-17 14:06:49 +09:00
dev-release-subproject.txt Use the new section title style in Asciidoctor. 2013-12-20 12:55:51 -08:00
dev-release.txt Update release documentation to update links in new homepage 2015-07-14 11:46:20 +09:00
dev-rest-api.txt Make Content-Type examples consistent with actual server output 2015-01-06 06:54:12 +00:00
doc.css.in Tweak doc css to avoid overlapping with search box 2015-09-16 23:29:20 -07:00
error-branch-not-found.txt Doc: Consistently refer to "Web UI" rather than "WebUI" 2014-05-02 17:21:22 +09:00
error-change-closed.txt Doc: Consistently refer to "Web UI" rather than "WebUI" 2014-05-02 17:21:22 +09:00
error-change-does-not-belong-to-project.txt Consistently refer to Change-Id in documentation 2014-09-04 13:12:24 +09:00
error-change-not-found.txt Consistently refer to Change-Id in documentation 2014-09-04 13:12:24 +09:00
error-change-upload-blocked.txt Use the new section title style in Asciidoctor. 2013-12-20 12:55:51 -08:00
error-commit-already-exists.txt Merge branch 'stable-2.8' 2014-03-11 18:24:13 +09:00
error-contains-banned-commit.txt Use the new section title style in Asciidoctor. 2013-12-20 12:55:51 -08:00
error-has-duplicates.txt Consistently refer to Change-Id in documentation 2014-09-04 13:12:24 +09:00
error-invalid-author.txt Use the new section title style in Asciidoctor. 2013-12-20 12:55:51 -08:00
error-invalid-changeid-line.txt Doc: Consistently refer to "Web UI" rather than "WebUI" 2014-05-02 17:21:22 +09:00
error-invalid-committer.txt Fix reference to Forge Committer access right in documentation 2014-07-08 07:24:01 +00:00
error-messages.txt Improve reject message if Change-Id is in subject 2014-02-21 09:25:33 +01:00
error-missing-changeid.txt Consistently refer to Change-Id in documentation 2014-09-04 13:12:24 +09:00
error-missing-subject.txt Improve reject message if Change-Id is in subject 2014-02-21 09:25:33 +01:00
error-multiple-changeid-lines.txt Doc: Consistently refer to "Web UI" rather than "WebUI" 2014-05-02 17:21:22 +09:00
error-no-changes-made.txt Use the new section title style in Asciidoctor. 2013-12-20 12:55:51 -08:00
error-no-common-ancestry.txt Use the new section title style in Asciidoctor. 2013-12-20 12:55:51 -08:00
error-no-new-changes.txt Update no-new-change error message documentation 2015-10-09 14:58:49 +00:00
error-non-fast-forward.txt Use the new section title style in Asciidoctor. 2013-12-20 12:55:51 -08:00
error-not-a-gerrit-administrator.txt Use the new section title style in Asciidoctor. 2013-12-20 12:55:51 -08:00
error-not-allowed-to-upload-merges.txt Use the new section title style in Asciidoctor. 2013-12-20 12:55:51 -08:00
error-not-permitted-to-create.txt Use the new section title style in Asciidoctor. 2013-12-20 12:55:51 -08:00
error-not-signed-off-by.txt Use the new section title style in Asciidoctor. 2013-12-20 12:55:51 -08:00
error-not-valid-ref.txt Use the new section title style in Asciidoctor. 2013-12-20 12:55:51 -08:00
error-permission-denied.txt Doc: Consistently refer to "Web UI" rather than "WebUI" 2014-05-02 17:21:22 +09:00
error-prohibited-by-gerrit.txt Work around asciidoctor handling of nested ` and * 2015-04-06 17:22:37 +09:00
error-project-not-found.txt Doc: Consistently refer to "Web UI" rather than "WebUI" 2014-05-02 17:21:22 +09:00
error-push-fails-due-to-commit-message.txt Use the new section title style in Asciidoctor. 2013-12-20 12:55:51 -08:00
error-squash-commits-first.txt Minor improvements in the 'squash commits first' error documentation 2014-09-05 09:25:33 +09:00
error-upload-denied.txt Added searchbox to documentation. 2013-11-05 12:49:43 -08:00
gen_licenses.py Build bower_components with buck 2015-11-12 19:01:53 -05:00
i18n-readme.txt Use the new section title style in Asciidoctor. 2013-12-20 12:55:51 -08:00
index.txt Remove contact store functionality 2015-08-28 14:08:58 -04:00
install-j2ee.txt Fix broken formatting in Tomcat reverse proxy config documentation 2014-10-21 11:04:42 +09:00
install-quick.txt Merge branch 'stable-2.11' 2015-09-29 11:05:34 +09:00
install.txt Offer downloads through https://www.gerritcodereview.com/download/ 2015-06-12 19:07:37 -07:00
intro-project-owner.txt Use consistent lowercase for "gitweb" 2015-06-12 13:24:46 -04:00
intro-quick.txt Consistently refer to Change-Id in documentation 2014-09-04 13:12:24 +09:00
intro-user.txt Move 'User Refs' docs to the intro-user doc. 2015-09-04 14:55:15 +00:00
js-api.txt Make ServerInfo accessible by plugins 2015-08-05 09:39:24 +02:00
json.txt Remove the state SUBMITTED altogether 2015-07-10 13:51:01 -07:00
license.defs gen_licenses.py: Use buck query for license generation 2015-11-12 18:40:30 -05:00
pgm-daemon.txt Allow to use --enable-httpd with --slave 2014-10-30 11:02:24 -04:00
pgm-gsql.txt Use the new section title style in Asciidoctor. 2013-12-20 12:55:51 -08:00
pgm-index.txt Add documentation for SecureStore 2015-02-23 09:53:05 +01:00
pgm-init.txt Add documentation of the --dev option on the init command 2015-11-08 12:12:28 -08:00
pgm-LocalUsernamesToLowerCase.txt Doc: Consistently refer to "Web UI" rather than "WebUI" 2014-05-02 17:21:22 +09:00
pgm-prolog-shell.txt Use the new section title style in Asciidoctor. 2013-12-20 12:55:51 -08:00
pgm-reindex.txt Remove --recheck-mergeable option from reindex documentation 2015-09-24 10:10:40 +02:00
pgm-rulec.txt Use the new section title style in Asciidoctor. 2013-12-20 12:55:51 -08:00
pgm-SwitchSecureStore.txt Add documentation for SecureStore 2015-02-23 09:53:05 +01:00
project-configuration.txt Merge branch 'stable-2.11' 2015-05-04 16:44:45 +02:00
prolog-change-facts.txt Use the new section title style in Asciidoctor. 2013-12-20 12:55:51 -08:00
prolog-cookbook.txt Update out of date hyperlinks 2015-06-17 22:38:13 +00:00
replace_macros.py tools: use python on path 2015-06-18 17:10:11 +02:00
rest-api-access.txt Make Content-Type examples consistent with actual server output 2015-01-06 06:54:12 +00:00
rest-api-accounts.txt SideBySide: Allow to activate match brackets Codemirror addon 2015-11-09 11:25:35 -08:00
rest-api-changes.txt Return list of reviewers as part of ChangeInfo 2015-11-11 12:16:51 -08:00
rest-api-config.txt Allow disabling GPG key editing while leaving signed push enabled 2015-10-09 10:04:18 -04:00
rest-api-documentation.txt Don't limit tables to 50% width in REST API documentation 2014-11-25 18:35:53 +09:00
rest-api-groups.txt Adds group suggestions into ListGroups REST API. 2015-09-17 10:35:31 -07:00
rest-api-plugins.txt Make Content-Type examples consistent with actual server output 2015-01-06 06:54:12 +00:00
rest-api-projects.txt Add project config boolean to require signed push on a project 2015-10-21 09:09:20 -04:00
rest-api.txt Consistently format HTTP response codes in REST API documentation 2015-01-21 11:42:32 +09:00
user-change-cleanup.txt Add background job to abandon inactive changes automatically 2015-06-25 07:26:25 +02:00
user-changeid.txt Work around asciidoctor handling of nested ` and * 2015-04-06 17:22:37 +09:00
user-dashboards.txt Add user guide 2015-04-30 14:37:09 +00:00
user-inline-edit.txt Merge branch 'stable-2.11' 2015-10-27 11:10:42 +09:00
user-named-destinations.txt Add named destinations support 2015-09-03 10:50:07 -06:00
user-named-queries.txt Move 'User Refs' docs to the intro-user doc. 2015-09-04 14:55:15 +00:00
user-notify.txt Clarify notification scheme on watched projects 2014-12-12 13:46:38 -06:00
user-review-ui.txt Remove "Submitted, Merge Pending" from review UI documentation 2015-09-07 13:54:07 +09:00
user-search.txt Support indexing changes by author and committer 2015-09-07 17:29:35 +09:00
user-signedoffby.txt Revert "== GERRIT" in documentation. 2014-03-25 19:44:49 +00:00
user-submodules.txt SubmoduleOp: Have a flag for verbosity of superproject messages 2015-07-20 09:19:23 -07:00
user-upload.txt Add user guide 2015-04-30 14:37:09 +00:00