Page MenuHomePhabricator

Make Jenkins jobs fail if part of setup-zuul-submodules fails
Closed, DuplicatePublic

Description

I think it would be cool if jenkins were to fail if unable to checkout the required code from submodules. It seems like in every case I can think of this will probably result in the test failing later but in a more cryptic way.

For example: this test https://integration.wikimedia.org/ci/job/mediawiki-extensions-php70-jessie/3550/console mentioned in T198973 seems to fail because of missing files but under setup-zuul-submodules at around '14:39:05' it's clear that the failure is really caused by 'fatal: reference is not a tree: 7581ce4c6f98a36209bebb8e2d4f4158c943c629'

Event Timeline

Tarrow created this task.Jul 9 2018, 9:00 AM
Restricted Application added a subscriber: Aklapper. · View Herald TranscriptJul 9 2018, 9:00 AM
hashar added a subscriber: hashar.

I have missed this task sorry. The build console is gone now though and note this specific job is gone but it would have done something like:

cd extensions/VisualEditor
git submodule update --init

And maybe the git command does not exit none zero when there is a failure :/ We would need a way to reproduce.

We had the issue since the first time we proceeded submodules. In short because we did something like:

find -name .gitmodules -execdir 'git submodule update --init'

However if the git submodule fails, find does not care since it executed it and in the end find just exit 0. Effectively, the error code of each git submodule commands were being ignored.

The fault has been ported from our old shell scripts to Quibble and eventually that got solved via T198980 / d43994b3c8610bb9bc8976b9227df275ab58c102