wip #1889
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: Cool Tests | |
on: ["push"] | |
jobs: | |
lint: | |
runs-on: ubuntu-latest | |
steps: | |
- name: setup pre-built mpr | |
run: | | |
curl -q 'https://proget.makedeb.org/debian-feeds/prebuilt-mpr.pub' | gpg --dearmor | sudo tee /usr/share/keyrings/prebuilt-mpr-archive-keyring.gpg 1> /dev/null | |
echo "deb [signed-by=/usr/share/keyrings/prebuilt-mpr-archive-keyring.gpg] https://proget.makedeb.org prebuilt-mpr $(lsb_release -cs)" | sudo tee /etc/apt/sources.list.d/prebuilt-mpr.list | |
sudo apt update | |
- name: install dependancies | |
run: | | |
sudo apt install -y libasound2-dev lame libmp3lame-dev vorbis-tools lld just | |
- uses: actions/checkout@v2 | |
- uses: Swatinem/rust-cache@v2 | |
with: | |
cache-on-failure: true | |
key: "weresocool-lint" | |
- uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: stable | |
components: clippy, rustfmt | |
override: true | |
- name: format | |
run: just format-ci | |
- name: clippy | |
run: just clippy | |
ubuntu: | |
runs-on: ubuntu-latest | |
steps: | |
- name: setup pre-built mpr | |
run: | | |
curl -q 'https://proget.makedeb.org/debian-feeds/prebuilt-mpr.pub' | gpg --dearmor | sudo tee /usr/share/keyrings/prebuilt-mpr-archive-keyring.gpg 1> /dev/null | |
echo "deb [signed-by=/usr/share/keyrings/prebuilt-mpr-archive-keyring.gpg] https://proget.makedeb.org prebuilt-mpr $(lsb_release -cs)" | sudo tee /etc/apt/sources.list.d/prebuilt-mpr.list | |
sudo apt update | |
# - name: setup dummy soundcard | |
# run: | | |
# sudo echo "pcm.!default { type plug slave.pcm 'null' }" > $HOME/.asoundrc | |
- name: install dependancies | |
run: | | |
sudo apt install -y libasound2-dev lame libmp3lame-dev vorbis-tools lld pulseaudio just | |
- name: start pulseaudio daemon | |
run: | | |
pulseaudio -D --exit-idle-time=-1 | |
- uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: stable | |
override: true | |
- uses: actions/checkout@v2 | |
- uses: Swatinem/rust-cache@v2 | |
with: | |
cache-on-failure: true | |
key: "weresocool-ubuntu" | |
- name: run tests | |
run: just test | |
macos: | |
runs-on: macos-latest | |
steps: | |
- name: Install dependencies | |
run: | | |
brew update | |
brew install lame libvorbis just | |
- name: Debug environment | |
run: | | |
which lame | |
- name: Set library path | |
run: | | |
export LIBRARY_PATH=/opt/homebrew/lib:$LIBRARY_PATH | |
export LD_LIBRARY_PATH=/opt/homebrew/lib:$LD_LIBRARY_PATH | |
- uses: actions/checkout@v2 | |
- uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: stable | |
override: true | |
- uses: Swatinem/rust-cache@v2 | |
with: | |
cache-on-failure: true | |
key: "weresocool-macos" | |
- name: Run tests | |
env: | |
LIBRARY_PATH: /opt/homebrew/lib:$LIBRARY_PATH | |
LD_LIBRARY_PATH: /opt/homebrew/lib:$LD_LIBRARY_PATH | |
run: just test | |
windows: | |
runs-on: windows-latest | |
steps: | |
- name: start audiosrv | |
run: net start audiosrv | |
- name: Install scream (non-admin) | |
run: | | |
Invoke-WebRequest https://github.com/duncanthrax/scream/releases/download/3.8/Scream3.8.zip -OutFile Scream3.8.zip | |
Expand-Archive -Path Scream3.8.zip -DestinationPath Scream | |
Write-Host "Skipping certificate and driver installation due to lack of admin privileges." | |
- uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: stable | |
override: true | |
- uses: actions/checkout@v2 | |
- uses: Swatinem/rust-cache@v2 | |
with: | |
cache-on-failure: true | |
key: "weresocool-windows" | |
- name: run tests | |
run: cargo test --release |