Re: Use windows VMs instead of windows containers on the CI

Justin Pryzby <pryzby@telsasoft.com>

From: Justin Pryzby <pryzby@telsasoft.com>
To: Nazir Bilal Yavuz <byavuz81@gmail.com>
Cc: pgsql-hackers@postgresql.org, Andres Freund <andres@anarazel.de>
Date: 2023-01-11T23:21:21Z
Lists: pgsql-hackers
On Tue, Jan 10, 2023 at 03:20:18PM +0300, Nazir Bilal Yavuz wrote:
> Hi,
> 
> I propose using windows VMs instead of containers, the patch is attached.
> Currently, windows containers are used on the CI, but these container images
> are needs to get pulled on every CI run, also they are slow to run.

> @@ -589,8 +591,10 @@ task:
>    # otherwise it'll be sorted before other tasks
>    depends_on: SanityCheck
>  
> -  windows_container:
> -    image: $CONTAINER_REPO/windows_ci_mingw64:latest
> +  compute_engine_instance:
> +    image_project: $IMAGE_PROJECT
> +    image: family/pg-ci-windows-ci-mingw64
> +    platform: windows
>      cpu: $CPUS
>      memory: 4G

It looks like MinGW currently doesn't have the necessary perl modules:

[19:58:46.356] Message: Can't locate IPC/Run.pm in @INC (you may need to install the IPC::Run module) (@INC contains: C:/msys64/ucrt64/lib/perl5/site_perl/5.32.1 C:/msys64/ucrt64/lib/perl5/site_perl/5.32.1 C:/msys64/ucrt64/lib/perl5/site_perl C:/msys64/ucrt64/lib/perl5/vendor_perl C:/msys64/ucrt64/lib/perl5/core_perl) at config/check_modules.pl line 11.
[19:58:46.356] BEGIN failed--compilation aborted at config/check_modules.pl line 11.
[19:58:46.356] meson.build:1337: WARNING: Additional Perl modules are required to run TAP tests.

That could be caused by a transient failure combined with bad error
handling - if there's an error while building the image, it shouldn't be
uploaded.

-- 
Justin



Commits

  1. ci: Use windows VMs instead of windows containers