git » sdk » main » tree

[main] / .github / workflows / build.yml

name: Build

on:
  push:
    branches: [ "main" ]
  pull_request:
    branches: [ "main" ]

jobs:
  build:

    runs-on: ubuntu-24.04

    steps:
    - uses: actions/checkout@v4

    - name: Build and test
      run: docker build -t borogove-sdk -f build-misc/Containerfile.image .

    - name: Extract artifacts
      run: |
        mkdir -p artifacts
        docker run --rm -v "$PWD/artifacts:/output" borogove-sdk

    - name: libborogove Artifact
      uses: actions/upload-artifact@v4
      with:
        name: libborogove
        path: |
          artifacts/sdk/libborogove.so
          artifacts/sdk/libborogove.a
          artifacts/sdk/libborogove.batteriesincluded.so
          artifacts/sdk/cpp/borogove.h

    - name: cpp Tarball
      run: tar -C artifacts/sdk -cjf cpp.tar.gz cpp/

    - name: cpp Artifact
      uses: actions/upload-artifact@v4
      with:
        name: cpp
        path: |
          cpp.tar.gz

    - name: NPM Tarball
      run: tar -C artifacts/sdk -cjf npm.tar.gz npm/

    - name: JS Artifact
      uses: actions/upload-artifact@v4
      with:
        name: npm.tar.gz
        path: |
          npm.tar.gz