chore: debug printf format with CI

This commit is contained in:
Stéphane Lesimple
2021-01-17 12:54:10 +01:00
parent 9e5ba80e29
commit da44e81561

View File

@@ -3,185 +3,114 @@ name: non-regression tests
on: [pull_request] on: [pull_request]
jobs: jobs:
win:
win64-gui:
runs-on: windows-2016 runs-on: windows-2016
defaults: strategy:
run: matrix:
shell: msys2 {0} arch: [x86_64, i686]
steps: ui: [cli, gui]
- uses: msys2/setup-msys2@v2 printf: [fmtdbg, normal]
with: include:
- arch: x86_64
msystem: MINGW64 msystem: MINGW64
update: false grep: x86-64
install: git diffutils make pkg-config mingw-w64-x86_64-gtk2 mingw-w64-x86_64-glib2 mingw-w64-x86_64-gcc mingw-w64-x86_64-ghostscript mingw-w64-x86_64-jq mingw-w64-x86_64-ntldd-git man zip - arch: i686
- run: git config --global core.autocrlf input
shell: bash
- uses: actions/checkout@v2
- name: configure
run: ./configure
- name: make
run: nproc && make -j$(nproc)
- name: check executable
run: |
./dvdisaster.exe --version
file dvdisaster.exe
./dvdisaster.exe --version | grep -q -e dirty -e NOGUI && exit 1
file dvdisaster.exe | grep -q 'x86-64, for MS Windows'
- name: prepare dist
run: ./.github/workflows/make-dist.sh ${{ github.ref }}
id: dist
- name: check executability of dist from cmd.exe
shell: cmd
run: |
cd dist
dvdisaster.exe --version
- name: regression tests
run: mkdir /var/tmp/regtest && export REGTEST_NO_UTF8=1 && ./regtest/runtests.sh
win32-gui:
runs-on: windows-2016
defaults:
run:
shell: msys2 {0}
steps:
- uses: msys2/setup-msys2@v2
with:
msystem: MINGW32 msystem: MINGW32
update: false grep: 386
install: git diffutils make pkg-config mingw-w64-i686-gtk2 mingw-w64-i686-glib2 mingw-w64-i686-gcc mingw-w64-i686-ghostscript mingw-w64-i686-jq mingw-w64-i686-ntldd-git man zip - ui: cli
- run: git config --global core.autocrlf input clionly: --with-cli-only
shell: bash - printf: fmtdbg
- uses: actions/checkout@v2 debugprintf: --with-debug-printf-format
- name: configure
run: ./configure
- name: make
run: nproc && make -j$(nproc)
- name: check executable
run: |
./dvdisaster.exe --version
file dvdisaster.exe
./dvdisaster.exe --version | grep -q -e dirty -e NOGUI && exit 1
file dvdisaster.exe | grep -q '386, for MS Windows'
- name: prepare dist
run: ./.github/workflows/make-dist.sh ${{ github.ref }}
id: dist
- name: check executability of dist from cmd.exe
shell: cmd
run: |
cd dist
dvdisaster.exe --version
- name: regression tests
run: mkdir /var/tmp/regtest && export REGTEST_NO_UTF8=1 && ./regtest/runtests.sh
win64-cli:
runs-on: windows-2016
defaults: defaults:
run: run:
shell: msys2 {0} shell: msys2 {0}
steps: steps:
- uses: msys2/setup-msys2@v2 - uses: msys2/setup-msys2@v2
with: with:
msystem: MINGW64 msystem: ${{ matrix.msystem }}
update: false update: false
install: git diffutils make pkg-config mingw-w64-x86_64-glib2 mingw-w64-x86_64-gcc mingw-w64-x86_64-ghostscript mingw-w64-x86_64-jq mingw-w64-x86_64-ntldd-git man zip install: git diffutils make pkg-config mingw-w64-${{ matrix.arch }}-glib2 mingw-w64-${{ matrix.arch }}-gcc mingw-w64-${{ matrix.arch }}-ghostscript mingw-w64-${{ matrix.arch }}-ntldd-git man zip
- run: git config --global core.autocrlf input - name: install GUI prereqs
if: matrix.ui == 'gui'
run: pacman -S --noconfirm mingw-w64-${{ matrix.arch }}-gtk2
- name: git config
run: git config --global core.autocrlf input
shell: bash shell: bash
- uses: actions/checkout@v2 - uses: actions/checkout@v2
- name: configure - name: configure
run: ./configure --with-cli-only run: |
echo running ./configure ${{ matrix.clionly }}
./configure ${{ matrix.clionly }}
- name: make - name: make
run: nproc && make -j$(nproc) run: nproc && make -j$(nproc)
- name: check executable - name: check executable
run: | run: |
./dvdisaster.exe --version ./dvdisaster.exe --version
file dvdisaster.exe file dvdisaster.exe
./dvdisaster.exe --version | grep -q -e dirty && exit 1 if ./dvdisaster.exe --version | grep dirty; then exit 1; fi
./dvdisaster.exe --version | grep -q NOGUI file dvdisaster.exe | grep -q '${{ matrix.grep }}, for MS Windows'
file dvdisaster.exe | grep -q 'x86-64, for MS Windows' - name: check executable (GUI)
- name: prepare dist if: matrix.ui == 'gui'
run: ./.github/workflows/make-dist.sh ${{ github.ref }}
id: dist
- name: check executability of dist from cmd.exe
shell: cmd
run: |
cd dist
dvdisaster.exe --version
- name: regression tests
run: mkdir /var/tmp/regtest && export REGTEST_NO_UTF8=1 && ./regtest/runtests.sh
win32-cli:
runs-on: windows-2016
defaults:
run:
shell: msys2 {0}
steps:
- uses: msys2/setup-msys2@v2
with:
msystem: MINGW32
update: false
install: git diffutils make pkg-config mingw-w64-i686-glib2 mingw-w64-i686-gcc mingw-w64-i686-ghostscript mingw-w64-i686-jq mingw-w64-i686-ntldd-git man zip
- run: git config --global core.autocrlf input
shell: bash
- uses: actions/checkout@v2
- name: configure
run: ./configure --with-cli-only
- name: make
run: nproc && make -j$(nproc)
- name: check executable
run: | run: |
./dvdisaster.exe --version ./dvdisaster.exe --version
file dvdisaster.exe if ./dvdisaster.exe --version | grep NOGUI; then exit 1; fi
./dvdisaster.exe --version | grep -q -e dirty && exit 1 - name: check executable (CLI)
./dvdisaster.exe --version | grep -q NOGUI if: matrix.ui == 'cli'
file dvdisaster.exe | grep -q '386, for MS Windows'
- name: prepare dist
run: ./.github/workflows/make-dist.sh ${{ github.ref }}
id: dist
- name: check executability of dist from cmd.exe
shell: cmd
run: | run: |
cd dist ./dvdisaster.exe --version
dvdisaster.exe --version ./dvdisaster.exe --version | grep NOGUI
- name: regression tests - name: try to prepare dist
run: mkdir /var/tmp/regtest && export REGTEST_NO_UTF8=1 && ./regtest/runtests.sh run: ./.github/workflows/make-dist.sh ${{ github.ref }}
- name: run regression tests
if: matrix.printf == 'normal'
env:
REGTEST_NO_UTF8: 1
run: mkdir /var/tmp/regtest && ./regtest/runtests.sh
linux64-cli: linux:
runs-on: ubuntu-latest runs-on: ubuntu-latest
strategy:
matrix:
ui: [cli, gui]
printf: [fmtdbg, normal]
include:
- ui: cli
clionly: --with-cli-only
- printf: fmtdbg
debugprintf: --with-debug-printf-format
steps: steps:
- uses: actions/checkout@v2 - uses: actions/checkout@v2
- name: install prerequisites - name: install prerequisites
run: sudo apt update && sudo apt install -y libglib2.0-dev ghostscript man jq env:
DEBIAN_FRONTEND: noninteractive
run: sudo apt-get update && sudo apt-get install -y libglib2.0-dev ghostscript man jq
- name: install prerequisites (GUI)
if: matrix.ui == 'gui'
env:
DEBIAN_FRONTEND: noninteractive
run: sudo apt-get install -y libgtk2.0-dev
- name: configure - name: configure
run: ./configure --with-cli-only run: |
echo ./configure ${{ matrix.clionly }} ${{ matrix.debugprintf }} --with-werror
./configure ${{ matrix.clionly }} ${{ matrix.debugprintf }} --with-werror
- name: make - name: make
run: nproc && make -j$(nproc) run: nproc && make -j$(nproc)
- name: check executability - name: check executability
run: ./dvdisaster --version run: ./dvdisaster --version
- name: check executable - name: check executable (GUI)
run: file dvdisaster && file dvdisaster | grep -q 'ELF 64' if: matrix.ui == 'gui'
run: |
./dvdisaster --version
if ./dvdisaster --version | grep NOGUI; then exit 1; fi
- name: check executable (CLI)
if: matrix.ui == 'cli'
run: |
./dvdisaster --version
./dvdisaster --version | grep NOGUI
- name: prepare dist - name: prepare dist
run: ./.github/workflows/make-dist.sh ${{ github.ref }} run: ./.github/workflows/make-dist.sh ${{ github.ref }}
- name: regression tests - name: regression tests
run: mkdir /var/tmp/regtest && export REGTEST_NO_UTF8=1 && ./regtest/runtests.sh if: matrix.printf == 'normal'
env:
linux64-gui: REGTEST_NO_UTF8: 1
runs-on: ubuntu-latest run: mkdir /var/tmp/regtest && ./regtest/runtests.sh
steps:
- uses: actions/checkout@v2
- name: install prerequisites
run: sudo apt update && sudo apt install -y libglib2.0-dev ghostscript man jq libgtk2.0-dev
- name: configure
run: ./configure
- name: make
run: nproc && make -j$(nproc)
- name: check executability
run: ./dvdisaster --version
- name: check executable
run: file dvdisaster && file dvdisaster | grep -q 'ELF 64'
- name: prepare dist
run: ./.github/workflows/make-dist.sh ${{ github.ref }}
- name: regression tests
run: mkdir /var/tmp/regtest && export REGTEST_NO_UTF8=1 && ./regtest/runtests.sh