Skip to content

chore(package.json): explicit bump of some dev dependencies, general … #115

chore(package.json): explicit bump of some dev dependencies, general …

chore(package.json): explicit bump of some dev dependencies, general … #115

Workflow file for this run

name: CI
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
jobs:
################################
##
## BUILD
##
################################
Build:
name: Build
runs-on: ubuntu-latest
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
steps:
- name: 'Checkout'
uses: actions/checkout@v4
with:
submodules: recursive
- name: 'Setup Emscripten'
uses: mymindstorm/setup-emsdk@v11
with:
version: 3.1.47
- name: 'Setup Python'
uses: actions/setup-python@v4
with:
python-version: '3.10'
- name: 'Install Meson & Ninja'
uses: BSFishy/pip-action@v1
with:
packages: |
meson
ninja
- name: Write em.txt
uses: "DamianReeves/write-file-action@master"
with:
path: libultrahdr-wasm/em.txt
write-mode: overwrite
contents: |
[binaries]
c = 'emcc'
cpp = 'em++'
ar = 'emar'
nm = 'emnm'
[host_machine]
system = 'emscripten'
cpu_family = 'wasm32'
cpu = 'wasm32'
endian = 'little'
- name: 'Build libultrahdr WASM'
run: |
cd libultrahdr-wasm
meson setup build --cross-file=em.txt
meson compile -C build
- name: 'Setup Nodejs'
uses: actions/setup-node@v3
with:
node-version: 20
- name: 'Install dependencies'
run: npm ci
- name: 'Build'
run: npm run build
- name: 'Upload Build artifacts'
if: always()
uses: actions/upload-artifact@v3
with:
name: build-artifact
if-no-files-found: error
path: |
libultrahdr-wasm/build/*.ts
libultrahdr-wasm/build/*.js
libultrahdr-wasm/build/*.map
libultrahdr-wasm/build/*.wasm
dist/
################################
##
## CHECKS
##
################################
Check:
name: Check
needs: Build
runs-on: ubuntu-latest
steps:
- name: 'Checkout'
uses: actions/checkout@v4
with:
submodules: recursive
- name: 'Download build artifacts'
uses: actions/download-artifact@v3
with:
name: build-artifact
- name: 'Setup Nodejs'
uses: actions/setup-node@v3
with:
node-version: 20
- name: 'Install dependencies'
run: npm ci
- name: 'Produce Reports & Logs'
if: always()
run: npm run ci:check
- name: 'Upload Check artifacts'
if: always()
uses: actions/upload-artifact@v3
with:
name: check-artifact
if-no-files-found: error
path: |
reports/
################################
##
## TEST
##
################################
Test:
name: Test
needs: Build
runs-on: ubuntu-latest
# container:
# image: mcr.microsoft.com/playwright:v1.40.0-jammy
steps:
# - name: 'Initialize Git LFS'
# run: curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.deb.sh | bash
# - name: 'Install Git LFS'
# run: apt-get install -y git-lfs
- name: 'Checkout'
uses: actions/checkout@v4
with:
submodules: recursive
- name: 'Download build artifacts'
uses: actions/download-artifact@v3
with:
name: build-artifact
- name: 'Setup Nodejs'
uses: actions/setup-node@v3
with:
node-version: 20
- name: 'Install dependencies'
run: npm ci
- name: 'Install playwright Browsers'
run: npx playwright install --with-deps
- name: 'Run Playwright Tests'
run: npm test
# env:
# HOME: /root
- name: 'Upload Test artifacts'
if: always()
uses: actions/upload-artifact@v3
with:
name: test-artifact
if-no-files-found: error
path: |
.nyc_output/
test-results/
coverage/
playwright-report/
tests/__snapshots__/