Re: Adding CI to our tree - Mailing list pgsql-hackers

From Andres Freund
Subject Re: Adding CI to our tree
Date
Msg-id E6CA9D45-96EA-4037-8BEB-344CCA75A38C@anarazel.de
Whole thread Raw
In response to Re: Adding CI to our tree  (Justin Pryzby <pryzby@telsasoft.com>)
Responses Re: Adding CI to our tree (ccache)
List pgsql-hackers
Hi,

On February 15, 2022 10:12:36 PM PST, Justin Pryzby <pryzby@telsasoft.com> wrote:
>On Sun, Feb 13, 2022 at 01:53:19PM -0800, Andres Freund wrote:
>> Hi,
>>
>> On 2022-02-13 15:31:20 -0600, Justin Pryzby wrote:
>> > Oh - I suppose you're right.  That's an unfortunate consequence of running a
>> > single prove instance without chdir.
>>
>> I don't think it's chdir that's relevant (that changes into the source
>> directory after all). It's the TESTDIR environment variable.
>>
>> I was thinking that we should make Utils.pm's INIT block responsible for
>> figuring out both the directory a test should run in and the log location,
>> instead having that in vcregress.pl and Makefile.global.in. Mostly because
>> doing it in the latter means we can't start tests with different TESTDIR and
>> working dir at the same time.
>>
>> If instead we pass the location of the top-level build and top-level source
>> directory from vcregress.pl / Makefile.global, the tap test infrastructure can
>> figure out that stuff themselves, on a per-test basis.
>>
>> For msvc builds we probably would need to pass in some information that allow
>> Utils.pm to set up PATH appropriately. I think that might just require knowing
>> that a) msvc build system is used b) Release vs Debug.
>
>I'm totally unsure if this resembles what you're thinking of, and I'm surprised
>I got it working so easily.  But it gets the tap test output in separate dirs,
>and CI is passing for everyone (windows failed because I injected a "false" to
>force it to upload artifacts).
>
>https://github.com/justinpryzby/postgres/runs/5211673291

Yes, that's along the lines I was thinking. I only checked it on my phone, so it certainly isn't a careful look...

I think this should be discussed in a separate thread, for visibility.

FWIW, I'd like to additionally add marker files in INIT and remove them in END. And create files signaling success and
failurein END. That would allow automated selection of log files of failed tests... 

Andres

Regards,

Andres
--
Sent from my Android device with K-9 Mail. Please excuse my brevity.



pgsql-hackers by date:

Previous
From: Kyotaro Horiguchi
Date:
Subject: Re: Race conditions in 019_replslot_limit.pl
Next
From: Nathan Bossart
Date:
Subject: Re: USE_BARRIER_SMGRRELEASE on Linux?