Skip to content

CI: Preserve logs as a build artifact #48

CI: Preserve logs as a build artifact

CI: Preserve logs as a build artifact #48

Workflow file for this run

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() }}