Files
uWebSockets.js/.github/workflows/c-cpp.yml
2022-10-20 13:33:00 +02:00

85 lines
3.0 KiB
YAML

name: Build
on:
push:
branches: [ master ]
jobs:
build-windows:
runs-on: windows-latest
steps:
- uses: ilammy/msvc-dev-cmd@v1
- uses: ilammy/setup-nasm@v1.2.1
- name: Update binaries
run: |
$ErrorActionPreference = 'SilentlyContinue'
git clone --recursive https://github.com/uNetworking/uWebSockets.js.git
cd uWebSockets.js
nmake
git fetch origin binaries:binaries
git checkout binaries
xcopy /Y dist\*.node .
git status
git config --global user.email "alexhultman@gmail.com"
git config --global user.name "Alex Hultman"
git commit -a -m "[GitHub Actions] Updated windows-latest binaries"
git push "https://unetworkingab:${{ secrets.SECRET }}@github.com/uNetworking/uWebSockets.js" binaries
build-unix:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [macos-11.0, ubuntu-latest]
steps:
- name: Update binaries
run: |
sudo xcode-select -switch /Applications/Xcode_12.2.app || true
sudo apt update || true
sudo apt install -y g++-aarch64-linux-gnu || true
git clone --recursive https://github.com/uNetworking/uWebSockets.js.git
cd uWebSockets.js
make
git fetch origin binaries:binaries
git checkout binaries
cp dist/*.node .
git status
git rev-parse master > source_commit
git checkout master docs/index.d.ts && mv docs/index.d.ts .
git config --global user.email "alexhultman@gmail.com"
git config --global user.name "Alex Hultman"
git commit -a -m "[GitHub Actions] Updated ${{ matrix.os }} binaries" || true
git push "https://unetworkingab:${{ secrets.SECRET }}@github.com/uNetworking/uWebSockets.js" binaries
build-arm:
runs-on: ubuntu-latest
name: Build on arm64
steps:
- name: Clone
run: git clone --recursive https://github.com/uNetworking/uWebSockets.js.git
- uses: uraimo/run-on-arch-action@v2.1.1
name: Compile binaries
with:
arch: aarch64
distro: ubuntu20.04
dockerRunArgs: |
--volume "${PWD}/uWebSockets.js:/repository"
install: |
apt-get update -q -y
apt-get install -q -y build-essential cmake libz-dev golang
run: |
cd /repository
make
- name: Update binaries
run: |
cd uWebSockets.js
git fetch origin binaries:binaries
git checkout binaries
cp dist/*.node .
git status
git rev-parse master > source_commit
git checkout master docs/index.d.ts && mv docs/index.d.ts .
git config --global user.email "alexhultman@gmail.com"
git config --global user.name "Alex Hultman"
git commit -a -m "[GitHub Actions] Updated linux-arm64 binaries" || true
git push "https://unetworkingab:${{ secrets.SECRET }}@github.com/uNetworking/uWebSockets.js" binaries