ci: fix AppVeyor MSYS2 keyring bootstrap failure

The previous fix using pacman-key --populate hit a circular dependency:
installing msys2-keyring requires verifying it, but verification requires
the updated keyring. Break the cycle by temporarily setting SigLevel=Never
in pacman.conf to allow the initial sync and keyring install, then restore
the original SigLevel before the second update runs with proper verification.

Note: Windows CI is also covered by .github/workflows/windows-ci.yml which
uses msys2/setup-msys2@v2 and handles keyring setup automatically.
This commit is contained in:
LD-RW 2026-04-10 22:24:05 +03:00
parent 6144af7e9b
commit f5913295d0

View file

@ -39,9 +39,10 @@ install:
- set PATH=c:\msys64\%MSYSTEM%\bin;c:\msys64\usr\bin;%PATH%
- if defined MSVC call "c:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" %MSVC%
- if defined MSVC pacman --noconfirm -Rsc mingw-w64-%CPU%-gcc gcc
- pacman-key --init
- pacman-key --populate msys2
- pacman -Sy --noconfirm msys2-keyring
- bash -c "sed -i 's/^SigLevel.*/SigLevel = Never/' /etc/pacman.conf"
- pacman --noconfirm -Syuu
- pacman --noconfirm -S msys2-keyring
- bash -c "sed -i 's/^SigLevel = Never/SigLevel = Required DatabaseOptional/' /etc/pacman.conf"
- pacman --noconfirm -Syuu
- pacman --noconfirm -S autoconf