On 1/4/21 10:58 PM, Thomas Munro wrote: > Hi, > > My new favourite CI is Cirrus CI, because it has 4 operating systems, > generous enough quotas to handle 250+ branches in a single account, > and public build/test log URLs. I flipped cfbot.cputube.org (mostly) > over to that and it seems to work well so far -- fingers crossed. > I've also been using it for my own development branches that involve > some systems hacking-heavy work that uses different kernel interfaces > on all 4 of those OSes. > > There's one thing I'm stuck on, though: Windows. If anyone wants to > help figure out how to get PostgreSQL to build on Cirrus's Windows, > I'd be very interested. To play with this stuff, you need a public > Github repo, and you need to add Cirrus CI from "Marketplace" (it's > free for public/open source), and then you add a .cirrus.yml file such > as https://github.com/macdice/cfbot/blob/master/cirrus/.cirrus.yml to > the top level of a PostgreSQL branch. When you push, you should see > build results on the Github web UI. > > For a similar example that works on Windows on another CI, see > https://github.com/macdice/cfbot/blob/master/appveyor/appveyor.yml > (note that it also references a couple of other files; it'd be nice to > be able to do that stuff without the need for separate files, possibly > by using Power Shell). That's what cfbot is using for Windows for > now, which works really well, but it'd be nice to have more > options/choices. For another example of Windows builds working on > another CI, see the Github Actions patch I posted earlier when I was > considering that for cfbot[1]. I think what's different is that those > other CIs have images with MSVC on them, but Cirrus wants you to > figure out how to install the right toolchain yourself (and then, as a > next step after it's actually working, it also provides a way to > define what you want in a way that captures the resulting image using > Docker voodoo, so that you get fast startup times). Or something. > > [1] > https://www.postgresql.org/message-id/flat/CA%2BhUKG%2By_SHVQcU3CPokmJxuHp1niebCjq4XzZizf8SR9ZdQRQ%40mail.gmail.com > >
Here's what I use for MS Tools in automated setups, which gives you all you should need: choco install -y --no-progress --limit-output visualstudio2019-workload-vctools --package-parameters "--includeOptional" Your PATH adjustment should add this: C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\MSBuild\Current\bin There might be other environment settings needed - see drongo's config on the buildfarm. LMK how you get on. Constructing an image where you don't have to do that every build would be super nice. cheers andrew -- Andrew Dunstan EDB: https://www.enterprisedb.com