CI: install xmllint before running tests #652
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
on: [push] | |
name: macos | |
jobs: | |
build: | |
runs-on: macos-latest | |
timeout-minutes: 100 | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/rust-toolchain@stable | |
- uses: taiki-e/install-action@cargo-hack | |
# The "|| true" on upgrade is to work around homebrew conflicts between GitHub-installed Python versions | |
# and those required by our packages. | |
- name: install GPAC/MP4Box | |
run: | | |
brew update | |
brew upgrade || true | |
HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK=1 brew install gpac | |
MP4Box -version | |
- name: install ffmpeg | |
run: brew install ffmpeg | |
- name: install mkvmerge | |
run: brew install mkvtoolnix | |
- name: install mediainfo | |
run: | | |
brew install media-info | |
mediainfo --Version | |
# We can't install the version of Bento4 distributed with brew, because it conflicts with GPAC | |
- name: install Bento4 mp4decrypt | |
run: | | |
wget -q -O /tmp/bento4.zip https://www.bok.net/Bento4/binaries/Bento4-SDK-1-6-0-641.universal-apple-macosx.zip | |
unzip /tmp/bento4.zip "Bento4-SDK-*/bin/mp4decrypt" -d /tmp | |
sudo mv /tmp/Bento4-SDK*/bin/mp4decrypt /usr/local/bin | |
# Shaka packager is not available via homebrew. Alternatively, could use docker | |
# google/shaka-packager. Here we are depending on the macos runner being an AMD64 machine. | |
- name: Install shaka-packager | |
run: | | |
wget -q -O /tmp/shaka-packager https://github.com/shaka-project/shaka-packager/releases/latest/download/packager-osx-x64 | |
mv /tmp/shaka-packager /usr/local/bin | |
chmod +x /usr/local/bin/shaka-packager | |
# We need libxml2 for xmllint, used in the serialization tests. | |
- name: install xsltproc | |
run: brew install libxslt libxml2 | |
- name: install protobuf compiler | |
run: brew install protobuf cmake | |
- run: cargo hack check --feature-powerset --exclude-features libav --no-dev-deps | |
- run: cargo build | |
- run: RUST_LOG=info cargo test --jobs 1 --verbose --no-run | |
- run: RUST_LOG=info cargo test --jobs 1 --verbose -- --show-output |