on: [push, pull_request, create]
jobs:
  build:
    env:
      CARGO_PROFILE_TEST_BUILD_OVERRIDE_DEBUG: true
      CARGO_PROFILE_dev_OPT_LEVEL: 0
      RUSTFLAGS: ""
    runs-on: ${{ matrix.os }}
    strategy:
      fail-fast: false
      matrix:
        # https://docs.github.com/en/actions/using-jobs/using-a-matrix-for-your-jobs
        os: [ubuntu-latest, windows-latest, macos-latest]
        jdk: [11]
    steps:
    - uses: actions/checkout@v4
    - uses: actions-rust-lang/setup-rust-toolchain@v1
    - name: Install libdbus on Ubuntu
      if: matrix.os == 'ubuntu-latest'
      run: |
        sudo apt-get update
        sudo apt-get install -y libdbus-1-dev
    - run: cargo test
    - run: cargo build --release
    - uses: actions/upload-artifact@v4
      with:
        name: mostr_${{ github.sha }}_${{ matrix.os }}
        path: |
          target/release/mostr
          target/release/mostr.exe
  #build-arm:
  #  runs-on: ${{ matrix.os }}
  #  if: startsWith(github.ref, 'refs/tags/')
  #  strategy:
  #    matrix:
  #      os: [macos-latest-large]
  #      jdk: [11]
  #  steps:
  #  - uses: actions/checkout@v4
  #  - uses: actions-rust-lang/setup-rust-toolchain@v1
  #  - run: cargo test --all-features
  #release:
  #  needs: [build, build-arm]
  #  runs-on: ubuntu-latest
  #  if: startsWith(github.ref, 'refs/tags/')
  #  steps:
  #  - uses: actions/download-artifact@v4 # https://github.com/actions/download-artifact
  #    with:
  #      pattern: software-challenge-gui-${{ github.sha }}-*
  #      path: build
  #      merge-multiple: true
  #  - name: Release ${{ github.ref }}
  #    uses: softprops/action-gh-release@v1 # https://github.com/softprops/action-gh-release
  #    with:
  #      files: build/*.jar
  #    env:
  #      GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}