name: Test Build on: push: paths: - "**/*.js" - "**/*.vue" - "public/**/*" - "package-lock.json" - "package.json" pull_request: branches: [ master ] types: [ opened, synchronize, reopened ] paths: - "**/*.js" - "**/*.vue" - "public/**/*" - "package-lock.json" - "package.json" jobs: build: runs-on: ubuntu-latest strategy: matrix: build: [ legacy, modern ] include: - build: legacy BUILD_ARGS: "" BUILD_EXTENSION: true - build: modern BUILD_ARGS: "-- --modern" BUILD_EXTENSION: false steps: - uses: actions/checkout@v2 - name: Use Node.js 14.x uses: actions/setup-node@v2 with: node-version: "14" - name: Install Dependencies run: | npm ci npm run fix-compatibility - name: Build env: GZIP: "--best" run: | npm run build ${{ matrix.BUILD_ARGS }} tar -czvf dist.tar.gz -C ./dist . - name: Build Extension if: ${{ matrix.BUILD_EXTENSION }} run: | npm run make-extension cd dist zip -rJ9 ../extension.zip * cd .. - name: Publish artifact uses: actions/upload-artifact@v2 with: name: unlock-music-${{ matrix.build }}.tar.gz path: ./dist.tar.gz - name: Publish artifact - Extension if: ${{ matrix.BUILD_EXTENSION }} uses: actions/upload-artifact@v2 with: name: extension.zip path: ./extension.zip