diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..6d509fc --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,42 @@ +name: CI + +on: + pull_request: + push: + branches: + - main + +permissions: + contents: read + +jobs: + linux: + name: Linux + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: Install tools + run: | + sudo apt-get update + sudo apt-get install --no-install-recommends --yes shellcheck tmux + - name: Check shell syntax + run: bash -n nowplaying.tmux scripts/*.sh + - name: Run ShellCheck + run: shellcheck -x nowplaying.tmux scripts/*.sh + - name: Run tests + run: ./scripts/test.sh + + macos: + name: macOS + runs-on: macos-latest + steps: + - uses: actions/checkout@v4 + - name: Test with system Bash 3.2 + env: + PATH: /usr/bin:/bin:/usr/sbin:/sbin + run: | + /bin/bash --version + /bin/bash -n nowplaying.tmux scripts/*.sh + /bin/bash ./scripts/test.sh + - name: Type-check MediaRemote adapter + run: swiftc -typecheck scripts/nowplaying_mediaremote.swift