Subject: Re: [PATCH] gitlab-ci: disable realtime monitoring to unbreak Windows jobs

From: Patrick Steinhardt <[email-masked]>
Date: Wed, 3 Sep 2025 06:39:37 +0200

On Tue, Sep 02, 2025 at 09:35:09AM -0700, Junio C Hamano wrote:
> Patrick Steinhardt <[email-masked]> writes:
> 
> > The GitLab CI runners using Windows machines have realtime monitoring
> > via Windows Defender enabled by default. This has just now started to
> > cause issues in our CI jobs using Microsoft Visual Studio:
> >
> >     Program 'meson.exe' failed to run: Operation did not complete successfully because the file contains a virus or
> >     potentially unwanted softwareAt line:356 char:1
> >     + meson setup build --vsenv -Dperl=disabled -Dbackend_max_links=1 -Dcre ...
> >     + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~.
> >     At line:356 char:1
> >     + meson setup build --vsenv -Dperl=disabled -Dbackend_max_links=1 -Dcre ...
> >     + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> >         + CategoryInfo          : ResourceUnavailable: (:) [], ApplicationFailedException
> >         + FullyQualifiedErrorId : NativeCommandFailed
> >
> > The detected issue is more likely than not completely bogus, but it
> > breaks the jobs.
> >
> > Fix the issue by disabling realtime monitoring. Besides unbreaking CI,
> > it also improves our build times a bit:
> >
> >   - Building Git goes from 26 to 22 minutes.
> >
> >   - Executing tests goes from ~1h for one slice of tests to ~30 minutes.
> 
> Interesting observation.  I didn't realize that we are shipping
> virus or potentially unwanted software.
> 
> Does the same issue exist on other forges (like GitHub Actions), I
> wonder?

I would assume that other forges already know to disable realtime
monitoring by default. These are throwaway machines anyway, so there
isn't much of a point in having it enabled in the first place. And as
mentioned in the commit message, the Windows runners for GitLab CI are
not exactly well-polished.

Patrick