Files
uWebSockets.js/.github/workflows/c-cpp.yml
Adones Pitogo 05590db358 (arm 32-bit) Use actual architecture and OS for armv7 (#826)
* Update build.c

* Update build.c

* Update build.c

* Update build.c

* build for armv7

* disable push temporarily

* added clang package

* enable repo push

* build on master branch

* use matrix arch & os

* fix commit message for arm build

* enable push to binaries

Co-authored-by: Adones Pitogo <adonesp@ubuntu-x399>
2022-11-07 11:20:29 +01:00

93 lines
3.3 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 ${{ matrix.arch }}
strategy:
matrix:
include:
- arch: aarch64
os: ubuntu20.04
- arch: armv7
os: bullseye
steps:
- name: Clone
run: git clone --recursive https://github.com/uNetworking/uWebSockets.js.git
- uses: uraimo/run-on-arch-action@v2.3.0
name: Compile binaries
with:
arch: ${{ matrix.arch }}
distro: ${{ matrix.os }}
dockerRunArgs: |
--volume "${PWD}/uWebSockets.js:/repository"
install: |
apt-get update -q -y
apt-get install -q -y build-essential cmake libz-dev golang curl libunwind-dev clang
run: |
cd /repository
make
- name: Update binaries
run: |
cd uWebSockets.js
git fetch origin binaries:binaries
git checkout binaries
cp dist/*.node .
cp dist/*.js .
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 add *.node *.js
git commit -a -m "[GitHub Actions] Updated linux-${{ matrix.arch }} binaries" || true
git push "https://unetworkingab:${{ secrets.SECRET }}@github.com/uNetworking/uWebSockets.js" binaries