Re: Cirrus CI (Windows help wanted)
От
Andrew Dunstan
Тема
Re: Cirrus CI (Windows help wanted)
Дата
Msg-id
7e6844c5-11f7-2bc1-9087-c1372475fd1e@dunslane.net
Ответ на
Re: Cirrus CI (Windows help wanted) (Thomas Munro)
Список
Дерево обсуждения
Cirrus CI (Windows help wanted) Thomas Munro <thomas.munro@gmail.com>
Re: Cirrus CI (Windows help wanted) Kyotaro Horiguchi <horikyota.ntt@gmail.com>
Re: Cirrus CI (Windows help wanted) Andrew Dunstan <andrew@dunslane.net>
Re: Cirrus CI (Windows help wanted) Andrew Dunstan <andrew@dunslane.net>
Re: Cirrus CI (Windows help wanted) Andrew Dunstan <andrew@dunslane.net>
Re: Cirrus CI (Windows help wanted) Thomas Munro <thomas.munro@gmail.com>
Re: Cirrus CI (Windows help wanted) Andrew Dunstan <andrew@dunslane.net>
Re: Cirrus CI (Windows help wanted) Andrew Dunstan <andrew@dunslane.net>
Re: Cirrus CI (Windows help wanted) Andrew Dunstan <andrew@dunslane.net>
Re: Cirrus CI (Windows help wanted) Justin Pryzby <pryzby@telsasoft.com>
Re: Cirrus CI (Windows help wanted) Andres Freund <andres@anarazel.de>
Re: Cirrus CI (Windows help wanted) Thomas Munro <thomas.munro@gmail.com>
On 1/5/21 11:19 PM, Thomas Munro wrote:
>
> 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
>
>
OK, I got this working.
There is some weirdness that I had to work around in the way they do
docker. So here's what works for me, with the docker image nicely cached
even across repos:
.cirrus.yml:
task:
name: Windows
windows_container:
dockerfile: ci/Dockerfile
build_script:
- cd "c:/Program Files (x86)/Microsoft Visual Studio/2019/BuildTools/VC/Auxiliary/Build"
- vcvarsall x64
- echo on
- cd C:\Users\ContainerAdministrator\AppData\Local\Temp\cirrus-ci-build
- set PATH=C:\strawberry\perl\bin;%PATH%
- perl src/tools/msvc/mkvcbuild.pl
- set IgnoreWarnIntDirInTempDetected=true
- msbuild pgsql.sln
test_script:
- set PATH=C:\strawberry\perl\bin;%PATH%
- perl src/tools/msvc/vcregress.pl check
ci/Dockerfile:
FROM cirrusci/windowsservercore:2019
SHELL ["powershell", "-NoLogo", "-NoProfile", "-Command"]
RUN \
pwd ; \
choco feature disable -n=usePackageExitCodes ; \
choco install -y --no-progress --version=16.8.3.0 visualstudio2019buildtools
# cirrus does something odd with this command, so it's stuck in a bat file
# and copied to the docker container and then executed
COPY ci/inst-tools.bat .
RUN \
cmd /c .\inst-tools.bat
RUN \
choco install -y --no-progress strawberryperl ; \
choco install -y --no-progress winflexbison diffutils ; \
Rename-Item -Path c:\ProgramData\chocolatey\bin\win_flex.exe flex.exe ; \
Rename-Item -Path c:\ProgramData\chocolatey\bin\win_bison.exe bison.exe ; \
Remove-Item C:\ProgramData\chocolatey\logs\*.* -Force -Recurse ; \
Remove-Item C:\Users\ContainerAdministrator\AppData\Local\Temp\*.* -Force -Recurse
ci/inst-tools.bat:
choco install -y --no-progress --version=1.0.0 visualstudio2019-workload-vctools --install-args="--add Microsoft.VisualStudio.Component.VC.CLI.Support"
cheers
andrew
--
Andrew Dunstan
EDB: https://www.enterprisedb.com
В списке pgsql-hackers по дате отправления