name: Hyperion PR Build
on:
  pull_request:
    branches:
      - master

jobs:

######################
###### Linux #########
######################

  Linux:
    name: ${{ matrix.dockerName }}
    runs-on: ubuntu-latest
    strategy:
      matrix:
        dockerTag: [ amd64, i386, armv6hf, armv7hf, aarch64 ]
        include:
          - dockerTag: amd64
            dockerName: Debian Stretch (AMD64)
            platform: x11
          - dockerTag: i386
            dockerName: Debian Stretch (i386)
            platform: x11
          - dockerTag: armv6hf
            dockerName: Debian Stretch (Raspberry Pi v1 & ZERO)
            platform: rpi
          - dockerTag: armv7hf
            dockerName: Debian Stretch (Raspberry Pi 2 & 3)
            platform: rpi
          - dockerTag: aarch64
            dockerName: Debian Stretch (Generic AARCH64)
            platform: amlogic

    steps:
      - uses: actions/checkout@v1
        with:
          submodules: true

      # Append PR number to version
      - name: Append PR number to version
        shell: bash
        run: 'echo -n -PR#${{ github.event.pull_request.number }} >> version'

      # Build packages
      - name: Build packages
        env:
          DOCKER_TAG: ${{ matrix.dockerTag }}
          DOCKER_NAME: ${{ matrix.dockerName }}
          PLATFORM: ${{ matrix.platform }}
        shell: bash
        run: ./.ci/ci_build.sh

      # Collecting deployable artifacts
      - name: Collecting deployable artifacts
        shell: bash
        run: |
          mkdir -p ${{ matrix.dockerTag }}
          mv deploy/Hyperion-* ${{ matrix.dockerTag }}

      # Upload artifacts
      - name: Upload artifacts
        uses: actions/upload-artifact@v1
        with:
          name: ${{ matrix.dockerTag }}.zip
          path: ${{ matrix.dockerTag }}

######################
###### macOS #########
######################

  macOS:
    name: macOS
    runs-on: macos-latest
    steps:
      - uses: actions/checkout@v1
        with:
          submodules: true

      # Append PR number to version
      - name: Append PR number to version
        shell: bash
        run: echo -n "-PR#${{ github.event.pull_request.number }}" >> version

      # Install dependencies
      - name: Install dependencies
        shell: bash
        run: ./.ci/ci_install.sh

      # Build packages
      - name: Build packages
        env:
          PLATFORM: osx
        shell: bash
        run: ./.ci/ci_build.sh

      # Collecting deployable artifacts
      - name: Collecting deployable artifacts
        shell: bash
        run: |
          mkdir -p macOS
          mv build/Hyperion-* macOS

      # Upload artifacts
      - name: Upload artifacts
        uses: actions/upload-artifact@v1
        with:
          name: macOS.zip
          path: macOS
