Fixup #206
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: prebuild | |
on: [push] | |
permissions: | |
contents: write | |
jobs: | |
linux-package: | |
permissions: | |
contents: write | |
runs-on: ubuntu-24.04 | |
container: | |
image: ubuntu:24.04 | |
steps: | |
- name: check Linux dependencies | |
shell: bash | |
run: | | |
apt update | |
DEBIAN_FRONTEND=noninteractive apt install --no-install-recommends --no-install-suggests -y git git-lfs \ | |
libxcb1 unzip nodejs curl nodejs npm python3-setuptools build-essential libxcb1-dev | |
- uses: actions/checkout@v2 | |
with: | |
lfs: true | |
- name: npm install | |
run: npm install | |
env: | |
PREBUILD: true | |
- name: check Linux dependencies | |
run: node ./install_ffmpeg.js | |
- name: prebuild for Linux (x64) | |
run: npx prebuild --runtime napi --arch x64 --include-regex '(\.node|\.dylib|ffmpeg|ffprobe)$' --upload ${{ secrets.GITHUB_TOKEN }} | |
windows-package: | |
permissions: | |
contents: write | |
runs-on: windows-latest | |
steps: | |
- uses: actions/checkout@v2 | |
with: | |
lfs: true | |
- name: Use nodejs | |
uses: actions/setup-node@v1 | |
with: | |
node-version: 16.13.0 | |
- name: npm install | |
run: npm install | |
env: | |
PREBUILD: true | |
- name: install Windows dependencies | |
run: node ./install_ffmpeg.js | |
- name: prebuild for Windows | |
run: npx prebuild --runtime napi --include-regex '.node|.dll|.exe' --verbose --upload ${{ secrets.GITHUB_TOKEN }} | |
shell: bash | |
macos-package: | |
permissions: | |
contents: write | |
runs-on: macos-latest | |
steps: | |
- uses: actions/checkout@v2 | |
with: | |
lfs: true | |
- name: Use nodejs | |
uses: actions/setup-node@v1 | |
with: | |
node-version: 16.13.0 | |
- name: install Mac build dependencies (brew) | |
run: | | |
brew install nasm pkg-config python-packaging python-setuptools | |
- name: npm install | |
run: npm install | |
env: | |
PREBUILD: true | |
- name: install Mac dependencies (shared release x64) | |
run: node ./install_ffmpeg.js --arch x64 | |
- name: install Mac dependencies (shared release arm64) | |
run: node ./install_ffmpeg.js --arch arm64 | |
- name: prebuild Release for macOS (x64) | |
run: npx prebuild --runtime napi --arch x64 --include-regex '(\.node|\.dylib|ffmpeg|ffprobe)$' --verbose --upload ${{ secrets.GITHUB_TOKEN }} | |
- name: clean build directory for cross-compiling | |
run: rm ./build/Release/*.dylib || true | |
- name: prebuild Release for macOS (arm64) | |
run: npx prebuild --runtime napi --arch arm64 --include-regex '(\.node|\.dylib|ffmpeg|ffprobe)$' --verbose --upload ${{ secrets.GITHUB_TOKEN }} |