name: Build Releases
on:
  push:
    tags:
      - v*.*.*

env:
  CARGO_TERM_COLOR: always

jobs:
  build-cross:
    runs-on: ubuntu-latest
    env:
      RUST_BACKTRACE: full
    strategy:
      matrix:
        target:
          - x86_64-unknown-linux-gnu
          - i686-unknown-linux-gnu
          - armv7-unknown-linux-gnueabihf
          - arm-unknown-linux-gnueabihf
          - aarch64-unknown-linux-gnu
          - mips-unknown-linux-gnu
          - mipsel-unknown-linux-gnu

    steps:
      - uses: actions/checkout@v2
      - uses: actions-rs/toolchain@v1
        with:
          toolchain: stable
          target: ${{ matrix.target }}
          override: true
      - uses: actions-rs/cargo@v1
        with:
          use-cross: true
          command: build
          args: --release --target ${{ matrix.target }}
      - name: Rename artifacts and compress
        run: |
          cd target/${{ matrix.target }}/release
          mv client phantun_client
          mv server phantun_server
          zip phantun_${{ matrix.target }}.zip phantun_client phantun_server

      - name: Upload Github Assets
        uses: softprops/action-gh-release@v1
        with:
          files: target/${{ matrix.target }}/release/*.zip
          prerelease: ${{ contains(github.ref, '-') }}