CI: Preserve logs as a build artifact #48
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Cygwin | |
on: | |
push: | |
branches: | |
- master | |
- 'cygport-*' | |
- 'topic/**' | |
workflow_dispatch: | |
env: | |
CASE_INSENSITIVE: 1 | |
jobs: | |
cygport: | |
name: cygport | |
runs-on: windows-latest | |
steps: | |
- name: Turn off line ending conversion in git | |
run: | | |
git config --global core.autocrlf false | |
git config --global core.eol lf | |
- uses: actions/checkout@v1 | |
with: | |
submodules: true | |
- uses: actions/cache@v3 | |
with: | |
path: C:\cygwin-packages | |
key: cygwin-packages-${{ hashFiles('C:\cygwin-packages\**') }} | |
restore-keys: cygwin-packages- | |
- name: Fetch Cygwin installer | |
run: | | |
Invoke-WebRequest https://cygwin.com/setup-x86_64.exe -OutFile C:\setup.exe | |
shell: powershell | |
# installer should be cacheable | |
- name: Install Cygwin | |
run: | | |
c:\setup.exe -qgnO -s http://mirrors.kernel.org/sourceware/cygwin/ -l C:\cygwin-packages\ -P ^ | |
R,^ | |
aspell,^ | |
automake,^ | |
bison,^ | |
cmake,^ | |
cvs,^ | |
diffstat,^ | |
dos2unix,^ | |
extra-cmake-modules,^ | |
flex,^ | |
flexdll,^ | |
fontforge,^ | |
gcc-g++,^ | |
git,^ | |
git-archive-all,^ | |
gnome-common,^ | |
gobject-introspection,^ | |
help2man,^ | |
httpd-devel,^ | |
kf5-kdoctools,^ | |
libGL-devel,^ | |
libGeoIP-devel,^ | |
libKF5XmlGui-devel,^ | |
libQt5Core-devel,^ | |
libQt5Svg-devel,^ | |
libQtCore4-devel,^ | |
libQtGui4-devel,^ | |
libQtNetwork4-devel,^ | |
libQtTest4-devel,^ | |
libQtXml4-devel,^ | |
libRmath,^ | |
libbz2-devel,^ | |
libcairomm1.0-devel,^ | |
libcrypt-devel,^ | |
libgdk_pixbuf2.0-devel,^ | |
libgirepository1.0-devel,^ | |
libglibmm2.4-devel,^ | |
libicu-devel,^ | |
liblua-devel,^ | |
liblzma-devel,^ | |
libnotify-devel,^ | |
libpango1.0-devel,^ | |
libpcre2-devel,^ | |
libqca-devel,^ | |
libqca-qt5-devel,^ | |
libtirpc-devel,^ | |
libxfce4ui1-devel,^ | |
libxfconf0-devel,^ | |
lndir,^ | |
lua,^ | |
make,^ | |
mate-common,^ | |
mercurial,^ | |
meson,^ | |
mingw64-i686-gcc-core,^ | |
mingw64-i686-qt5-base,^ | |
mingw64-i686-qt5-tools,^ | |
mm-common,^ | |
monotone,^ | |
ninja,^ | |
ocaml,^ | |
ocaml-dune,^ | |
ocaml-findlib,^ | |
patch,^ | |
perl,^ | |
perl-Module-Build,^ | |
php-PEAR,^ | |
python38-devel,^ | |
python27-wheel,^ | |
python37-pip,^ | |
python37-setuptools,^ | |
python37-wheel,^ | |
python38-pip,^ | |
python38-setuptools,^ | |
python38-wheel,^ | |
python38-pygments,^ | |
python39-pip,^ | |
python39-setuptools,^ | |
python39-wheel,^ | |
robodoc,^ | |
ruby,^ | |
ruby-rack,^ | |
subversion,^ | |
unzip,^ | |
xfce4-dev-tools,^ | |
xfce4-panel-devel | |
shell: cmd | |
- name: Set PATH | |
run: echo "PATH=C:\cygwin64\bin;C:\cygwin64\lib\lapack;%SYSTEMROOT%\system32" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append | |
- name: Fixup Cygwin installation | |
run: | | |
bash --login | |
bash -c '/usr/sbin/alternatives --set python /usr/bin/python3.8' | |
bash -c '/usr/sbin/alternatives --set python3 /usr/bin/python3.8' | |
bash -c '/usr/sbin/alternatives --set python3-config /usr/bin/python3.8-config' | |
bash -c 'sed -i s#/usr/bin/python\$#/usr/bin/python3.9# /usr/bin/pip3.9' | |
bash -c 'git config --system --add safe.directory /cygdrive/d/a/cygport/cygport' | |
bash -c 'git config --system --add safe.directory /cygdrive/d/a/cygport/cygport/data/gnuconfig' | |
continue-on-error: true | |
- name: Build | |
run: | | |
bash -c 'meson _build && ninja -C _build' | |
- name: Test | |
run: | | |
bash -c 'meson test -C _build --print-errorlogs' | |
- name: Upload test logs | |
uses: actions/upload-artifact@v3 | |
with: | |
name: testlogs | |
path: _build/meson-logs/* | |
if: ${{ !cancelled() }} |