----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/65727/#review198010 -----------------------------------------------------------
Ship it! To expand on why this change was necessary: each `DOCKER` test requires (a) Docker to be available and (b) the images to be pulled. The `DOCKER` test filter correctly satisfies (a), that is, if `docker` isn't available the test isn't run. However, the previous logic had the image pulling in `SetUpTestCase`, which was run once for the whole test suite, and therefore wasn't affected by the `DOCKER` filter, meaning `docker pull` would run (and fail) if Docker wasn't installed, since the suite had tests other than `DOCKER` tests. So we need the `docker pull` logic to be executed if and only if Docker is available. We already have logic for checking this on a per-test basis, the `DOCKER` filter. So the code was moved to `SetUp`, which is run for each test. The code is in essence idempotent; once the images are pulled, pulling again is a no-op since they're cached (and the logging is done with `LOG_FIRST_N(..., 1)`. Furthermore, the tests were constrained to a suite consisting of _all_ `DOCKER` tests (the `DockerContainerizerHealthCheckTests`), and it's reasonable to assume that all tests added to this suite will use the `DOCKER` filter. - Andrew Schwartzmeyer On Feb. 21, 2018, 6:11 a.m., Akash Gupta wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/65727/ > ----------------------------------------------------------- > > (Updated Feb. 21, 2018, 6:11 a.m.) > > > Review request for mesos, Alexander Rukletsov, Andrew Schwartzmeyer, Gaston > Kleiman, and Joseph Wu. > > > Bugs: MESOS-8498 > https://issues.apache.org/jira/browse/MESOS-8498 > > > Repository: mesos > > > Description > ------- > > In `health_check_tests.cpp`, the `*DOCKER*` tests were moved to > `DockerContainerizerHealthCheckTest::Setup`, so that pre-pulling only > happens if the test is actually run. This avoids failing the test suite > due to the pull failing when docker isn't installed. > > > Diffs > ----- > > src/tests/health_check_tests.cpp 1893c85169f5e94e164434b93e6a24268224225d > > > Diff: https://reviews.apache.org/r/65727/diff/1/ > > > Testing > ------- > > > Thanks, > > Akash Gupta > >
