Thread: some AppVeyor files

some AppVeyor files

From
Peter Eisentraut
Date:
Many people enjoy the Windows testing the cfbot runs on the AppVeyor 
service.

You can also run this yourself without the detour through the commit 
fest app.  Attached are three patches that add .appveyor.yml files, for 
MSVC, MinGW, and Cygwin respectively.  (An open problem is to combine 
them all into one.)  I have been using these regularly over the last few 
months to test code on these Windows variants.

To use them, first you need to set up your AppVeyor account and link it 
to a github (or gitlab or ...) repository.  Then git am the patch on top 
of some branch, push to github (or ...) and watch it build.

This is just for individual enjoyment; I don't mean to commit them at 
this time.

(Some of this has been cribbed from the cfbot work and many other places 
all over the web.)

-- 
Peter Eisentraut              http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services

Attachment

Re: some AppVeyor files

From
Thomas Munro
Date:
On Tue, Mar 24, 2020 at 5:05 AM Peter Eisentraut
<peter.eisentraut@2ndquadrant.com> wrote:
> You can also run this yourself without the detour through the commit
> fest app.  Attached are three patches that add .appveyor.yml files, for
> MSVC, MinGW, and Cygwin respectively.  (An open problem is to combine
> them all into one.)  I have been using these regularly over the last few
> months to test code on these Windows variants.

Thanks!  I added a link to this thread to a Wiki page that tries to
collect information on this topic[1].  Another thing you could be
interested in is the ability to test on several different MSVC
versions (I tried to find some appveyor.yml files I had around here
somewhere to do that, but no cigar... it's just different paths for
those .bat files that set up the environment).

Here is my current wish list for Windows CI:

1.  Run check-world with tap tests.
2.  Turn on the equivalent of -Werror (maybe).
3.  Turn on asserts.
4.  Print backtraces on crash.
5.  Dump all potentially relevant logs on failure (initdb.log,
regression.diff etc).
6.  Find a Windows thing that is like ccache and preserve its cache
across builds (like Travis, which saves some build time).

[1] https://wiki.postgresql.org/wiki/Continuous_Integration



Re: some AppVeyor files

From
Mike Palmiotto
Date:
On Tue, Mar 24, 2020 at 10:27 PM Thomas Munro <thomas.munro@gmail.com> wrote:
> Thanks!  I added a link to this thread to a Wiki page that tries to
> collect information on this topic[1].  Another thing you could be
> interested in is the ability to test on several different MSVC
> versions (I tried to find some appveyor.yml files I had around here
> somewhere to do that, but no cigar... it's just different paths for
> those .bat files that set up the environment).
>
> Here is my current wish list for Windows CI:
>
> 1.  Run check-world with tap tests.
> 2.  Turn on the equivalent of -Werror (maybe).
> 3.  Turn on asserts.
> 4.  Print backtraces on crash.
> 5.  Dump all potentially relevant logs on failure (initdb.log,
> regression.diff etc).

FWIW, you can RDP to the AppVeyor instance by setting an appveyor
password and pausing the machine on failure[1]. I played around with
setting the registry key to add localdumps for postgres with the
intent of feeding those to procdump. I didn't have any success with
generating dump files, but that also could have been because I wasn't
getting actual crashes.

At any rate, getting into the machine is useful in general for getting
more post-build/post-failure information, in case you weren't
configured for it already.

[1] https://www.appveyor.com/docs/how-to/rdp-to-build-worker/

Thanks,
-- 
Mike Palmiotto
https://crunchydata.com