Skip to content

Build and Test

Build and Test #177

Workflow file for this run

name: "Build and Test"
on:
push:
branches:
- '*'
tags-ignore:
- '*'
paths-ignore:
- '*.md'
- 'docs/**'
pull_request:
workflow_dispatch:
release:
types: [ published ]
permissions:
pull-requests: write
contents: write
jobs:
linux-x86_64:
runs-on: ubuntu-24.04
steps:
- shell: bash
name: "Setup build environment"
run: |
sudo rm -rf dovi_tool/ || true
sudo apt-get update
sudo apt-get install -y build-essential git pkg-config cmake nasm clang curl python3-pip python3-wheel ninja-build
sudo apt-get install -y libva-dev libdrm-dev libpipewire-0.3-dev libasound-dev libpulse-dev libgl-dev libglx-dev libegl-dev libssl-dev hwdata libsystemd-dev
sudo apt-get remove -y libz3-dev
sudo pip3 install meson
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sudo -i sh -s -- -y
sudo -i rustup default stable
sudo -i cargo install cargo-c
sudo rm -rf dovi_tool && git clone -b 2.3.1 https://github.com/quietvoid/dovi_tool.git
pushd dovi_tool/dolby_vision
sudo -i bash -c "cd $(pwd) && cargo cinstall --release --prefix /usr"
popd
sudo rm -rf dovi_tool/
- uses: silenium-dev/actions/jni-natives/ubuntu@main
with:
gradle-cache-encryption-key: ${{ secrets.GRADLE_CACHE_ENCRYPTION_KEY }}
snapshot-repo-url: "https://reposilite.silenium.dev/snapshots"
release-repo-url: "https://reposilite.silenium.dev/releases"
repo-username: ${{ secrets.REPOSILITE_USERNAME }}
repo-password: ${{ secrets.REPOSILITE_PASSWORD }}
tests: false
java-version: 17
platform: ${{ github.job }}
kotlin:
runs-on: ubuntu-24.04
steps:
- uses: silenium-dev/actions/kotlin@main
with:
gradle-cache-encryption-key: ${{ secrets.GRADLE_CACHE_ENCRYPTION_KEY }}
snapshot-repo-url: "https://reposilite.silenium.dev/snapshots"
release-repo-url: "https://reposilite.silenium.dev/releases"
repo-username: ${{ secrets.REPOSILITE_USERNAME }}
repo-password: ${{ secrets.REPOSILITE_PASSWORD }}
tests: false
java-version: 17