name: Build on: push: branches: main jobs: build: strategy: matrix: os: [ { name: windows-latest, build_path: out/Hydra-win32-x64, artifact: Hydra-win32-x64, }, { name: ubuntu-latest, build_path: out/Hydra-linux-x64, artifact: Hydra-linux-x64, }, ] runs-on: ${{ matrix.os.name }} 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: Lint run: yarn lint - 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 pyinstaller run: pyinstaller torrent-client/main.py --distpath resources/dist --icon=images/icon.ico -n hydra-download-manager - name: Publish run: yarn run publish env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} STEAMGRIDDB_API_KEY: ${{ env.STEAMGRIDDB_API_KEY }} - name: Create artifact uses: actions/upload-artifact@v4 with: name: ${{ matrix.os.artifact }} path: ${{ matrix.os.build_path }}