notcurses/.github/workflows/ubuntu_test.yml

90 lines
1.9 KiB
YAML

---
name: 🐧 Tests on Ubuntu
on:
workflow_dispatch:
pull_request:
push:
branches:
- master
jobs:
tests:
runs-on: ubuntu-latest
env:
COLORTERM: truecolor
TERM: xterm
steps:
- name: Install tools and libraries via APT
run: |
sudo apt update
sudo apt install -y \
build-essential \
cmake \
doctest-dev \
ffmpeg \
libavcodec-dev \
libavformat-dev \
libavutil-dev \
libncurses-dev \
libqrcodegen-dev \
libreadline-dev \
libswscale-dev \
libunistring-dev \
pandoc \
pkg-config \
python3-cffi \
python3-dev \
python3-setuptools
- name: Checkout manually
run: |
git clone "https://github.com/${GITHUB_REPOSITORY}" .
- name: cmake
run: |
mkdir build && cd build
cmake .. \
-DCMAKE_BUILD_TYPE=Release \
-DUSE_QRCODEGEN=on
- name: make
run: |
cd build
make -j"$(nproc)"
- name: ctest
run: |
cd build
ctest --output-on-failure
- name: make install
run: |
cd build
sudo make install
sudo ldconfig
- name: old python wrappers
run: |
python3 -m pip install --upgrade pip
pip install pypandoc
cd cffi
python3 setup.py sdist build
sudo python3 setup.py install
notcurses-pydemo > /dev/null
ncdirect-pydemo > /dev/null
- name: rust wrappers
run: |
cd rust
rustc --version
cargo build
cargo t_all
- name: Build new python wrappers
run: |
cd python
python3 setup.py build
sudo python3 setup.py install
python3 examples/000-print-version.py