wokwi-server 0.2.0

A tool for running embedded applications in Wokwi online simulator
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@v2

      - uses: actions-rs/toolchain@v1
        with:
          toolchain: stable
          target: ${{ inputs.target }}

      - uses: Swatinem/rust-cache@v1

      - uses: actions-rs/cargo@v1
        with:
          command: build
          args: --release --all --target ${{ inputs.target }}

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

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