diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 515bb94..de07d18 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -1,14 +1,26 @@ -name: Build APK and Linux +name: Build Packages on: push: tags: - 'v*.*.*' workflow_dispatch: + inputs: + platform: + description: 'Platform to build' + required: true + type: choice + options: + - all + - linux + - windows + - android + default: 'all' jobs: build-linux: runs-on: ubuntu-latest + if: github.ref_type == 'tag' || github.event.inputs.platform == 'all' || github.event.inputs.platform == 'linux' permissions: contents: read steps: @@ -43,6 +55,7 @@ jobs: build-windows: runs-on: windows-latest + if: github.ref_type == 'tag' || github.event.inputs.platform == 'all' || github.event.inputs.platform == 'windows' permissions: contents: read steps: @@ -75,6 +88,7 @@ jobs: build-android: runs-on: ubuntu-latest + if: github.ref_type == 'tag' || github.event.inputs.platform == 'all' || github.event.inputs.platform == 'android' continue-on-error: true permissions: contents: read @@ -117,7 +131,7 @@ jobs: create-release: needs: [build-linux, build-windows, build-android] runs-on: ubuntu-latest - if: startsWith(github.ref, 'refs/tags/') + if: github.ref_type == 'tag' && !cancelled() permissions: contents: write steps: @@ -125,20 +139,22 @@ jobs: uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 - name: Download Linux artifact + if: needs.build-linux.result == 'success' uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 with: name: ren-browser-linux path: ./artifacts/linux - name: Download Windows artifact + if: needs.build-windows.result == 'success' uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 with: name: ren-browser-windows path: ./artifacts/windows - name: Download APK artifact + if: needs.build-android.result == 'success' uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 - continue-on-error: true with: name: ren-browser-apk path: ./artifacts/apk