aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/test/shell/bazel/external_integration_test.sh
Commit message (Collapse)AuthorAge
* Move --distdir out of experimental statusGravatar Klaus Aehlig2018-06-07
| | | | | | | | | | | | | | | | | | | | | | | The option --experimental_distdir has been introduced 4 months ago and was completely unproblematic ever since. Moreover, it is now used productively, both in our own bootstrapping process[1], as well as in external packaging of projects using bazel[2]. So make this option non-experimental. We still keep the old name as an alternative to not break existing uses. Related: #5175. RELNOTES: The --distdir option is no longer experimental. This option allows to specify additional directories to look for files before trying to fetch them from the network. Files from any of the distdirs are only used if a checksum for the file is specified and both, the filename and the checksum, match. [1] Commit 3c9cd82b847f3ece8ec04b2029bd5e8ad0eb7502 [2] https://github.com/gentoo/gentoo/blob/7379cdb578b0c070c846c3fa9f71470e2c5d1320/sci-libs/tensorflow/tensorflow-1.8.0-r1.ebuild#L168 Change-Id: I536238f9bdbad6b4f7222b4f6a1464d70d9f3be3 PiperOrigin-RevId: 199637265
* Remove old name for --repository_cacheGravatar Klaus Aehlig2018-04-16
| | | | | | | | | The flag --experimental_repository_cache has been renamed to --repository_cache (with the old name still usable for some releases). Adapt the shell tests to use the preferred name of that flag. Change-Id: I88ba70d386d5e8bb1bb60bcac58b2f1cc325ff17 PiperOrigin-RevId: 193003482
* Make repository_chache non-experimental and enable by defaultGravatar Klaus Aehlig2018-02-27
| | | | | | | | | | | | | | | | Make the --experimental_repository_cache option no longer experimental and enable the cache by default. The default location is in the a separate directory under the install base (under .cache/bazel user's home directory); this means it is shared between workspaces und not between different versions of bazel. We plan to also share it between different bazel versions in the future. Fixes #4676. RELNOTES: repository_cache is no longer experimental and enabled by default. Change-Id: I8499c2d1811e0fe8d830796e07cd6f8bc75e48ba PiperOrigin-RevId: 187172766
* http_archive: allow parameter for a single URLGravatar Klaus Aehlig2018-02-20
| | | | | | | | | | | ...to ease transition from the native http_archive rule. In this way, switching from the native http_archive rule to the skylark one literally is only adding load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") Change-Id: I0d3a16ad9ab046b975ea64c97dd201e7a9d70a6a PiperOrigin-RevId: 186285020
* distdir: also accept relative pathGravatar Klaus Aehlig2018-02-09
| | | | | | | ...and interpret them relative to the workspace directory. Change-Id: I31a0ce3a179356c798f00c4218ddd22e16b256a3 PiperOrigin-RevId: 185136432
* experimental_repository_cache: support relative pathsGravatar Klaus Aehlig2018-02-09
| | | | | | | | | | ...and interpret them relative to the workspace directory. Improves on #3516. In fact, fixes the original request of supporting relative paths. Change-Id: Ibbb6fd43179d589ad477427e47e26c773c7a04de PiperOrigin-RevId: 185121629
* Support local search for http archivesGravatar Klaus Aehlig2018-02-09
| | | | | | | | | | | | | | | | | | With --experimental_repository_cache, bazel has means of avoiding downloading the same archive again. However, this requires bazel to first download it itself, as we make no guarantee about the internal structure of that cache; this, in turn, does not play well in situations where bazel has to cooperate with other tools, e.g., because the bazel build is just one step in a larger package building process. Therefore, add an experimental option allowing to specify directories where the outer process may have placed needed files and make bazel not download them if a file with correct name and hash could be found in one of those directories. In this way, cooperation is possible without patching all entries in the WORSPACE file. Change-Id: I43240b8b59bf8472ec0310661015899e46491236 PiperOrigin-RevId: 185115713
* Automated rollback of commit 7e6837cc1d1aa4259f5c27ba3606b277b5f6c3e9.Gravatar aehlig2018-02-01
| | | | | | | | | | | | | | | | | | | | | | | | | | *** Reason for rollback *** Breaks on our CI Linux machines (but works on our work desktop Linux machines); apparently, even our own Linux machines are too different from each other... Fixes #4557 *** Original change description *** http_archive: verify that unicode characters are OK in tar archives Add a test verifying that http_archive can extract a tar archive containing unicode characters. While such files cannot be referred to by labels, it is still important that the archive can be extracted. Also fix that use case on Darwin, by appropriately reencoding the string, so that the Files java standard library can encode it back to what we had in the first place. Work-around for #1653, showing that http_archive from @bazel_tools can be used; however, the issue still remains for zip archives. *** PiperOrigin-RevId: 184132385
* http_archive: verify that unicode characters are OK in tar archivesGravatar Klaus Aehlig2018-01-31
| | | | | | | | | | | | | | | Add a test verifying that http_archive can extract a tar archive containing unicode characters. While such files cannot be referred to by labels, it is still important that the archive can be extracted. Also fix that use case on Darwin, by appropriately reencoding the string, so that the Files java standard library can encode it back to what we had in the first place. Work-around for #1653, showing that http_archive from @bazel_tools can be used; however, the issue still remains for zip archives. Change-Id: If944203bf618c21705af676347d8591ab015d559 PiperOrigin-RevId: 183987726
* Support symlinks in external zip archivesGravatar Klaus Aehlig2018-01-29
| | | | | | | | | | Allow symbolic links in zip archives, as long as they refer to a file within the same archive. Fixes #2656. Change-Id: I0b21b8bb79a7e999ef191baa2a71d29745ac65e4 PiperOrigin-RevId: 183664725
* Add a test verifying --experimental_repository_cacheGravatar Klaus Aehlig2018-01-25
| | | | | | | | ...works as expected, caching only based on the predicted sha256 sum and also is available for bazel query. Closes #2780. Change-Id: I64f09728d9def561a6ac3960f8fa36540aba31dc PiperOrigin-RevId: 183257435
* http_archive: demonstrate that query works offlineGravatar Klaus Aehlig2018-01-24
| | | | | | | | | Add a test verifying that http_archive from @bazel_tools caches repositories, also for subsequent queries. Provides a workaround for #2780. Change-Id: Ie842c2abf47f42f75e146e454be4ab52efd12ada PiperOrigin-RevId: 183063093
* Report unsuccessful error code if bazel fetch fails in "keep going" mode.Gravatar dslomov2018-01-23
| | | | | | | | Fixes #3234. Rollforward of commit dafe71390340224e06eab0ac7afcebb2f5219f5a with a bugfix PiperOrigin-RevId: 182903117
* http_archive: allow using the shipped BUILD fileGravatar Klaus Aehlig2018-01-23
| | | | | | | | | | Bazel may also depend on external repositories that already contain build files. When using http_archive from @bazel_tools also support that use case, by supporting simply omitting `build_file` and `build_file_contents`. Change-Id: I40a9b85ae0aba850c73104d2e2fe7f7ee814e093 PiperOrigin-RevId: 182893460
* Demontrate that http_archive can pick up a missing build fileGravatar Klaus Aehlig2018-01-17
| | | | | | | | | | | | The http_archive command from @bazel_tools can add a BUILD file to an external repository. Add a test ensuring that changes to that file, in particular the addition of a previously missing file, are tracked properly. Provides a workaround for #3637. Change-Id: Ibd6a3336834686a13eaa1f9ce7d4c6223410b222 PiperOrigin-RevId: 182221653
* Automated rollback of commit dafe71390340224e06eab0ac7afcebb2f5219f5a.Gravatar dslomov2018-01-16
| | | | | | | | | | | | | | *** Reason for rollback *** Breaks Bazel CI (https://ci.bazel.build/job/bazel-tests/1722/) *** Original change description *** Report unsuccessful error code if bazel fetch fails in "keep going" mode. Fixes #3234. PiperOrigin-RevId: 182042503
* Report unsuccessful error code if bazel fetch fails in "keep going" mode.Gravatar Dmitry Lomov2018-01-16
| | | | | | | Fixes #3234. Change-Id: I1bfbe856d35b98995f5a0684fe47c7566b8dd093 PiperOrigin-RevId: 182029085
* Regression test for #3656.Gravatar Dmitry Lomov2018-01-15
| | | | | Change-Id: Id3d6e6da60aca3c02c7cf3e9e727ecbf177dde66 PiperOrigin-RevId: 181971084
* Honor repository when checking for conflictsGravatar Klaus Aehlig2018-01-12
| | | | | | | | | | When checking for conflicts between an input and an output file of a rule, honor the repository the label belongs to. It is a perfectly valid use case to create one file from an equally named (including path) in a different repository. Change-Id: I3aaa99eaa0c473ec31c5cc77beacf657c41ef56d PiperOrigin-RevId: 181761940
* Returns repository does not exists when referring to a bind rule...Gravatar Damien Martin-Guillerez2017-09-07
| | | | | | | | | | | | | ...or any other non repository rule. Using a bind rule as the name of the repository was returning a strange error "could not find handler for bind rule" which was not useful, so was replaced by a crash. Fixes #3664 Change-Id: Id0711470e6a1ab9267e05eb273900b18d0a27d6b PiperOrigin-RevId: 167706825
* Make tests more portableGravatar Klaus Aehlig2017-08-04
| | | | | | | | | By replacing uses of /bin/bash by /bin/sh, a tool which is more reliably at this location. Then, enable most of the bazel tests for FreeBSD as well. Change-Id: Ic56a1705858f1ed67d1e96e2937e9389dd1d0e36 PiperOrigin-RevId: 164241635
* Add tear down for external_integration_testGravatar kchodorow2017-05-26
| | | | | | For #2409. PiperOrigin-RevId: 156986600
* Add workspace_file and workspace_file_content attributes to ↵Gravatar jcater2017-03-31
| | | | | | | | new_foo_repository rules. Change-Id: Iadcc24bb2a207126cec9aa31faba6d76ee80da41 PiperOrigin-RevId: 151739968
* Rollback of commit 4b73e972d909bcd533f2f9940f95a00b9b73bdde.Gravatar Dmitry Lomov2017-02-17
| | | | | | | | | | | | | | | | | | | | | | | *** Reason for rollback *** Broke tests on CI: http://ci.bazel.io/job/bazel-tests/570/ *** Original change description *** Roll forward execroot change RELNOTES[INC]: Previously, an external repository would be symlinked into the execution root at execroot/local_repo/external/remote_repo. This changes it to be at execroot/remote_repo. This may break genrules/Skylark actions that hardcode execution root paths. If this causes breakages for you, ensure that genrules are using $(location :target) to access files and Skylark rules are using http://bazel.io/docs/skylark/lib/File.html's path, dirname, etc. functions. Cust... -- PiperOrigin-RevId: 147833177 MOS_MIGRATED_REVID=147833177
* Roll forward execroot changeGravatar Kristina Chodorow2017-02-16
| | | | | | | | | | | | | | | | | RELNOTES[INC]: Previously, an external repository would be symlinked into the execution root at execroot/local_repo/external/remote_repo. This changes it to be at execroot/remote_repo. This may break genrules/Skylark actions that hardcode execution root paths. If this causes breakages for you, ensure that genrules are using $(location :target) to access files and Skylark rules are using http://bazel.io/docs/skylark/lib/File.html's path, dirname, etc. functions. Custom crosstools that hardcode external/<repo> paths will have to be updated. Issue #1262. -- PiperOrigin-RevId: 147726370 MOS_MIGRATED_REVID=147726370
* Remote repositories: add the infrastructure for extending the marker file Gravatar Damien Martin-Guillerez2017-01-17
| | | | | | | | | | | | | | | This add a markerData map to the RepositoryFunction#fetch function so RepositoryFunction-s can declare extraneous data to add to the marker file. The RepositoryFunction#verifyMarkerData is called to verify those data in order to know if the repository is up to date and need re-fetching. Design doc: https://bazel.build/designs/2016/10/18/repository-invalidation.html [step 2] -- Change-Id: I9083fb72a0142f418a7296f889cd3eaf32e92498 Reviewed-on: https://cr.bazel.build/7973 PiperOrigin-RevId: 144728497 MOS_MIGRATED_REVID=144728497
* Fix test to work on OS XGravatar Kristina Chodorow2016-12-21
| | | | | | | | stat has completely different options. -- PiperOrigin-RevId: 142668570 MOS_MIGRATED_REVID=142668570
* Fix GNUism in the use of touchGravatar Klaus Aehlig2016-12-21
| | | | | | | | | | | | The --date long option is a GNU extension of the touch(1) tool. Replace by the equivalent standard option, to have the test not break on other systems, like darwin. -- Change-Id: I73d935a82d20d7c3a0308aedaa5faf76bf0d206c Reviewed-on: https://cr.bazel.build/8040 PiperOrigin-RevId: 142651354 MOS_MIGRATED_REVID=142651354
* Set last modified time when files are extractedGravatar Kristina Chodorow2016-12-21
| | | | | | | | Part of rolling forward commit b9f914fa56a00530d38b597dc853aad50d1decfb. -- PiperOrigin-RevId: 142576787 MOS_MIGRATED_REVID=142576787
* Support multiple mirror URLs for external reposGravatar Justine Tunney2016-11-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change improves upon 4c67807964e37cfd55bbcda4c6374fcc480bcecc. - A urls attribute has been added to the native workspace rules, with the exception of maven_jar and git_repository. The Skylark repository API also supports multiple URLs now. - The earlier mirrors in the list are preferred. Failover will happen automatically in parallel. - The first 32kB of data is checked before choosing a mirror in order to evade captive portals. - If one's Internet goes down or a download times out, then the download will resume automatically where it left off, provided the server supports RFC7233 for that particular file. Please note that GitHub does not support this for archive snapshots. Files should always be mirrored to a CDN, e.g. GCS, because they support this. - A semaphore is now used on downloads so only 8 can happen at once. Fixes #1814 Fixes #2131 Fixes #2008 Fixes #1968 Fixes #1717 Fixes #943 Wont fix #1194 Fixes tensorflow/tensorflow#5933 Fixes tensorflow/tensorflow#5924 Fixes tensorflow/tensorflow#5924 Fixes tensorflow/tensorflow#5432 See #1607 See #821 See tensorflow/tensorflow#5080 See tensorflow/tensorflow#5029 See tensorflow/tensorflow#4583 See tensorflow/tensorflow#4058 RELNOTES: A urls attribute has been added to repository rules to support multiple mirror URLs for reliably downloading files. -- MOS_MIGRATED_REVID=140495736
* Improve reliability/performance of Bazel downloadsGravatar Justine Tunney2016-11-23
| | | | | | | | | | | | | | | | 1. We now retry on connection failures. a. With exponential backoff. b. While recovering quickly from ephemeral failures. c. While still working if internet or web server is slow. 2. We now request gzip responses from web server. Fixed #1760 Fixed #1910 RELNOTES: External downloads now retry with exponential backoff and support gzip content-encoding. -- MOS_MIGRATED_REVID=140049160
* Create a proper wrapper script for executing "bazel" in the integration tests.Gravatar Luis Fernando Pino Duque2016-10-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently a call to "bazel" in an integration test means calling a (quite hidden) function in test-setup.sh which actually calls "$bazel" defined in "shell/bazel/testenv.sh" which is equal to "$(rlocation io_bazel/src/bazel)". This is extremely confusing and error prone. The new mechanism is to add a wrapper script to shell/bin called bazel and export this directory to the PATH. Moreover, not every test loads the same test environment, for instance consider how bazel_query_test loads the test environment: - Load shell/integration/testenv.sh which loads, - shell/bazel/test-setup.sh which loads, - shell/bazel/testenv.sh which loads, - shell/unittest.bash which loads, - shell/testenv.sh Again this is error prone and specially hard to understand, in fact each test writer needs to decide which of these testenv to load. This change fixes all of this by having only one testenv.sh and summarizing the test setup in integration_test_setup.sh. Namely, for any new integration test, the developer needs to load integration_test_setup to get the environment set up including the unittest framework (also it helps to attract contributions). This change also allows to open sourcing client_sigint_test: Since bazel was a function client_sigint_test was using a wrong process id to interrupt the build. The problem is that $! returns bash's id instead of the id of the process running in the background when using a function instead of an executable. A few tests needed to be adapted to the new infrastructure. -- MOS_MIGRATED_REVID=136470360
* Allow new_ rules to overwrited BUILD files in downloaded reposGravatar Kristina Chodorow2016-09-28
| | | | | | | | | | | My previous change carefully checked that the file was a symlink before removing it and added a test with local repositories... and it of course isn't a symlink with downloaded repositories and crashes. Fixes #1697. -- MOS_MIGRATED_REVID=134536130
* Implementation of maven_jar rule in Skylark.Gravatar Jingwen Chen2016-09-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | **Experimental** This is an initial implementation of the maven_jar rule in Skylark, targeted at the FRs in issue #1410. Implemented a wrapper around the maven binary to pull dependencies from remote repositories into a directory under {output_base}/external. Attributes `name`, `artifact`, `repository`, `sha1` have been implemented, but not `server`. Caveat: this rule assumes that the Maven dependency is installed in the system. Hence, the maven_skylark_test integration tests are tagged with "manual" and commented out because the Bazel CI isn't configured with the Maven binary yet. Added a serve_not_found helper for 404 response tests. Usage: ``` load("@bazel_tools//tools/build_defs/repo:maven_rules.bzl", "maven_jar") maven_jar( name = "com_google_guava_guava", artifact = "com.google.guava:guava:18.0", sha1 = "cce0823396aa693798f8882e64213b1772032b09", repository = "http://uk.maven.org/maven2", ) ``` With regards to server, there are some limitations with retrieving a maven_server's attribute at Loading Phase without the use of hacky macros (issue #1704), and even if macros are used, the maven_server is not treated as an actual dependency by maven_jar. There is a test (`test_unimplemented_server_attr`) to ensure that the error message to shown to users if they use the server attribute with this rule. -- Change-Id: I167f9d13835c30be971928b4cc60167a8e396893 Reviewed-on: https://bazel-review.googlesource.com/c/5770 MOS_MIGRATED_REVID=133971809
* Rollback of commit 82d43279f93d95e4c41b4bc598a3cc05ddd1ae1a.Gravatar Laszlo Csomor2016-09-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | *** Reason for rollback *** Breaks TensorFlow and other Bazel jobs on ci.bazel.io *** Original change description *** Change execution root for external repositories to be ../repo Some of the important aspect of this change: * Remote repos in the execution root are under output_base/execroot/repo_name, so the prefix is ../repo_name (to escape the local workspace name). * Package roots for external repos were previously "output_base/", they are now output_base/external/repo_name (which means source artifacts always have a relative path from their repository). * Outputs are under bazel-bin/external/repo_name/ (or similarly under genfiles). Note that this is a bit of a change from how this was implemented in the previous cl. Fixes #1262. RELNOTES[INC]: Previously, an external repository would be symlinked into the execution root at execroot/local_repo/external/remote_repo. This changes it to be at execroot/remote_repo. This may break genrules/Skylark actions that hardcode execution root paths. If this causes breakages for you, ensure that genrules are using $(location :target) to access files and Skylark rules are using http://bazel.io/docs/skylark/lib/File.html's path, dirname, etc. functions. Roll forward of bdfd58a. -- MOS_MIGRATED_REVID=133709658
* Change execution root for external repositories to be ../repoGravatar Kristina Chodorow2016-09-20
| | | | | | | | | | | | | | | | | | | | | | | Some of the important aspect of this change: * Remote repos in the execution root are under output_base/execroot/repo_name, so the prefix is ../repo_name (to escape the local workspace name). * Package roots for external repos were previously "output_base/", they are now output_base/external/repo_name (which means source artifacts always have a relative path from their repository). * Outputs are under bazel-bin/external/repo_name/ (or similarly under genfiles). Note that this is a bit of a change from how this was implemented in the previous cl. Fixes #1262. RELNOTES[INC]: Previously, an external repository would be symlinked into the execution root at execroot/local_repo/external/remote_repo. This changes it to be at execroot/remote_repo. This may break genrules/Skylark actions that hardcode execution root paths. If this causes breakages for you, ensure that genrules are using $(location :target) to access files and Skylark rules are using http://bazel.io/docs/skylark/lib/File.html's path, dirname, etc. functions. Roll forward of bdfd58a. -- MOS_MIGRATED_REVID=133606309
* Rollback of commit bdfd58a8ca2ed5735d6aaa5b238fb0f689515724.Gravatar Laurent Le Brun2016-06-20
| | | | | -- MOS_MIGRATED_REVID=125160288
* Make the execution root match the runfiles tree structure for external ↵Gravatar Kristina Chodorow2016-06-17
| | | | | | | | | | | | | | | | | | | | | repositories One interesting side effect of how this is implemented is that for external repositories, bin/ and genfiles/ are combined. External repo output is under bazel-out/local-fastbuild/repo_name for each repo. Fixes #1262. RELNOTES[INC]: Previously, an external repository would be symlinked into the execution root at execroot/local_repo/external/remote_repo. This changes it to be at execroot/remote_repo. This may break genrules/Skylark actions that hardcode execution root paths. If this causes breakages for you, ensure that genrules are using $(location :target) to access files and Skylark rules are using http://bazel.io/docs/skylark/lib/File.html's path, dirname, etc. functions. -- MOS_MIGRATED_REVID=125095799
* Create mark file for local repositories, tooGravatar Kristina Chodorow2016-06-17
| | | | | | | | | | | | | Local repositories were not marked, so if a WS file switched from remote->local->remote, on the first run the remote rule would create a mark file, on the second run the local rule would ignore it, and then on the third run the remote rule would look at the mark file and see, "I'm already up-to-date," leaving the repository as a local repo. Fixes #977. -- MOS_MIGRATED_REVID=125060180
* Zip up symlinks as symlinksGravatar Kristina Chodorow2016-06-14
| | | | | | | | | Instead of resolving them to the underlying file. Fixes #1384. -- MOS_MIGRATED_REVID=124746179
* Support absolute paths for zip filesGravatar Kristina Chodorow2016-06-13
| | | | | | | | This resolves them relative to the repository root directory (the same way .tar.gz paths do). -- MOS_MIGRATED_REVID=124573519
* Implement zip file symlink supportGravatar Kristina Chodorow2016-05-27
| | | | | | | | | | Fixes #1281. RELNOTES: Symlinks in zip files are now unzipped correctly by http_archive, download_and_extract, etc. -- MOS_MIGRATED_REVID=123233604
* Allow modules to inject a custom AttributeContainer.Gravatar Janak Ramakrishnan2016-05-12
| | | | | | | | | | | | | | | | | | | | | | | | | Rollback of commit cda4b4eae0c495a8f90f2a70a8db46e34062ee26. *** Reason for rollback *** Roll-forward with fixes (see ExternalPackageBuilder). *** Original change description *** Automated [] rollback of commit 178a3dfda8bf72abf22758597a90a4afb8eed181. *** Reason for rollback *** Broke ci.bazel.io. See #1234. *** Original change description *** Allow modules to inject a custom AttributeContainer. -- MOS_MIGRATED_REVID=122100417
* Switch to using ../repo-name syntax for runfilesGravatar Kristina Chodorow2016-05-04
| | | | | -- MOS_MIGRATED_REVID=121475668
* Automated [] rollback of commit 857cda2c45a5cc68c3fa398311c48c571a64915d and ↵Gravatar Damien Martin-Guillerez2016-04-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | commit 790d2f6009d47fe92cf0cd92a1473bbf0141f32e. *** Reason for rollback *** Broke non-Bazel projects on ci.bazel.io Fixes #1168 *** Original change description *** Move the runfiles for external repositories to under the x.runfiles/ directory This also sets the Bazel workspace name to io_bazel_source. Fixes #848. Relevant to #1116, #1124, RELNOTES[INC]: All repositories are now directly under the x.runfiles directory in the runfiles tree (previously, external repositories were at x.runfiles/main-repo/external/other-repo. This simplifies handling remote repository runfiles considerably, but will break existing references to external repository runfiles.... *** -- MOS_MIGRATED_REVID=120535721
* Move the runfiles for external repositories to under the x.runfiles/ directoryGravatar Kristina Chodorow2016-04-20
| | | | | | | | | | | | | | | This also sets the Bazel workspace name to io_bazel_source. Fixes #848. Relevant to #1116, #1124, RELNOTES[INC]: All repositories are now directly under the x.runfiles directory in the runfiles tree (previously, external repositories were at x.runfiles/main-repo/external/other-repo. This simplifies handling remote repository runfiles considerably, but will break existing references to external repository runfiles. --- Furthermore, if a Bazel project does not provide a workspace name in the WORKSPACE file, Bazel will now default to using __main__ as the workspace name (instead of "", as previously). The repository's runfiles will appear under x.runfiles/__main__/. -- MOS_MIGRATED_REVID=120224534
* Add a missing space in external_integration_testGravatar Damien Martin-Guillerez2016-03-21
| | | | | | | | | Without that spaces, we were getting: src/test/shell/bazel/external_integration_test: line 540: [: missing `]' in the test log. -- MOS_MIGRATED_REVID=117707546
* Handle http <-> https redirectsGravatar Michajlo Matijkiw2016-02-25
| | | | | | | | | | | Support all 301 and 302 redirect handling in bazel. Only support absolute Location redirects (this is the spec, we can revisit if we find a lot of servers are doing it wrong). Fixes #959. -- MOS_MIGRATED_REVID=115490327
* Adds a build_file_content attribute to new_git_repository, new_http_archive, andGravatar Alex Humesky2016-02-12
| | | | | | | | | | | | | new_local_repository which allows the build file to be specified by a string directly in the rule rather than using a separate file. build_file and build_file_content are both optional, but one or the other must be specified. RELNOTES: build_file_content attribute added to new_git_repository, new_http_archive, and new_local_repository. -- MOS_MIGRATED_REVID=114490435
* Make sha256 optionalGravatar Kristina Chodorow2016-02-09
| | | | | | | | RELNOTES: The sha256 attribute is now optional (although recommended!) for remote repository rules. -- MOS_MIGRATED_REVID=114139613