From 900dd8a7b9ca6d2786e9db8a2f5dcdff56b4ad2d Mon Sep 17 00:00:00 2001 From: Alex Crichton Date: Thu, 29 Dec 2016 09:55:16 -0800 Subject: rustbuild: Don't run pretty tests by default This commit relegates all pretty tests to not get run by default and rather get run as part of an "aux" test suite. This "aux" suite is renamed from the old "cargotest" suite to just collect tests that don't need to run everywhere but should at least pass on Unix/Windows. --- src/bootstrap/mk/Makefile.in | 12 +++++++++-- src/bootstrap/step.rs | 22 ++++++++++--------- src/ci/docker/x86_64-gnu-aux/Dockerfile | 31 +++++++++++++++++++++++++++ src/ci/docker/x86_64-gnu-cargotest/Dockerfile | 31 --------------------------- 4 files changed, 53 insertions(+), 43 deletions(-) create mode 100644 src/ci/docker/x86_64-gnu-aux/Dockerfile delete mode 100644 src/ci/docker/x86_64-gnu-cargotest/Dockerfile (limited to 'src') diff --git a/src/bootstrap/mk/Makefile.in b/src/bootstrap/mk/Makefile.in index 0d83a79cf32..a3333369930 100644 --- a/src/bootstrap/mk/Makefile.in +++ b/src/bootstrap/mk/Makefile.in @@ -51,8 +51,16 @@ standalone-docs: $(Q)$(BOOTSTRAP) doc src/doc $(BOOTSTRAP_ARGS) check: $(Q)$(BOOTSTRAP) test $(BOOTSTRAP_ARGS) -check-cargotest: - $(Q)$(BOOTSTRAP) test src/tools/cargotest $(BOOTSTRAP_ARGS) +check-aux: + $(Q)$(BOOTSTRAP) test \ + src/tools/cargotest \ + src/test/pretty \ + src/test/run-pass/pretty \ + src/test/run-fail/pretty \ + src/test/run-pass-valgrind/pretty \ + src/test/run-pass-fulldeps/pretty \ + src/test/run-fail-fulldeps/pretty \ + $(BOOTSTRAP_ARGS) dist: $(Q)$(BOOTSTRAP) dist $(BOOTSTRAP_ARGS) distcheck: diff --git a/src/bootstrap/step.rs b/src/bootstrap/step.rs index 52caa3f0958..bab969b9d3f 100644 --- a/src/bootstrap/step.rs +++ b/src/bootstrap/step.rs @@ -221,7 +221,7 @@ pub fn build_rules(build: &Build) -> Rules { // // Various unit tests and tests suites we can run { - let mut suite = |name, path, dir, mode| { + let mut suite = |name, path, mode, dir| { rules.test(name, path) .dep(|s| s.name("libtest")) .dep(|s| s.name("tool-compiletest").target(s.host)) @@ -233,9 +233,9 @@ pub fn build_rules(build: &Build) -> Rules { Step::noop() } }) - .default(true) + .default(mode != "pretty") // pretty tests don't run everywhere .run(move |s| { - check::compiletest(build, &s.compiler(), s.target, dir, mode) + check::compiletest(build, &s.compiler(), s.target, mode, dir) }); }; @@ -254,12 +254,13 @@ pub fn build_rules(build: &Build) -> Rules { suite("check-incremental", "src/test/incremental", "incremental", "incremental"); suite("check-ui", "src/test/ui", "ui", "ui"); + suite("check-pretty", "src/test/pretty", "pretty", "pretty"); suite("check-pretty-rpass", "src/test/run-pass/pretty", "pretty", "run-pass"); - suite("check-pretty-rfail", "src/test/run-pass/pretty", "pretty", + suite("check-pretty-rfail", "src/test/run-fail/pretty", "pretty", "run-fail"); - suite("check-pretty-valgrind", "src/test/run-pass-valgrind", "pretty", + suite("check-pretty-valgrind", "src/test/run-pass-valgrind/pretty", "pretty", "run-pass-valgrind"); } @@ -290,14 +291,14 @@ pub fn build_rules(build: &Build) -> Rules { s.target)); { - let mut suite = |name, path, dir, mode| { + let mut suite = |name, path, mode, dir| { rules.test(name, path) .dep(|s| s.name("librustc")) .dep(|s| s.name("tool-compiletest").target(s.host)) - .default(true) + .default(mode != "pretty") .host(true) .run(move |s| { - check::compiletest(build, &s.compiler(), s.target, dir, mode) + check::compiletest(build, &s.compiler(), s.target, mode, dir) }); }; @@ -307,9 +308,10 @@ pub fn build_rules(build: &Build) -> Rules { "compile-fail", "compile-fail-fulldeps"); suite("check-rmake", "src/test/run-make", "run-make", "run-make"); suite("check-rustdoc", "src/test/rustdoc", "rustdoc", "rustdoc"); - suite("check-pretty-rpass-full", "src/test/run-pass-fulldeps", + + suite("check-pretty-rpass-full", "src/test/run-pass-fulldeps/pretty", "pretty", "run-pass-fulldeps"); - suite("check-pretty-rfail-full", "src/test/run-fail-fulldeps", + suite("check-pretty-rfail-full", "src/test/run-fail-fulldeps/pretty", "pretty", "run-fail-fulldeps"); } diff --git a/src/ci/docker/x86_64-gnu-aux/Dockerfile b/src/ci/docker/x86_64-gnu-aux/Dockerfile new file mode 100644 index 00000000000..88c8aa4a8c4 --- /dev/null +++ b/src/ci/docker/x86_64-gnu-aux/Dockerfile @@ -0,0 +1,31 @@ +FROM ubuntu:16.04 + +RUN apt-get update && apt-get install -y --no-install-recommends \ + g++ \ + make \ + file \ + curl \ + ca-certificates \ + python2.7 \ + git \ + cmake \ + ccache \ + libssl-dev \ + sudo \ + xz-utils \ + pkg-config + +ENV SCCACHE_DIGEST=7237e38e029342fa27b7ac25412cb9d52554008b12389727320bd533fd7f05b6a96d55485f305caf95e5c8f5f97c3313e10012ccad3e752aba2518f3522ba783 +RUN curl -L https://api.pub.build.mozilla.org/tooltool/sha512/$SCCACHE_DIGEST | \ + tar xJf - -C /usr/local/bin --strip-components=1 + +RUN curl -OL https://github.com/Yelp/dumb-init/releases/download/v1.2.0/dumb-init_1.2.0_amd64.deb && \ + dpkg -i dumb-init_*.deb && \ + rm dumb-init_*.deb +ENTRYPOINT ["/usr/bin/dumb-init", "--"] + +ENV RUST_CONFIGURE_ARGS --build=x86_64-unknown-linux-gnu +ENV RUST_CHECK_TARGET check-aux +ENV NO_VENDOR 1 +RUN mkdir /tmp/obj +RUN chmod 777 /tmp/obj diff --git a/src/ci/docker/x86_64-gnu-cargotest/Dockerfile b/src/ci/docker/x86_64-gnu-cargotest/Dockerfile deleted file mode 100644 index 2c3db87d9fb..00000000000 --- a/src/ci/docker/x86_64-gnu-cargotest/Dockerfile +++ /dev/null @@ -1,31 +0,0 @@ -FROM ubuntu:16.04 - -RUN apt-get update && apt-get install -y --no-install-recommends \ - g++ \ - make \ - file \ - curl \ - ca-certificates \ - python2.7 \ - git \ - cmake \ - ccache \ - libssl-dev \ - sudo \ - xz-utils \ - pkg-config - -ENV SCCACHE_DIGEST=7237e38e029342fa27b7ac25412cb9d52554008b12389727320bd533fd7f05b6a96d55485f305caf95e5c8f5f97c3313e10012ccad3e752aba2518f3522ba783 -RUN curl -L https://api.pub.build.mozilla.org/tooltool/sha512/$SCCACHE_DIGEST | \ - tar xJf - -C /usr/local/bin --strip-components=1 - -RUN curl -OL https://github.com/Yelp/dumb-init/releases/download/v1.2.0/dumb-init_1.2.0_amd64.deb && \ - dpkg -i dumb-init_*.deb && \ - rm dumb-init_*.deb -ENTRYPOINT ["/usr/bin/dumb-init", "--"] - -ENV RUST_CONFIGURE_ARGS --build=x86_64-unknown-linux-gnu -ENV RUST_CHECK_TARGET check-cargotest -ENV NO_VENDOR 1 -RUN mkdir /tmp/obj -RUN chmod 777 /tmp/obj -- cgit 1.4.1-3-g733a5