Message ID | 20201007105518.1019-2-luoyonggang@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Improve cirrus msys2 | expand |
The building result are at https://cirrus-ci.com/task/4899553256144896 On Wed, Oct 7, 2020 at 6:55 PM Yonggang Luo <luoyonggang@gmail.com> wrote: > > Use cache of cirrus caching msys2 > The install of msys2 are refer to https://github.com/msys2/setup-msys2 > The first time install msys2 would be time consuming, so increase timeout_in to 90m > according to https://cirrus-ci.org/faq/#instance-timed-out > > Apply patch of https://lists.gnu.org/archive/html/qemu-devel/2020-10/msg00072.html > > Signed-off-by: Yonggang Luo <luoyonggang@gmail.com> > --- > .cirrus.yml | 104 +++++++++++++++++++++++++++++----------------------- > 1 file changed, 59 insertions(+), 45 deletions(-) > > diff --git a/.cirrus.yml b/.cirrus.yml > index d58782ce67..b58fb63521 100644 > --- a/.cirrus.yml > +++ b/.cirrus.yml > @@ -46,64 +46,78 @@ macos_xcode_task: > - gmake check > > windows_msys2_task: > + timeout_in: 90m > windows_container: > - image: cirrusci/windowsservercore:cmake > + image: cirrusci/windowsservercore:2019 > os_version: 2019 > cpu: 8 > memory: 8G > env: > + CIRRUS_SHELL: powershell > MSYS: winsymlinks:nativestrict > MSYSTEM: MINGW64 > CHERE_INVOKING: 1 > - printenv_script: > - - C:\tools\msys64\usr\bin\bash.exe -lc 'printenv' > + msys2_cache: > + folder: C:\tools\msys64 > + reupload_on_changes: false > + fingerprint_script: cat .cirrus.yml > + populate_script: > + - | > + Write-Output $env:PATH > + md C:\tools > + $start_time = Get-Date > + cd C:\tools > + bitsadmin /transfer msys_download /dynamic /download /priority FOREGROUND https://github.com/msys2/msys2-installer/releases/download/2020-09-03/msys2-base-x86_64-20200903.sfx.exe C:\tools\base.exe > + Write-Output "Download time taken: $((Get-Date).Subtract($start_time).Seconds) second(s)" > + C:\tools\base.exe -y > + ((Get-Content -path C:\tools\msys64\etc\\post-install\\ 07-pacman-key.post -Raw) -replace '--refresh-keys', '--version') | Set-Content -Path C:\tools\msys64\etc\\post-install\\07-pacman-key.post > + C:\tools\msys64\usr\bin\bash.exe -lc "sed -i 's/^CheckSpace/#CheckSpace/g' /etc/pacman.conf" > + C:\tools\msys64\usr\bin\bash.exe -lc "export" > + C:\tools\msys64\usr\bin\bash.exe -lc "grep -rl 'repo.msys2.org/' /etc/pacman.d/mirrorlist.* | xargs sed -i 's/repo.msys2.org\// mirrors.tuna.tsinghua.edu.cn\/msys2\//g'" > + C:\tools\msys64\usr\bin\pacman.exe --noconfirm -Sy > + echo Y | C:\tools\msys64\usr\bin\pacman.exe --noconfirm -Suu --overwrite '*' > + taskkill /F /FI "MODULES eq msys-2.0.dll" > + tasklist > + C:\tools\msys64\usr\bin\bash.exe -lc "mv -f /etc/pacman.conf.pacnew /etc/pacman.conf || true" > + C:\tools\msys64\usr\bin\bash.exe -lc "pacman --noconfirm -Suu --overwrite '*'" > + C:\tools\msys64\usr\bin\bash.exe -lc "pacman --noconfirm -S --needed \ > + diffutils git grep make pkg-config sed \ > + mingw-w64-x86_64-python \ > + mingw-w64-x86_64-python-setuptools \ > + mingw-w64-x86_64-toolchain \ > + mingw-w64-x86_64-SDL2 \ > + mingw-w64-x86_64-SDL2_image \ > + mingw-w64-x86_64-gtk3 \ > + mingw-w64-x86_64-glib2 \ > + mingw-w64-x86_64-ninja \ > + mingw-w64-x86_64-jemalloc \ > + mingw-w64-x86_64-lzo2 \ > + mingw-w64-x86_64-zstd \ > + mingw-w64-x86_64-libjpeg-turbo \ > + mingw-w64-x86_64-pixman \ > + mingw-w64-x86_64-libgcrypt \ > + mingw-w64-x86_64-libpng \ > + mingw-w64-x86_64-libssh \ > + mingw-w64-x86_64-libxml2 \ > + mingw-w64-x86_64-snappy \ > + mingw-w64-x86_64-libusb \ > + mingw-w64-x86_64-usbredir \ > + mingw-w64-x86_64-libtasn1 \ > + mingw-w64-x86_64-nettle \ > + mingw-w64-x86_64-cyrus-sasl \ > + mingw-w64-x86_64-curl \ > + mingw-w64-x86_64-gnutls \ > + " > install_script: > - - C:\tools\msys64\usr\bin\bash.exe -lc "cd /c/tools && > - curl -O http://repo.msys2.org/msys/x86_64/msys2-keyring-r21.b39fb11-1-any.pkg.tar.xz " > - - C:\tools\msys64\usr\bin\bash.exe -lc "cd /c/tools && > - curl -O http://repo.msys2.org/msys/x86_64/msys2-keyring-r21.b39fb11-1-any.pkg.tar.xz.sig " > - - C:\tools\msys64\usr\bin\bash.exe -lc "cd /c/tools && > - pacman -U --noconfirm msys2-keyring-r21.b39fb11-1-any.pkg.tar.xz" > - - C:\tools\msys64\usr\bin\bash.exe -lc "pacman --noconfirm -Sy" > - - C:\tools\msys64\usr\bin\bash.exe -lc "pacman --noconfirm -S --needed > - bash pacman pacman-mirrors msys2-runtime" > - - taskkill /F /IM gpg-agent.exe > - - C:\tools\msys64\usr\bin\bash.exe -lc "pacman --noconfirm -Su" > - - C:\tools\msys64\usr\bin\bash.exe -lc "pacman --noconfirm -S --needed > - base-devel > - git > - mingw-w64-x86_64-python > - mingw-w64-x86_64-python-setuptools > - mingw-w64-x86_64-toolchain > - mingw-w64-x86_64-capstone > - mingw-w64-x86_64-SDL2 > - mingw-w64-x86_64-SDL2_image > - mingw-w64-x86_64-gtk3 > - mingw-w64-x86_64-glib2 > - mingw-w64-x86_64-ninja > - mingw-w64-x86_64-make > - mingw-w64-x86_64-lzo2 > - mingw-w64-x86_64-zstd > - mingw-w64-x86_64-libjpeg-turbo > - mingw-w64-x86_64-pixman > - mingw-w64-x86_64-libgcrypt > - mingw-w64-x86_64-libpng > - mingw-w64-x86_64-libssh > - mingw-w64-x86_64-libxml2 > - mingw-w64-x86_64-snappy > - mingw-w64-x86_64-libusb > - mingw-w64-x86_64-usbredir > - mingw-w64-x86_64-libtasn1 > - mingw-w64-x86_64-nettle > - mingw-w64-x86_64-cyrus-sasl > - mingw-w64-x86_64-curl > - mingw-w64-x86_64-gnutls > - mingw-w64-x86_64-zstd" > + - | > + Write-Output $env:PATH > + C:\tools\msys64\usr\bin\bash.exe -lc "export" > + > script: > - C:\tools\msys64\usr\bin\bash.exe -lc "mkdir build" > - C:\tools\msys64\usr\bin\bash.exe -lc "cd build && ../configure > --python=python3 --ninja=ninja > --target-list-exclude=i386-softmmu,arm-softmmu,ppc-softmmu,mips-softmmu" > - - C:\tools\msys64\usr\bin\bash.exe -lc "cd build && make -j$NUMBER_OF_PROCESSORS" > + - C:\tools\msys64\usr\bin\bash.exe -lc "cd build && make -j8" > test_script: > - C:\tools\msys64\usr\bin\bash.exe -lc "cd build && make V=1 check" > -- > 2.28.0.windows.1 > -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo
diff --git a/.cirrus.yml b/.cirrus.yml index d58782ce67..b58fb63521 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -46,64 +46,78 @@ macos_xcode_task: - gmake check windows_msys2_task: + timeout_in: 90m windows_container: - image: cirrusci/windowsservercore:cmake + image: cirrusci/windowsservercore:2019 os_version: 2019 cpu: 8 memory: 8G env: + CIRRUS_SHELL: powershell MSYS: winsymlinks:nativestrict MSYSTEM: MINGW64 CHERE_INVOKING: 1 - printenv_script: - - C:\tools\msys64\usr\bin\bash.exe -lc 'printenv' + msys2_cache: + folder: C:\tools\msys64 + reupload_on_changes: false + fingerprint_script: cat .cirrus.yml + populate_script: + - | + Write-Output $env:PATH + md C:\tools + $start_time = Get-Date + cd C:\tools + bitsadmin /transfer msys_download /dynamic /download /priority FOREGROUND https://github.com/msys2/msys2-installer/releases/download/2020-09-03/msys2-base-x86_64-20200903.sfx.exe C:\tools\base.exe + Write-Output "Download time taken: $((Get-Date).Subtract($start_time).Seconds) second(s)" + C:\tools\base.exe -y + ((Get-Content -path C:\tools\msys64\etc\\post-install\\07-pacman-key.post -Raw) -replace '--refresh-keys', '--version') | Set-Content -Path C:\tools\msys64\etc\\post-install\\07-pacman-key.post + C:\tools\msys64\usr\bin\bash.exe -lc "sed -i 's/^CheckSpace/#CheckSpace/g' /etc/pacman.conf" + C:\tools\msys64\usr\bin\bash.exe -lc "export" + C:\tools\msys64\usr\bin\bash.exe -lc "grep -rl 'repo.msys2.org/' /etc/pacman.d/mirrorlist.* | xargs sed -i 's/repo.msys2.org\//mirrors.tuna.tsinghua.edu.cn\/msys2\//g'" + C:\tools\msys64\usr\bin\pacman.exe --noconfirm -Sy + echo Y | C:\tools\msys64\usr\bin\pacman.exe --noconfirm -Suu --overwrite '*' + taskkill /F /FI "MODULES eq msys-2.0.dll" + tasklist + C:\tools\msys64\usr\bin\bash.exe -lc "mv -f /etc/pacman.conf.pacnew /etc/pacman.conf || true" + C:\tools\msys64\usr\bin\bash.exe -lc "pacman --noconfirm -Suu --overwrite '*'" + C:\tools\msys64\usr\bin\bash.exe -lc "pacman --noconfirm -S --needed \ + diffutils git grep make pkg-config sed \ + mingw-w64-x86_64-python \ + mingw-w64-x86_64-python-setuptools \ + mingw-w64-x86_64-toolchain \ + mingw-w64-x86_64-SDL2 \ + mingw-w64-x86_64-SDL2_image \ + mingw-w64-x86_64-gtk3 \ + mingw-w64-x86_64-glib2 \ + mingw-w64-x86_64-ninja \ + mingw-w64-x86_64-jemalloc \ + mingw-w64-x86_64-lzo2 \ + mingw-w64-x86_64-zstd \ + mingw-w64-x86_64-libjpeg-turbo \ + mingw-w64-x86_64-pixman \ + mingw-w64-x86_64-libgcrypt \ + mingw-w64-x86_64-libpng \ + mingw-w64-x86_64-libssh \ + mingw-w64-x86_64-libxml2 \ + mingw-w64-x86_64-snappy \ + mingw-w64-x86_64-libusb \ + mingw-w64-x86_64-usbredir \ + mingw-w64-x86_64-libtasn1 \ + mingw-w64-x86_64-nettle \ + mingw-w64-x86_64-cyrus-sasl \ + mingw-w64-x86_64-curl \ + mingw-w64-x86_64-gnutls \ + " install_script: - - C:\tools\msys64\usr\bin\bash.exe -lc "cd /c/tools && - curl -O http://repo.msys2.org/msys/x86_64/msys2-keyring-r21.b39fb11-1-any.pkg.tar.xz" - - C:\tools\msys64\usr\bin\bash.exe -lc "cd /c/tools && - curl -O http://repo.msys2.org/msys/x86_64/msys2-keyring-r21.b39fb11-1-any.pkg.tar.xz.sig" - - C:\tools\msys64\usr\bin\bash.exe -lc "cd /c/tools && - pacman -U --noconfirm msys2-keyring-r21.b39fb11-1-any.pkg.tar.xz" - - C:\tools\msys64\usr\bin\bash.exe -lc "pacman --noconfirm -Sy" - - C:\tools\msys64\usr\bin\bash.exe -lc "pacman --noconfirm -S --needed - bash pacman pacman-mirrors msys2-runtime" - - taskkill /F /IM gpg-agent.exe - - C:\tools\msys64\usr\bin\bash.exe -lc "pacman --noconfirm -Su" - - C:\tools\msys64\usr\bin\bash.exe -lc "pacman --noconfirm -S --needed - base-devel - git - mingw-w64-x86_64-python - mingw-w64-x86_64-python-setuptools - mingw-w64-x86_64-toolchain - mingw-w64-x86_64-capstone - mingw-w64-x86_64-SDL2 - mingw-w64-x86_64-SDL2_image - mingw-w64-x86_64-gtk3 - mingw-w64-x86_64-glib2 - mingw-w64-x86_64-ninja - mingw-w64-x86_64-make - mingw-w64-x86_64-lzo2 - mingw-w64-x86_64-zstd - mingw-w64-x86_64-libjpeg-turbo - mingw-w64-x86_64-pixman - mingw-w64-x86_64-libgcrypt - mingw-w64-x86_64-libpng - mingw-w64-x86_64-libssh - mingw-w64-x86_64-libxml2 - mingw-w64-x86_64-snappy - mingw-w64-x86_64-libusb - mingw-w64-x86_64-usbredir - mingw-w64-x86_64-libtasn1 - mingw-w64-x86_64-nettle - mingw-w64-x86_64-cyrus-sasl - mingw-w64-x86_64-curl - mingw-w64-x86_64-gnutls - mingw-w64-x86_64-zstd" + - | + Write-Output $env:PATH + C:\tools\msys64\usr\bin\bash.exe -lc "export" + script: - C:\tools\msys64\usr\bin\bash.exe -lc "mkdir build" - C:\tools\msys64\usr\bin\bash.exe -lc "cd build && ../configure --python=python3 --ninja=ninja --target-list-exclude=i386-softmmu,arm-softmmu,ppc-softmmu,mips-softmmu" - - C:\tools\msys64\usr\bin\bash.exe -lc "cd build && make -j$NUMBER_OF_PROCESSORS" + - C:\tools\msys64\usr\bin\bash.exe -lc "cd build && make -j8" test_script: - C:\tools\msys64\usr\bin\bash.exe -lc "cd build && make V=1 check"
Use cache of cirrus caching msys2 The install of msys2 are refer to https://github.com/msys2/setup-msys2 The first time install msys2 would be time consuming, so increase timeout_in to 90m according to https://cirrus-ci.org/faq/#instance-timed-out Apply patch of https://lists.gnu.org/archive/html/qemu-devel/2020-10/msg00072.html Signed-off-by: Yonggang Luo <luoyonggang@gmail.com> --- .cirrus.yml | 104 +++++++++++++++++++++++++++++----------------------- 1 file changed, 59 insertions(+), 45 deletions(-)