feat(lottie): add lottie widget #12461
Workflow file for this run
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: C/C++ CI | |
on: | |
push: | |
branches: [ master, release/v8.* ] | |
pull_request: | |
branches: [ master, release/v8.* ] | |
jobs: | |
build: | |
if: ${{ github.event_name != 'pull_request' || github.repository != github.event.pull_request.head.repo.full_name }} | |
runs-on: ubuntu-22.04 | |
strategy: | |
matrix: | |
# A valid option parameter to the cmake file. | |
# See BUILD_OPTIONS in tests/CMakeLists.txt. | |
build_option: ['OPTIONS_16BIT', | |
'OPTIONS_24BIT', | |
'OPTIONS_FULL_32BIT', | |
"OPTIONS_VG_LITE"] | |
name: Build ${{ matrix.build_option }} | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: ammaraskar/gcc-problem-matcher@master | |
- name: Install prerequisites | |
run: scripts/install-prerequisites.sh | |
- name: Building ${{ matrix.build_option }} | |
run: python tests/main.py --build-option=${{ matrix.build_option }} build | |
build-windows-GCC: | |
runs-on: windows-2022 | |
name: Build Windows GCC | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: ammaraskar/gcc-problem-matcher@master | |
- name: Install prerequisites | |
run: scripts\install-prerequisites.bat | |
- name: Build | |
run: python tests/main.py build | |
env: | |
CC: gcc | |
build-windows-MSVC: | |
runs-on: windows-2022 | |
name: Build Windows MSVC | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install prerequisites | |
run: scripts\install-prerequisites.bat | |
- uses: ilammy/msvc-dev-cmd@v1 | |
with: | |
arch: x64 | |
- uses: ruby/setup-ruby@v1 | |
with: | |
ruby-version: 'mswin' | |
- name: Build | |
run: python tests/main.py build | |
env: | |
CC: cl | |
test-native: | |
runs-on: ubuntu-22.04 | |
name: amd64 Executable Tests | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: ammaraskar/gcc-problem-matcher@master | |
- name: Install prerequisites | |
run: scripts/install-prerequisites.sh | |
- name: Run tests | |
run: python tests/main.py --report --update-image test | |
- name: Archive screenshot errors | |
if: failure() | |
uses: actions/upload-artifact@v4 | |
with: | |
name: screenshot-errors-amd64 | |
path: | | |
tests/ref_imgs/**/*_err.png | |
test_screenshot_error.h | |
# - name: Upload coverage to Codecov | |
# uses: codecov/codecov-action@v4 | |
# if: github.event_name == 'push' && github.repository == 'lvgl/lvgl' | |
# with: | |
# fail_ci_if_error: true | |
# verbose: true | |
test-cross: | |
# The host should always be linux | |
runs-on: ubuntu-22.04 | |
name: ${{ matrix.arch }} Executable Tests | |
# Run steps on a matrix of 3 arch/distro combinations | |
strategy: | |
matrix: | |
include: | |
- arch: aarch64 | |
distro: ubuntu22.04 | |
- arch: armv6 | |
distro: bullseye | |
- arch: armv7 | |
distro: bullseye | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: ammaraskar/gcc-problem-matcher@master | |
- name: Setup cache | |
uses: actions/cache@v4 | |
with: | |
path: | | |
~/.ccache | |
key: lvgl_ci_cross_test_ccache_${{ matrix.arch }}_${{ github.sha }} | |
restore-keys: | | |
lvgl_ci_cross_test_ccache_${{ matrix.arch }} | |
- uses: uraimo/run-on-arch-action@v2.7.2 | |
name: Run tests | |
id: build | |
with: | |
arch: ${{ matrix.arch }} | |
distro: ${{ matrix.distro }} | |
# Not required, but speeds up builds | |
githubToken: ${{ github.token }} | |
# The shell to run commands with in the container | |
shell: /bin/bash | |
# Create cached/volume directories on host | |
setup: | | |
mkdir -p ~/.ccache | |
# Mount cached directories in the container for faster builds | |
dockerRunArgs: | | |
--volume "${HOME}/.ccache:/root/.ccache" | |
install: | | |
apt-get update -y | |
if [[ "${{ matrix.distro }}" == "ubuntu22.04" ]]; then | |
apt-get install libjpeg-turbo8-dev -q -y | |
else | |
apt-get install libjpeg62-turbo-dev -q -y | |
fi | |
apt-get install build-essential ccache libgcc-10-dev python3 libpng-dev ruby-full gcovr cmake libfreetype6-dev libasan6 pngquant python3-pip libinput-dev libxkbcommon-dev libdrm-dev pkg-config ninja-build -q -y | |
pip install pypng lz4 | |
/usr/sbin/update-ccache-symlinks | |
echo 'export PATH="/usr/lib/ccache:$PATH"' | tee -a ~/.bashrc | |
run: | | |
env PATH="/usr/lib/ccache:$PATH" NON_AMD64_BUILD=1 ASAN_OPTIONS=detect_leaks=0 python3 tests/main.py test | |
- name: Archive screenshot errors | |
if: failure() | |
uses: actions/upload-artifact@v4 | |
with: | |
name: screenshot-errors-${{ matrix.arch }} | |
path: | | |
tests/ref_imgs/**/*_err.png | |
test_screenshot_error.h |