Skip to content

v0.1.6-alpha.20

v0.1.6-alpha.20 #31

Workflow file for this run

name: Releases
on:
push:
tags:
- "v*"
jobs:
build-ext-windows:
runs-on: windows-latest
steps:
- uses: actions/checkout@v4
- name: build js
run: |
npm install -g pnpm esbuild
pnpm setup
pnpm i
cd ./mpv-js-plugin-init
esbuild ./src/init.ts --bundle --outdir=./dist --charset=utf8 --format=iife
esbuild ./src/polyfill.ts --bundle --outdir=./dist --charset=utf8 --format=iife
cp -r ./dist ../mpv-deno
cp -r ./dist ../mpv-qjs
cd ..
- uses: actions-rust-lang/setup-rust-toolchain@v1
with:
rustflags: "-A warnings"
toolchain: "nightly"
- name: build ext
run: |
cd ./mpv-rs-ext
cargo build --release --out-dir=./output -Z unstable-options
cd ..
mv ./mpv-rs-ext/output/rs-ext.exe ./rs-ext-windows
- name: build deno
run: |
rustup target add nightly-x86_64-pc-windows-msvc
rustup toolchain install nightly-x86_64-pc-windows-msvc
rustup default nightly-x86_64-pc-windows-msvc
rustup set default-host nightly-x86_64-pc-windows-msvc
rustup override set nightly-x86_64-pc-windows-msvc
rustc --version
cd ./mpv-deno
cargo build --release --out-dir=./output -Z unstable-options
cd ..
mv ./mpv-deno/output/mpv_deno.dll ./mpv-deno-windows.dll
- uses: msys2/setup-msys2@v2
- shell: msys2 {0}
run: |
pacman -S mingw-w64-x86_64-gcc --noconfirm
- name: build qjs
run: |
rustup target add x86_64-pc-windows-gnu
rustup toolchain install nightly-x86_64-pc-windows-gnu
rustup default nightly-x86_64-pc-windows-gnu
rustup set default-host x86_64-pc-windows-gnu
rustup override set nightly-x86_64-pc-windows-gnu
rustc --version
cd ./mpv-qjs
cargo build --release --out-dir=./output -Z unstable-options
cd ..
mv ./mpv-qjs/output/mpv_qjs.dll ./mpv-qjs-windows.dll
- name: Upload windows Artifact ext
uses: actions/upload-artifact@v4
with:
name: rs-ext-windows
path: ./rs-ext-windows
- name: Upload windows Artifact deno
uses: actions/upload-artifact@v4
with:
name: mpv-deno-windows
path: ./mpv-deno-windows.dll
- name: Upload windows Artifact qjs
uses: actions/upload-artifact@v4
with:
name: mpv-qjs-windows
path: ./mpv-qjs-windows.dll
build-ext-macos:
runs-on: macos-latest
steps:
- uses: actions/checkout@v4
- name: Install latest nightly
uses: actions-rs/toolchain@v1
with:
toolchain: nightly
override: true
- name: build macos-latest
run: |
cd ./mpv-rs-ext
cargo build --release --out-dir=./output -Z unstable-options
cd ..
mv ./mpv-rs-ext/output/rs-ext ./rs-ext-macos
- name: Upload macos Artifact ext
uses: actions/upload-artifact@v4
with:
name: rs-ext-macos
path: ./rs-ext-macos
build-ext-ubuntu:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install latest nightly
uses: actions-rs/toolchain@v1
with:
toolchain: nightly
override: true
- name: build ubuntu-latest
run: |
cd ./mpv-rs-ext
cargo build --release --out-dir=./output -Z unstable-options
cd ..
mv ./mpv-rs-ext/output/rs-ext ./rs-ext-ubuntu
- name: Upload ubuntu Artifact ext
uses: actions/upload-artifact@v4
with:
name: rs-ext-ubuntu
path: ./rs-ext-ubuntu
release:
needs: [build-ext-windows, build-ext-macos, build-ext-ubuntu]
name: release
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- uses: actions/checkout@v4
- uses: actions/download-artifact@v4
with:
path: rs-ext
pattern: rs-ext-*
merge-multiple: true
- uses: actions/download-artifact@v4
with:
path: deno-dll
pattern: mpv-deno-*
merge-multiple: true
- uses: actions/download-artifact@v4
with:
path: qjs-dll
pattern: mpv-qjs-*
merge-multiple: true
- name: "build ts"
run: |
npm i pnpm -g
pnpm i
pnpm run build
- name: "create dist"
run: |
mkdir ./dist/scripts/mpv-easy-config/rs-ext -p
cp ./mpv-easy/es5/mpv-easy.js ./dist/scripts/mpv-easy.js
cp -r ./mpv-easy/fonts ./dist
cp -r ./mpv-anime4k/shaders ./dist
cp ./mpv-easy/mpv-conf/mpv.conf ./dist/mpv.conf
chmod 777 ./rs-ext/*
cp -r ./dist ./mpy-easy-macos
cp -r ./dist ./mpy-easy-linux
cp -r ./dist ./mpy-easy-windows
cp -r ./dist ./mpy-easy-deno-windows
cp -r ./dist ./mpy-easy-qjs-windows
cp ./rs-ext/rs-ext-macos ./mpy-easy-macos/scripts/mpv-easy-config/rs-ext/rs-ext-macos
cp ./rs-ext/rs-ext-ubuntu ./mpy-easy-linux/scripts/mpv-easy-config/rs-ext/rs-ext-linux
cp ./rs-ext/rs-ext-windows ./mpy-easy-windows/scripts/mpv-easy-config/rs-ext/rs-ext-windows
cp ./rs-ext/rs-ext-windows ./mpy-easy-deno-windows/scripts/mpv-easy-config/rs-ext/rs-ext-windows
cp ./rs-ext/rs-ext-windows ./mpy-easy-qjs-windows/scripts/mpv-easy-config/rs-ext/rs-ext-windows
cp ./deno-dll/mpv-deno-windows.dll ./mpy-easy-deno-windows/scripts/mpv-deno-windows.dll
rm ./mpy-easy-deno-windows/scripts/mpv-easy.js
mkdir ./mpy-easy-deno-windows/scripts-deno
cp ./mpv-easy/bundle/mpv-easy.js ./mpy-easy-deno-windows/scripts-deno/mpv-easy.js
mv ./mpy-easy-deno-windows/scripts/mpv-easy-config ./mpy-easy-deno-windows/scripts-deno/mpv-easy-config
cp ./qjs-dll/mpv-qjs-windows.dll ./mpy-easy-qjs-windows/scripts/mpv-qjs-windows.dll
rm ./mpy-easy-qjs-windows/scripts/mpv-easy.js
mkdir ./mpy-easy-qjs-windows/scripts-qjs
cp ./mpv-easy/bundle/mpv-easy.js ./mpy-easy-qjs-windows/scripts-qjs/mpv-easy.js
mv ./mpy-easy-qjs-windows/scripts/mpv-easy-config ./mpy-easy-qjs-windows/scripts-qjs/mpv-easy-config
cd ./mpy-easy-macos
zip -r -q ./mpy-easy-macos.zip .
cd ..
cd ./mpy-easy-linux
zip -r -q ./mpy-easy-linux.zip .
cd ..
cd ./mpy-easy-windows
zip -r -q ./mpy-easy-windows.zip .
cd ..
cd ./mpy-easy-deno-windows
zip -r -q ./mpy-easy-deno-windows.zip .
cd ..
cd ./mpy-easy-qjs-windows
zip -r -q ./mpy-easy-qjs-windows.zip .
cd ..
- uses: ncipollo/release-action@v1
with:
artifacts: "./mpy-easy-qjs-windows/mpy-easy-qjs-windows.zip,./mpy-easy-deno-windows/mpy-easy-deno-windows.zip,./mpy-easy-windows/mpy-easy-windows.zip,./mpy-easy-linux/mpy-easy-linux.zip,./mpy-easy-macos/mpy-easy-macos.zip"