name: Hyperion PR Build on: pull_request: branches: - master jobs: ###################### ###### Linux ######### ###################### Linux: name: ${{ matrix.dockerName }} runs-on: ubuntu-latest strategy: matrix: dockerTag: [ amd64, armv6hf, armv7hf, aarch64 ] include: - dockerTag: amd64 dockerName: Debian Stretch (AMD64) 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: - name: Checkout uses: actions/checkout@v1 with: submodules: true # Append PR number to version - name: Append PR number to version shell: bash run: | tr -d '\n' < version > temp && mv temp version 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/*.tar.gz ${{ matrix.dockerTag }} if: matrix.dockerTag != 'aarch64' # Upload artifacts - name: Upload artifacts uses: actions/upload-artifact@v1 with: name: ${{ matrix.dockerTag }} path: ${{ matrix.dockerTag }} if: matrix.dockerTag != 'aarch64' ###################### ###### macOS ######### ###################### macOS: name: macOS runs-on: macos-latest steps: - name: Checkout uses: actions/checkout@v1 with: submodules: true # Append PR number to version - name: Append PR number to version shell: bash run: | tr -d '\n' < version > temp && mv temp version 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/*.tar.gz macOS # Upload artifacts - name: Upload artifacts uses: actions/upload-artifact@v1 with: name: macOS path: macOS ###################### ###### Windows ####### ###################### windows: name: Windows runs-on: windows-latest env: VCINSTALLDIR: 'C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC' steps: - name: Checkout uses: actions/checkout@v1 with: submodules: true # Append PR number to version - name: Append PR number to version shell: bash run: | tr -d '\n' < version > temp && mv temp version echo -n "-PR#${{ github.event.pull_request.number }}" >> version - name: Install Qt uses: jurplel/install-qt-action@v2 with: version: '5.15.0' target: 'desktop' arch: 'win64_msvc2019_64' - name: Install Python uses: actions/setup-python@v1 with: python-version: '3.x' - name: Install NSIS run: choco install --no-progress nsis -y - name: Install OpenSSL run: choco install --no-progress openssl -y - name: Set up x64 build architecture environment shell: cmd run: call "${{env.VCINSTALLDIR}}\Auxiliary\Build\vcvars64.bat" # Build packages - name: Build packages env: PLATFORM: windows shell: bash run: ./.ci/ci_build.sh # Collecting deployable artifacts - name: Collecting deployable artifacts shell: bash run: | mkdir -p windows mv build/*.zip windows # Upload artifacts - name: Upload artifacts uses: actions/upload-artifact@v1 with: name: windows path: windows ###################### #### Documentation ### ###################### docs: name: Documentation runs-on: ubuntu-latest defaults: run: working-directory: docs steps: - name: Checkout uses: actions/checkout@v2 # Install dependencies - name: Setup node 12 uses: actions/setup-node@v1 with: node-version: '12' # Build Docs - name: Build docs run: | npm install -g yarn yarn install yarn docs:build