diff options
author | 2016-11-22 16:25:09 +0000 | |
---|---|---|
committer | 2016-11-22 18:15:25 +0000 | |
commit | b10101ab8fe8d505d023f0a4556ec0c227635e24 (patch) | |
tree | d5f3ec77ddfac6c6e9cf0859aff41353159bd975 /src | |
parent | e2e61a38da2cef08610b875333c0bd2c77f4183b (diff) |
Rollback of commit fec7d877735eacaf023718ea3e598e6d10adb9a6.
*** Reason for rollback ***
Roll forward with work around for the fact that bazel cannot build
from read-only sources on mac.
*** Original change description ***
Automated [] rollback of commit 1ff6d480d02ab8189ac12f8fedfbed1222b86a43.
*** Reason for rollback ***
This test doesn't pass
*** Original change description ***
Add a test verifying that bazel can be bootstrapped from the distfile
To verify that the distribution artifact is complete, add a test
that tries to bootstrap bazel from that artifact.
--
MOS_MIGRATED_REVID=139911124
Diffstat (limited to 'src')
-rw-r--r-- | src/test/shell/bazel/BUILD | 11 | ||||
-rwxr-xr-x | src/test/shell/bazel/bazel_bootstrap_distfile_test.sh | 41 |
2 files changed, 52 insertions, 0 deletions
diff --git a/src/test/shell/bazel/BUILD b/src/test/shell/bazel/BUILD index 4c972ff418..e83ada3d55 100644 --- a/src/test/shell/bazel/BUILD +++ b/src/test/shell/bazel/BUILD @@ -405,6 +405,17 @@ sh_test( data = [":test-deps"], ) +sh_test( + name = "bazel_boostrap_distfile_test", + size = "large", + srcs = ["bazel_bootstrap_distfile_test.sh"], + args = ["$(location //:bazel-distfile)"], + data = [ + ":test-deps", + "//:bazel-distfile", + ], +) + test_suite( name = "all_tests", visibility = ["//visibility:public"], diff --git a/src/test/shell/bazel/bazel_bootstrap_distfile_test.sh b/src/test/shell/bazel/bazel_bootstrap_distfile_test.sh new file mode 100755 index 0000000000..ade7d1a52c --- /dev/null +++ b/src/test/shell/bazel/bazel_bootstrap_distfile_test.sh @@ -0,0 +1,41 @@ +#!/bin/bash +# +# Copyright 2016 The Bazel Authors. All rights reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Test that bazel can be compiled out of the distribution artifact. +# + +set -u +DISTFILE=$(readlink $1) +shift 1 + +# Load the test setup defined in the parent directory +CURRENT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" +source "${CURRENT_DIR}/../integration_test_setup.sh" \ + || { echo "integration_test_setup.sh not found!" >&2; exit 1; } + +function test_bootsrap() { + local olddir=$(pwd) + WRKDIR=$(mktemp -d ${TEST_TMPDIR}/bazelbootstrap.XXXXXXXX) + mkdir -p "${WRKDIR}" || fail "Could not create workdir" + cd "${WRKDIR}" || fail "Could not change to work directory" + unzip ${DISTFILE} + find . -type f -exec chmod u+w {} \; + ./compile.sh || fail "Expected to be able to bootstrap bazel" + ./output/bazel version || fail "Generated bazel not working" + cd "${olddir}" +} + +run_suite "bootstrap test" |