Page MenuHomePhabricator

Wikibase Travis CI failing, Failed asserting that file "LocalSettings.php" exists.
Closed, ResolvedPublic

Description

Somewhere between Friday 2019-06-28 and today, Wikibase builds have started to fail in Travis CI. #11513 is the last successful build; two hours later, #11514 failed on the 1.34.0-wmf.11 deployment branch; today, #11515 and later builds fail on master as well.

In most cases, the errors are a tide of this same message:

There were 4124 errors:

1) Wikibase\Repo\Tests\Actions\EditEntityActionTest
Failed asserting that file "LocalSettings.php" exists.

/home/travis/build/wikimedia/phase3/tests/phpunit/MediaWikiIntegrationTestCase.php:183
/home/travis/build/wikimedia/phase3/maintenance/doMaintenance.php:99

2) Wikibase\Repo\Tests\Actions\EditEntityActionTest
Failed asserting that file "LocalSettings.php" exists.

/home/travis/build/wikimedia/phase3/tests/phpunit/MediaWikiIntegrationTestCase.php:183
/home/travis/build/wikimedia/phase3/maintenance/doMaintenance.php:99

3) Wikibase\Repo\Tests\Actions\EditEntityActionTest
Failed asserting that file "LocalSettings.php" exists.

/home/travis/build/wikimedia/phase3/tests/phpunit/MediaWikiIntegrationTestCase.php:183
/home/travis/build/wikimedia/phase3/maintenance/doMaintenance.php:99

4) Wikibase\Repo\Tests\Actions\EditEntityActionTest
Failed asserting that file "LocalSettings.php" exists.

/home/travis/build/wikimedia/phase3/tests/phpunit/MediaWikiIntegrationTestCase.php:183
/home/travis/build/wikimedia/phase3/maintenance/doMaintenance.php:99

5) Wikibase\Repo\Tests\Actions\EditEntityActionTest
Failed asserting that file "LocalSettings.php" exists.

/home/travis/build/wikimedia/phase3/tests/phpunit/MediaWikiIntegrationTestCase.php:183
/home/travis/build/wikimedia/phase3/maintenance/doMaintenance.php:99

In build #11514, however, while jobs like #11514.7 show the same errors, there is one job (#11514.2) that still succeeded, and job #11514.3 failed with different errors:

There were 17 errors:
1) Wikibase\Repo\Tests\Specials\SpecialNewItemTest::testErrorAboutNonExistentPageIsDisplayed_WhenSiteExistsButPageDoesNot
=== Logs generated by test case
[Wikibase] [debug] {method}: setting {settingName} was given as a closure, resolve it to {logValue} {"method":"Wikibase\\SettingsArray::getSetting","settingName":"conceptBaseUri","logValue":"'http:\/\/localhost\/entity\/'"}
[wfDebug] [debug] IP: 127.0.0.1 {"private":false}
[wfDebug] [debug] ParserFactory: using preprocessor: Preprocessor_Hash {"private":false}
[Wikibase] [debug] {method}: setting {settingName} was given as a closure, resolve it to {logValue} {"method":"Wikibase\\SettingsArray::getSetting","settingName":"dataRightsUrl","logValue":"''"}
[Wikibase] [debug] {method}: setting {settingName} was given as a closure, resolve it to {logValue} {"method":"Wikibase\\SettingsArray::getSetting","settingName":"dataRightsText","logValue":"''"}
[wfDebug] [debug] User::getBlockedStatus: checking... {"private":false}
[wfDebug] [debug] IP: 127.0.0.1 {"private":false}
===
Hamcrest\AssertionError: Expected: is valid html piece having child ((tag matching outline `<div class="error"/>`  or tag matching outline `<li class="oo-ui-fieldLayout-messages-error"/>` ) and having text contents a string containing in any case "could not be found on")
     but: valid html piece having no children ((tag matching outline `<div class="error"/>`  or tag matching outline `<li class="oo-ui-fieldLayout-messages-error"/>` ) and having text contents a string containing in any case "could not be found on")
Actual html:
<div class="mw-specialpage-summary">
<p>Make sure to <a href="/wiki/index.php/Special:Search" title="Special:Search">check if the Item already exists</a>!<br />You should create a <a href="/wiki/index.php?title=Help:Label&amp;action=edit&amp;redlink=1" class="new" title="Help:Label (page does not exist)">label</a> and a <a href="/wiki/index.php?title=Help:Description&amp;action=edit&amp;redlink=1" class="new" title="Help:Description (page does not exist)">description</a> for all new items.
</p>

I haven’t checked all the other job outputs yet.

Event Timeline

Change 520026 had a related patch set uploaded (by Ladsgroup; owner: Ladsgroup):
[mediawiki/extensions/Wikibase@master] Make Hamcrest assert on new error layout of mediawiki

https://gerrit.wikimedia.org/r/520026

Change 520029 had a related patch set uploaded (by Ladsgroup; owner: Ladsgroup):
[mediawiki/core@master] Drop the check for existences of LocalSettings.php in MediaWikiIntegrationTestCase

https://gerrit.wikimedia.org/r/520029

Change 520029 merged by jenkins-bot:
[mediawiki/core@master] Drop the check for existences of LocalSettings.php in MediaWikiIntegrationTestCase

https://gerrit.wikimedia.org/r/520029

Note that this also caused all the tests within the coverage job to fail, for all repos. See for instance one, two, three.

Change 520026 merged by jenkins-bot:
[mediawiki/extensions/Wikibase@master] Make Hamcrest assert on new error layout of mediawiki

https://gerrit.wikimedia.org/r/520026

I manually triggered another Travis build and it succeeded, so it looks like we can close this. @Daimona are the coverage builds now fixed as well? (I tried to look at recent jobs in the same Jenkins project but couldn’t make much sense of it.)

@Daimona are the coverage builds now fixed as well? (I tried to look at recent jobs in the same Jenkins project but couldn’t make much sense of it.)

I think yes, looking e.g. at https://integration.wikimedia.org/ci/job/mwext-phpunit-coverage-patch-docker/14682/console (errors are unrelated).

For the record, this also caused any tests to fail that I ran via mediawiki-docker-dev. I suppose the problem is the CWD.

Change 520115 had a related patch set uploaded (by Kosta Harlan; owner: Kosta Harlan):
[mediawiki/core@master] Assert that LocalSettings file exists

https://gerrit.wikimedia.org/r/520115

Change 520115 merged by jenkins-bot:
[mediawiki/core@master] Assert that LocalSettings file exists

https://gerrit.wikimedia.org/r/520115