name: Release on: push: tags: - '**' jobs: build: name: Build runs-on: ${{ matrix.os }} timeout-minutes: 30 strategy: matrix: include: - name: Windows os: [windows-latest] - name: Linux os: [ubuntu-latest] - name: macOS os: [macos-latest] steps: - uses: actions/checkout@v4 with: submodules: recursive - name: Install Inno Setup (Windows) if: runner.os == 'Windows' run: choco install innosetup -y - name: "Build" run: | ./ci/build.sh shell: bash env: APPLICATION: ${{ secrets.APPLICATION }} INSTALLER: ${{ secrets.INSTALLER }} APPLE_PASS: ${{ secrets.APPLE_PASS }} APPLE_USER: ${{ secrets.APPLE_USER }} APIKEY: ${{ secrets.APIKEY }} - name: "Upload" run: | ./ci/upload.sh shell: bash env: APPLICATION: ${{ secrets.APPLICATION }} INSTALLER: ${{ secrets.INSTALLER }} APPLE_PASS: ${{ secrets.APPLE_PASS }} APPLE_USER: ${{ secrets.APPLE_USER }} APIKEY: ${{ secrets.APIKEY }} - name: Upload Artifact uses: actions/upload-artifact@v4 with: name: Binaries ${{ matrix.name }} path: | ci/bin/*.zip ci/bin/*.pkg ci/bin/*.deb ci/bin/*.exe retention-days: 30 release: name: Release needs: build runs-on: ubuntu-latest timeout-minutes: 30 steps: - uses: actions/checkout@v4 - name: Download Artifacts uses: actions/download-artifact@v4 - name: Create Release run: ./release.sh shell: bash env: GH_TOKEN: ${{ secrets.ACCESS_TOKEN }}