Skip to content

v0.2.0.4

v0.2.0.4 #19

name: Release packages
on:
release:
types: [published]
workflow_dispatch:
jobs:
build-linux-amd64:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v5
- name: Set up CMake
uses: jwlawson/actions-setup-cmake@v2
- name: Build PC Linux version of openAPV, generate packages and md5 file
run: |
cmake -S ${{github.workspace}} -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=Release
cmake --build ${{github.workspace}}/build
cd ${{github.workspace}}/build
cpack -C Release
- name: 'Upload PC Linux artifacts'
uses: actions/upload-artifact@v4
with:
name: openapv-linux-${{github.event.release.tag_name}}
path: |
${{ github.workspace }}/build/*.deb
${{ github.workspace }}/build/*.md5
retention-days: 7
- name: Upload Linux assets to GitHub Release
uses: xresloader/upload-to-github-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
file: "build/*.deb; build/*.md5"
update_latest_release: true
draft: false
overwrite: true
build-linux-arm64:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v5
- name: Set up CMake
uses: jwlawson/actions-setup-cmake@v2
- name: Install ARM toolchain
run: |
sudo apt-get update
sudo apt-get install -y gcc-aarch64-linux-gnu binutils-aarch64-linux-gnu
- name: Build ARM
run: |
cmake -S ${{github.workspace}} -B ${{github.workspace}}/build-arm -DCMAKE_TOOLCHAIN_FILE=${{github.workspace}}/arm64_toolchain.cmake -DCMAKE_BUILD_TYPE=Release
cmake --build ${{github.workspace}}/build-arm
cd ${{github.workspace}}/build-arm
cpack -C Release
- name: 'Upload ARM artifacts'
uses: actions/upload-artifact@v4
with:
name: openapv-arm-${{github.event.release.tag_name}}
path: |
${{ github.workspace }}/build-arm/*.deb
${{ github.workspace }}/build-arm/*.md5
retention-days: 7
- name: Upload ARM assets to GitHub Release
uses: xresloader/upload-to-github-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
file: "build-arm/*.deb; build-arm/*.md5"
update_latest_release: true
draft: false
overwrite: true
build-darwin-arm64:
runs-on: macos-13-xlarge
steps:
- uses: actions/checkout@v5
- name: Build macOS ARM64 (Apple Silicon)
run: |
cmake -S ${{github.workspace}} -B ${{github.workspace}}/build-darwin -DUNIVERSAL=FALSE -DCMAKE_OSX_ARCHITECTURES=arm64 -DARM=1 -DCMAKE_BUILD_TYPE=Release
cmake --build ${{github.workspace}}/build-darwin
cd ${{github.workspace}}/build-darwin
cpack -C Release -G TGZ
- uses: actions/upload-artifact@v4
with:
name: openapv-darwin-${{github.event.release.tag_name}}
path: |
${{ github.workspace }}/build-darwin/*.tar.gz
${{ github.workspace }}/build-darwin/*.md5
retention-days: 7
- uses: xresloader/upload-to-github-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
file: "build-darwin/*.tar.gz; build-darwin/*.md5"
update_latest_release: true
draft: false
overwrite: true
build-darwin-universal:
runs-on: macos-13-xlarge
steps:
- uses: actions/checkout@v5
- name: Build macOS Universal (ARM64 + AMD64)
run: |
cmake -S ${{github.workspace}} -B ${{github.workspace}}/build -DCMAKE_TOOLCHAIN_FILE=macos_universal_toolchain.cmake -DUNIVERSAL=1 -DCMAKE_BUILD_TYPE=Release
cmake --build ${{github.workspace}}/build
cd ${{github.workspace}}/build
cpack -C Release -G DragNDrop
- uses: actions/upload-artifact@v4
with:
name: openapv-universal-${{github.event.release.tag_name}}
path: |
${{ github.workspace }}/build/*.dmg
${{ github.workspace }}/build/*.md5
retention-days: 7
- uses: xresloader/upload-to-github-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
file: "build/*.dmg; build/*.md5"
update_latest_release: true
draft: false
overwrite: true
build-windows:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v5
- name: Set up CMake
uses: jwlawson/actions-setup-cmake@v2
- name: Install Windows toolchain
run: |
sudo apt-get update
sudo apt-get install -y mingw-w64 mingw-w64-tools
- name: Build (crosscmopile) PC Windows version of openAPV, generate packages and md5 file
run: |
cmake -S ${{github.workspace}} -B ${{github.workspace}}/build-windows -DCMAKE_TOOLCHAIN_FILE=${{github.workspace}}/windows_x86_64_toolchain.cmake -DCMAKE_BUILD_TYPE=Release
cmake --build ${{github.workspace}}/build-windows
cd ${{github.workspace}}/build-windows
cpack -G ZIP -C Release
- name: 'Upload PC Windows artifacts'
uses: actions/upload-artifact@v4
with:
name: openapv-windows-${{github.event.release.tag_name}}
path: |
${{ github.workspace }}/build-windows/*.zip
${{ github.workspace }}/build-windows/*.md5
retention-days: 7
- name: Upload Windows assets to GitHub Release
uses: xresloader/upload-to-github-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
file: "build-windows/*.zip; build-windows/*.md5"
update_latest_release: true
draft: false
overwrite: true