Wireshark-dev: Re: [Wireshark-dev] MR that commes up as "OK to Merge" fails pipline

From: Pascal Quantin <pascal@xxxxxxxxxxxxx>
Date: Wed, 21 Apr 2021 20:14:46 +0200
Le mer. 21 avr. 2021 à 20:12, Gerald Combs <gerald@xxxxxxxxxxxxx> a écrit :
On 4/21/21 6:38 AM, Pascal Quantin wrote:
> Hi Anders,
>
> Le mer. 21 avr. 2021 à 15:34, Anders Broman via Wireshark-dev <wireshark-dev@xxxxxxxxxxxxx <mailto:wireshark-dev@xxxxxxxxxxxxx>> a écrit :
>
>     Hi,____
>
>     This MR https://gitlab.com/wireshark/wireshark/-/merge_requests/2178 <https://gitlab.com/wireshark/wireshark/-/merge_requests/2178> passed check but failed merge at the firsts attempt – the author then amended____
>
>     It passed check and came up with a green merge button. It then fails pipeline. What should it have been done instead?
>
>
> For some reason the MRs do not seem to run the Windows builder, unless Wireshark  Gitlab Utility rebases the change. This is not the first time I see this.
> Gerald, is this some configuration setting that needs to be changed? Or only the Wireshark group can run the Windows builder?

GitLab's shared Windows runners don't let you specify a custom Docker image[1], and the image that they supply[2] is missing many of our prerequsities[3]. As a result I set up a "specific"[4] Windows runner for wireshark/wireshark, but as you point out this doesn't run for many of our detached merge requests. I haven't found anything definitive in GitLab's docs, but it looks like specific runners don't run detached merge requests unless it's initiated by a user with sufficient permissions.

We might be able to work around this by finding a way to quickly install our prerequisites on GitLab's standard image. IIRC the slowest ones are Qt, Strawberry Perl, and Python.

Alternatively, would we have a way to ensure that Wireshark Gitlab Utility always run one CI job before allowing the merge?


[1]https://docs.gitlab.com/ee/user/gitlab_com/index.html#limitations-and-known-issues
[2]https://gitlab.com/gitlab-org/ci-cd/shared-runners/images/gcp/windows-containers/blob/master/cookbooks/preinstalled-software/README.md
[3]https://gitlab.com/wireshark/wireshark-containers/-/blob/master/dev/windows/Dockerfile
[4]https://docs.gitlab.com/ee/ci/runners/#specific-runners