upgrade cef_binary to 121.3.9+g1e0a38f+chromium-121.0.6167.184 #752
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: Rust | |
on: [push] | |
concurrency: | |
group: ${{ github.ref }} | |
cancel-in-progress: true | |
permissions: | |
contents: write | |
jobs: | |
windows_x86: | |
name: Build Windows ${{ matrix.config.arch }} | |
runs-on: windows-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
config: | |
- arch: x86_64 | |
bits: 64 | |
target: x86_64-pc-windows-msvc | |
url: https://cef-builds.spotifycdn.com/cef_binary_121.3.9%2Bg1e0a38f%2Bchromium-121.0.6167.184_windows64.tar.bz2 | |
- arch: i686 | |
bits: 32 | |
target: i686-pc-windows-msvc | |
url: https://cef-builds.spotifycdn.com/cef_binary_121.3.9%2Bg1e0a38f%2Bchromium-121.0.6167.184_windows32.tar.bz2 | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Install deps | |
run: | | |
iwr -useb get.scoop.sh -outfile install-scoop.ps1 | |
.\install-scoop.ps1 -RunAsAdmin | |
rm install-scoop.ps1 | |
echo "$HOME\scoop\shims" >> $env:GITHUB_PATH | |
echo "C:\ProgramData\scoop\shims" >> $env:GITHUB_PATH | |
scoop install aria2 | |
scoop install --arch ${{ matrix.config.bits }}bit llvm | |
echo "LIBCLANG_PATH=$HOME\scoop\apps\llvm\current\bin" >> $env:GITHUB_ENV | |
aria2c '${{ matrix.config.url }}' -o cef_binary.tar.bz2 --max-connection-per-server=4 | |
7z x -y 'cef_binary.tar.bz2' | |
Remove-Item 'cef_binary.tar.bz2' | |
7z x -y 'cef_binary.tar' | |
Remove-Item 'cef_binary.tar' | |
Get-ChildItem cef_binary_* | Rename-Item -NewName 'cef_binary' | |
Move-Item -Path 'cef_binary' -Destination 'cef_interface' | |
- name: setup-msbuild | |
uses: microsoft/setup-msbuild@v1 | |
- name: Install rust for ${{ matrix.config.target }} | |
uses: actions-rs/toolchain@v1 | |
with: | |
# we have to use this toolchain because "libclang.dll: invalid DLL (32-bit)" | |
toolchain: stable-${{ matrix.config.target }} | |
target: ${{ matrix.config.target }} | |
override: true | |
components: rustfmt | |
- name: Build | |
uses: actions-rs/cargo@v1 | |
if: startsWith(github.ref, 'refs/tags/') != true | |
with: | |
command: build | |
args: --target ${{ matrix.config.target }} | |
- name: Test | |
uses: actions-rs/cargo@v1 | |
if: startsWith(github.ref, 'refs/tags/') != true | |
with: | |
command: test | |
args: --target ${{ matrix.config.target }} -- --nocapture --test-threads 1 | |
- name: Build Release | |
uses: actions-rs/cargo@v1 | |
if: startsWith(github.ref, 'refs/tags/') | |
with: | |
command: build | |
args: --target ${{ matrix.config.target }} --release | |
- name: Rename files | |
if: startsWith(github.ref, 'refs/tags/') | |
run: | | |
Move-Item ` | |
-Path 'target\${{ matrix.config.target }}\release\classicube_cef_plugin.dll' ` | |
-Destination '.\classicube_cef_windows_${{ matrix.config.arch }}.dll' | |
Move-Item ` | |
-Path 'target\${{ matrix.config.target }}\release\classicube_cef_plugin.pdb' ` | |
-Destination 'classicube_cef_windows_${{ matrix.config.arch }}.pdb' | |
Get-ChildItem ` | |
target\${{ matrix.config.target }}\release\build\classicube-cef-plugin-*\out\cef.exe ` | |
| Move-Item -Destination '.\cef-windows-${{ matrix.config.arch }}.exe' | |
- name: VirusTotal Scan | |
uses: crazy-max/ghaction-virustotal@v2 | |
if: startsWith(github.ref, 'refs/tags/') | |
id: virustotal | |
with: | |
vt_api_key: ${{ secrets.VT_API_KEY }} | |
files: | | |
classicube_cef_windows_${{ matrix.config.arch }}.dll | |
cef-windows-${{ matrix.config.arch }}.exe | |
- name: Generate Release Body Text | |
if: startsWith(github.ref, 'refs/tags/') | |
run: | | |
node .github\format-release.js '${{ steps.virustotal.outputs.analysis }}' > release_body_text.txt | |
- name: Upload Release | |
uses: softprops/action-gh-release@v1 | |
if: startsWith(github.ref, 'refs/tags/') | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
with: | |
body_path: release_body_text.txt | |
files: | | |
classicube_cef_windows_${{ matrix.config.arch }}.dll | |
classicube_cef_windows_${{ matrix.config.arch }}.pdb | |
cef-windows-${{ matrix.config.arch }}.exe | |
linux_x86: | |
name: Build Linux ${{ matrix.config.arch }} | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
config: | |
- arch: x86_64 | |
target: x86_64-unknown-linux-gnu | |
url: https://cef-builds.spotifycdn.com/cef_binary_121.3.9%2Bg1e0a38f%2Bchromium-121.0.6167.184_linux64.tar.bz2 | |
- arch: i686 | |
target: i686-unknown-linux-gnu | |
# Linux x86 32-bit builds are discontinued after version 101 (details) | |
# https://cef-builds.spotifycdn.com/index.html#linux32 | |
url: https://cef-builds.spotifycdn.com/cef_binary_101.0.18%2Bg367b4a0%2Bchromium-101.0.4951.67_linux32.tar.bz2 | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Install x86_64 deps | |
if: matrix.config.arch == 'x86_64' | |
run: | | |
sudo apt-get -y update \ | |
&& sudo apt-get -y install aria2 wget curl git gcc g++ build-essential cmake clang pkg-config \ | |
libssl-dev libglib2.0-dev libpango1.0-dev libatk1.0-dev libgtk-3-dev libgdk-pixbuf2.0-dev \ | |
libnss3 libasound2 libxss1 libnspr4 \ | |
&& aria2c '${{ matrix.config.url }}' -o cef_binary.tar.bz2 --max-connection-per-server=4 \ | |
&& tar -xjf cef_binary.tar.bz2 \ | |
&& rm cef_binary.tar.bz2 \ | |
&& mv cef_binary_* cef_interface/cef_binary | |
- name: Install i686 deps | |
if: matrix.config.arch == 'i686' | |
run: | | |
sudo dpkg --add-architecture i386 \ | |
&& sudo apt-get -y update \ | |
&& sudo apt-get -y install aria2 wget curl git gcc g++ build-essential cmake clang pkg-config:i386 \ | |
gcc-multilib g++-multilib \ | |
libssl-dev:i386 libglib2.0-dev:i386 libpango1.0-dev:i386 libatk1.0-dev:i386 libgtk-3-dev:i386 libgdk-pixbuf2.0-dev:i386 \ | |
libssl3:i386 libnss3:i386 libasound2:i386 libxss1:i386 libnspr4:i386 \ | |
&& aria2c '${{ matrix.config.url }}' -o cef_binary.tar.bz2 --max-connection-per-server=4 \ | |
&& tar -xjf cef_binary.tar.bz2 \ | |
&& rm cef_binary.tar.bz2 \ | |
&& mv cef_binary_* cef_interface/cef_binary \ | |
&& echo "PKG_CONFIG_ALLOW_CROSS=1" >> "$GITHUB_ENV" | |
- name: Install rust for ${{ matrix.config.target }} | |
uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: stable | |
target: ${{ matrix.config.target }} | |
override: true | |
components: rustfmt | |
- name: Build | |
uses: actions-rs/cargo@v1 | |
if: startsWith(github.ref, 'refs/tags/') != true | |
with: | |
command: build | |
args: --target ${{ matrix.config.target }} | |
- name: Test | |
uses: actions-rs/cargo@v1 | |
if: startsWith(github.ref, 'refs/tags/') != true | |
env: | |
LD_LIBRARY_PATH: ./cef_interface/cef_binary/Release/ | |
with: | |
command: test | |
args: --target ${{ matrix.config.target }} -- --nocapture --test-threads 1 | |
- name: Build Release | |
uses: actions-rs/cargo@v1 | |
if: startsWith(github.ref, 'refs/tags/') | |
with: | |
command: build | |
args: --target ${{ matrix.config.target }} --release | |
- name: Rename files | |
if: startsWith(github.ref, 'refs/tags/') | |
run: | | |
mv 'target/${{ matrix.config.target }}/release/libclassicube_cef_plugin.so' \ | |
'./classicube_cef_linux_${{ matrix.config.arch }}.so' \ | |
&& file './classicube_cef_linux_${{ matrix.config.arch }}.so' \ | |
&& mv target/${{ matrix.config.target }}/release/build/classicube-cef-plugin-*/out/cef \ | |
'./cef-linux-${{ matrix.config.arch }}' \ | |
&& file './cef-linux-${{ matrix.config.arch }}' | |
- name: Upload Release | |
uses: softprops/action-gh-release@v1 | |
if: startsWith(github.ref, 'refs/tags/') | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
with: | |
files: | | |
classicube_cef_linux_${{ matrix.config.arch }}.so | |
cef-linux-${{ matrix.config.arch }} | |
linux_nix: | |
name: Nix Build | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v2 | |
- uses: cachix/install-nix-action@v22 | |
- run: nix build --print-build-logs . | |
- uses: actions/upload-artifact@v3 | |
with: | |
name: nix result | |
path: | | |
result/cef/cef | |
result/plugins/ | |
linux_arm: | |
name: Build Linux ${{ matrix.config.arch }} | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
config: | |
- arch: armhf | |
target: armv7-unknown-linux-gnueabihf | |
url: https://cef-builds.spotifycdn.com/cef_binary_121.3.9%2Bg1e0a38f%2Bchromium-121.0.6167.184_linuxarm.tar.bz2 | |
- arch: aarch64 | |
target: aarch64-unknown-linux-gnu | |
url: https://cef-builds.spotifycdn.com/cef_binary_121.3.9%2Bg1e0a38f%2Bchromium-121.0.6167.184_linuxarm64.tar.bz2 | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Install armhf deps | |
if: matrix.config.arch == 'armhf' | |
run: | | |
docker build --pull -t cross-armhf -f .github/cross-armhf.Dockerfile . \ | |
&& aria2c '${{ matrix.config.url }}' -o cef_binary.tar.bz2 --max-connection-per-server=4 \ | |
&& tar -xjf cef_binary.tar.bz2 \ | |
&& rm cef_binary.tar.bz2 \ | |
&& mv cef_binary_* cef_interface/cef_binary | |
- name: Install aarch64 deps | |
if: matrix.config.arch == 'aarch64' | |
run: | | |
docker build --pull -t cross-aarch64 -f .github/cross-aarch64.Dockerfile . \ | |
&& aria2c '${{ matrix.config.url }}' -o cef_binary.tar.bz2 --max-connection-per-server=4 \ | |
&& tar -xjf cef_binary.tar.bz2 \ | |
&& rm cef_binary.tar.bz2 \ | |
&& mv cef_binary_* cef_interface/cef_binary | |
- name: Install rust for ${{ matrix.config.target }} | |
uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: stable | |
target: ${{ matrix.config.target }} | |
override: true | |
components: rustfmt | |
- name: Build | |
uses: actions-rs/cargo@v1 | |
if: startsWith(github.ref, 'refs/tags/') != true | |
with: | |
use-cross: true | |
command: build | |
args: --target ${{ matrix.config.target }} | |
- name: Build Release | |
uses: actions-rs/cargo@v1 | |
if: startsWith(github.ref, 'refs/tags/') | |
with: | |
use-cross: true | |
command: build | |
args: --target ${{ matrix.config.target }} --release | |
- name: Rename files | |
if: startsWith(github.ref, 'refs/tags/') | |
run: | | |
mv 'target/${{ matrix.config.target }}/release/libclassicube_cef_plugin.so' \ | |
'./classicube_cef_linux_${{ matrix.config.arch }}.so' \ | |
&& file './classicube_cef_linux_${{ matrix.config.arch }}.so' \ | |
&& mv target/${{ matrix.config.target }}/release/build/classicube-cef-plugin-*/out/cef \ | |
'./cef-linux-${{ matrix.config.arch }}' \ | |
&& file './cef-linux-${{ matrix.config.arch }}' | |
- name: Upload Release | |
uses: softprops/action-gh-release@v1 | |
if: startsWith(github.ref, 'refs/tags/') | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
with: | |
files: | | |
classicube_cef_linux_${{ matrix.config.arch }}.so | |
cef-linux-${{ matrix.config.arch }} | |
mac_x86: | |
name: Build MacOS ${{ matrix.config.arch }} | |
runs-on: macos-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
config: | |
- arch: x86_64 | |
target: x86_64-apple-darwin | |
url: https://cef-builds.spotifycdn.com/cef_binary_121.3.9%2Bg1e0a38f%2Bchromium-121.0.6167.184_macosx64.tar.bz2 | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Install deps | |
run: | | |
brew install aria2 cmake \ | |
&& aria2c '${{ matrix.config.url }}' -o cef_binary.tar.bz2 --max-connection-per-server=4 \ | |
&& tar -xjf cef_binary.tar.bz2 \ | |
&& rm cef_binary.tar.bz2 \ | |
&& mv cef_binary_* cef_interface/cef_binary | |
- name: Install rust for ${{ matrix.config.target }} | |
uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: stable | |
target: ${{ matrix.config.target }} | |
override: true | |
components: rustfmt | |
- name: Build | |
uses: actions-rs/cargo@v1 | |
if: startsWith(github.ref, 'refs/tags/') != true | |
with: | |
command: build | |
args: --target ${{ matrix.config.target }} | |
- name: Test | |
uses: actions-rs/cargo@v1 | |
if: startsWith(github.ref, 'refs/tags/') != true | |
with: | |
command: test | |
args: --target ${{ matrix.config.target }} -- --nocapture --test-threads 1 | |
- name: Build Release | |
uses: actions-rs/cargo@v1 | |
if: startsWith(github.ref, 'refs/tags/') | |
with: | |
command: build | |
args: --target ${{ matrix.config.target }} --release | |
- name: Rename files | |
if: startsWith(github.ref, 'refs/tags/') | |
run: | | |
mv 'target/${{ matrix.config.target }}/release/libclassicube_cef_plugin.dylib' './classicube_cef_macos_${{ matrix.config.arch }}.dylib' \ | |
&& file './classicube_cef_macos_${{ matrix.config.arch }}.dylib' \ | |
&& mv target/${{ matrix.config.target }}/release/build/classicube-cef-plugin-*/out/cef './cef-macos-${{ matrix.config.arch }}' \ | |
&& file './cef-macos-${{ matrix.config.arch }}' | |
- name: Upload Release | |
uses: softprops/action-gh-release@v1 | |
if: startsWith(github.ref, 'refs/tags/') | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
with: | |
files: | | |
classicube_cef_macos_${{ matrix.config.arch }}.dylib | |
cef-macos-${{ matrix.config.arch }} |