name: Build on: push: branches: "**" 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: 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: Publish run: yarn run publish env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} MAIN_VITE_STEAMGRIDDB_API_KEY: ${{ secrets.STEAMGRIDDB_API_KEY }} SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }} MAIN_VITE_SENTRY_DSN: ${{ vars.SENTRY_DSN }} RENDERER_VITE_SENTRY_DSN: ${{ vars.SENTRY_DSN }} MAIN_VITE_ONLINEFIX_USERNAME: ${{ secrets.ONLINEFIX_USERNAME }} MAIN_VITE_ONLINEFIX_PASSWORD: ${{ secrets.ONLINEFIX_PASSWORD }} - name: VirusTotal Scan uses: crazy-max/ghaction-virustotal@v4 with: vt_api_key: ${{ secrets.VT_API_KEY }} files: | ./hydra-download-manager/hydra-download-manager.exe - name: Create artifact uses: actions/upload-artifact@v4 with: name: ${{ matrix.os.artifact }} path: ${{ matrix.os.build_path }}