name: Build on: pull_request jobs: build: strategy: matrix: os: [windows-latest, ubuntu-latest] runs-on: ${{ matrix.os }} steps: - name: Check out Git repository uses: actions/checkout@v4 - name: Install Node.js uses: actions/setup-node@v4 with: node-version: 20.11.1 - name: Install dependencies run: yarn - name: Install Python uses: actions/setup-python@v5 with: python-version: 3.9 - name: Install dependencies run: pip install -r requirements.txt - name: Build with cx_Freeze run: python torrent-client/setup.py build - name: Build Linux if: matrix.os == 'ubuntu-latest' run: | sudo apt-get update sudo apt-get install -y libarchive-tools yarn build:linux env: MAIN_VITE_API_URL: ${{ vars.MAIN_VITE_STAGING_API_URL }} MAIN_VITE_AUTH_URL: ${{ vars.MAIN_VITE_STAGING_AUTH_URL }} MAIN_VITE_CHECKOUT_URL: ${{ vars.MAIN_VITE_STAGING_CHECKOUT_URL }} SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }} MAIN_VITE_SENTRY_DSN: ${{ vars.MAIN_VITE_SENTRY_DSN }} GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - name: Build Windows if: matrix.os == 'windows-latest' run: yarn build:win env: MAIN_VITE_API_URL: ${{ vars.MAIN_VITE_STAGING_API_URL }} MAIN_VITE_AUTH_URL: ${{ vars.MAIN_VITE_STAGING_AUTH_URL }} MAIN_VITE_CHECKOUT_URL: ${{ vars.MAIN_VITE_STAGING_CHECKOUT_URL }} SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }} MAIN_VITE_SENTRY_DSN: ${{ vars.MAIN_VITE_SENTRY_DSN }} GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - name: Create artifact uses: actions/upload-artifact@v4 with: name: Build-${{ matrix.os }} path: | dist/*-portable.exe dist/*.zip dist/*.dmg dist/*.deb dist/*.rpm dist/*.tar.gz dist/*.yml dist/*.blockmap dist/*.pacman