mirror of
https://github.com/uroni/hs5.git
synced 2025-10-26 11:17:18 +00:00
84 lines
2.3 KiB
YAML
84 lines
2.3 KiB
YAML
name: release
|
|
on:
|
|
push:
|
|
tags:
|
|
- '*'
|
|
|
|
jobs:
|
|
job:
|
|
name: ${{ matrix.os }}-${{ github.workflow }}
|
|
runs-on: ${{ matrix.os }}
|
|
environment: vcpkg
|
|
permissions:
|
|
contents: write
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
os: [ubuntu-22.04, ubuntu-22.04-arm]
|
|
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
with:
|
|
submodules: true
|
|
|
|
- name: Setup system packages for vcpkg
|
|
env:
|
|
DEBIAN_FRONTEND: noninteractive
|
|
run: sudo apt-get update &&
|
|
sudo apt-get install autoconf automake autoconf-archive &&
|
|
( ! [ -e /usr/include/x86_64-linux-gnu/sys/epoll.h ] || sudo sed -i 's/epoll_pwait2/epoll_pwait2_disabled/g' /usr/include/x86_64-linux-gnu/sys/epoll.h )
|
|
|
|
- uses: lukka/get-cmake@v3.31.5
|
|
|
|
- name: Restore from cache and setup vcpkg executable and data files.
|
|
uses: lukka/run-vcpkg@v11
|
|
env:
|
|
VCPKG_BINARY_SOURCES: "clear;http,https://vcpkg:${{ secrets.VCPKG_WEBDAV_PW }}@vcpkg.urbackup.org,readwrite"
|
|
with:
|
|
vcpkgJsonGlob: 'vcpkg.json'
|
|
vcpkgGitCommitId: d5ec528843d29e3a52d745a64b469f810b2cedbf
|
|
|
|
- name: Set up Python 3.11
|
|
uses: actions/setup-python@v4
|
|
with:
|
|
python-version: 3.11
|
|
|
|
- name: Setup system
|
|
run: |
|
|
sudo apt-get update
|
|
sudo apt-get install -y linux-libc-dev liburing-dev
|
|
|
|
- name: Setup pnpm
|
|
uses: pnpm/action-setup@v4
|
|
with:
|
|
version: 10
|
|
|
|
- name: Install Node.js
|
|
uses: actions/setup-node@v4
|
|
with:
|
|
node-version: 20
|
|
cache: 'pnpm'
|
|
cache-dependency-path: './www/pnpm-lock.yaml'
|
|
|
|
- name: Build
|
|
env:
|
|
VCPKG_BINARY_SOURCES: "clear;http,https://vcpkg:${{ secrets.VCPKG_WEBDAV_PW }}@vcpkg.urbackup.org,readwrite"
|
|
run: bash build.sh && bash clean.sh
|
|
|
|
- name: Install Python dependencies
|
|
run: pip install -r test/requirements.txt
|
|
|
|
- name: Install pytest dependencies
|
|
run: pip install pytest-md pytest-emoji
|
|
|
|
- uses: pavelzw/pytest-action@v2
|
|
with:
|
|
emoji: false
|
|
custom-arguments: -p no:sugar --benchmark-skip test --timeout=300
|
|
|
|
- name: Create Release
|
|
uses: ncipollo/release-action@v1
|
|
with:
|
|
allowUpdates: true
|
|
artifacts: "hs5*.xz"
|