embuild 0.33.1

A build support library for embedded Rust
Documentation
name: Package

on:
  workflow_call:
    inputs:
      runs_on:
        required: true
        type: string
      target:
        required: true
        type: string
      extension:
        default: ""
        type: string

jobs:
  build:
    name: Build static binaries
    runs-on: ${{ inputs.runs_on }}

    steps:
      - name: Change apt mirror and install dependencies
        if: ${{ inputs.runs_on == 'ubuntu-latest' }}
        run: |
          sudo sed -i 's/azure.archive.ubuntu.com/archive.ubuntu.com/' /etc/apt/sources.list
          sudo apt-get update
          sudo apt-get install musl-tools libudev-dev

      - uses: actions/checkout@v3

      - uses: dtolnay/rust-toolchain@v1
        with:
          toolchain: stable
          target: ${{ inputs.target }}

      - uses: Swatinem/rust-cache@v1

      - run: cargo build --release --all --target ${{ inputs.target }}

      - uses: papeloto/action-zip@v1
        with:
          files: target/${{ inputs.target }}/release/ldproxy${{ inputs.extension }}
          recursive: true
          dest: ldproxy-${{ inputs.target }}.zip

      - uses: svenstaro/upload-release-action@v2
        with:
          repo_token: ${{ secrets.GITHUB_TOKEN }}
          file: ldproxy-${{ inputs.target }}.zip
          tag: ${{ github.ref }}