Re: Cirrus CI (Windows help wanted) - Mailing list pgsql-hackers

From Thomas Munro
Subject Re: Cirrus CI (Windows help wanted)
Date
Msg-id CA+hUKG+cQmEOY_jk2KmjT4jHgNjJgLBTywu3LH9mMrL63mXiwQ@mail.gmail.com
Whole thread Raw
In response to Re: Cirrus CI (Windows help wanted)  (Andrew Dunstan <andrew@dunslane.net>)
Responses Re: Cirrus CI (Windows help wanted)  (Andrew Dunstan <andrew@dunslane.net>)
Re: Cirrus CI (Windows help wanted)  (Andrew Dunstan <andrew@dunslane.net>)
List pgsql-hackers
On Wed, Jan 6, 2021 at 11:48 AM Andrew Dunstan <andrew@dunslane.net> wrote:
> OK, I have dug into this quite a bit. The way cirrus works is in fact
> somewhat fragile. Anyway, here are the highlights:

Thanks!

> However, sadly the vctools package above isn't installed with all its
> optional packages, so some crucial things are missing. I cured that by
> forcing a reinstall with the optional components enabled. Sadly, that
> takes a huge amount of time, over 20 minutes. We either need to find an
> image where this isn't necessary or find out how to make one to use,
> assuming that's possible. Or maybe we can ask cirrus to modify their
> buildscripts just a tad to include the required parameter.

Oh, thanks for the diagnosis.  This seems to be the definition of that image:

https://github.com/cirruslabs/docker-images-windows

It seems we can make our own, either on-the-fly with caching, or
hosted somewhere, like this:

https://cirrus-ci.org/guide/docker-builder-vm/#dockerfile-as-a-ci-environment

> The other issue I ran into was one with the ActivePerl install script. I
> got around that by installing StrawberryPerl instead. It should work
> fine I believe.
>
> So here is the .cirrus.yml file I came up with. The last line fails as
> expected because I have been testing in an environment without postgres
> sources, but other than that it works. Note that we use VS's vcvarsall
> script to set the environment properly for us.

>     task:
> ..

Thanks!  I hacked on this a bit more and got as far as:

C:\Users\ContainerAdministrator\AppData\Local\Temp\cirrus-ci-build>call
perl buildsetup.pl
Unable to determine Visual Studio version: The nmake version could not
be determined. at src/tools/msvc/Mkvcbuild.pm line 92.

That's from https://cirrus-ci.com/task/5842523031601152.  I guess PATH
is wrong or nmake it not present, but it's so painful to do a test
cycle that I gave up for today...



pgsql-hackers by date:

Previous
From: Michael Paquier
Date:
Subject: Re: Moving other hex functions to /common
Next
From: Zhihong Yu
Date:
Subject: Re: Parallel Inserts in CREATE TABLE AS