name: Flutter Release on: workflow_dispatch: push: tags: - "v*" permissions: contents: write # Set by fl_build # env: # APP_NAME: ServerBox # BUILD_NUMBER: ${{ github.ref_name }} jobs: releaseAndroid: name: Release android runs-on: ubuntu-22.04 steps: - name: Checkout uses: actions/checkout@v4 - name: Install Flutter uses: subosito/flutter-action@v2 with: channel: "stable" flutter-version: "3.38.0" - uses: actions/setup-java@v4 with: distribution: "zulu" java-version: "17" - name: Fetch secrets run: | curl -u ${{ secrets.BASIC_AUTH }} -o android/app/app.key ${{ secrets.URL_PREFIX }}app.key curl -u ${{ secrets.BASIC_AUTH }} -o android/key.properties ${{ secrets.URL_PREFIX }}key.properties - name: Build run: dart run fl_build -p android - name: Rename for fdroid run: | mv build/app/outputs/flutter-apk/${{ env.APP_NAME }}_${{ env.BUILD_NUMBER }}_arm64.apk build/app/outputs/flutter-apk/${{ env.APP_NAME }}_v1.0.${{ env.BUILD_NUMBER }}_arm64.apk mv build/app/outputs/flutter-apk/${{ env.APP_NAME }}_${{ env.BUILD_NUMBER }}_arm.apk build/app/outputs/flutter-apk/${{ env.APP_NAME }}_v1.0.${{ env.BUILD_NUMBER }}_arm.apk mv build/app/outputs/flutter-apk/${{ env.APP_NAME }}_${{ env.BUILD_NUMBER }}_amd64.apk build/app/outputs/flutter-apk/${{ env.APP_NAME }}_v1.0.${{ env.BUILD_NUMBER }}_amd64.apk - name: Create Release uses: softprops/action-gh-release@v2 with: files: | build/app/outputs/flutter-apk/${{ env.APP_NAME }}_v1.0.${{ env.BUILD_NUMBER }}_arm64.apk build/app/outputs/flutter-apk/${{ env.APP_NAME }}_v1.0.${{ env.BUILD_NUMBER }}_arm.apk build/app/outputs/flutter-apk/${{ env.APP_NAME }}_v1.0.${{ env.BUILD_NUMBER }}_amd64.apk env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} releaseLinux: name: Release linux runs-on: ubuntu-22.04 steps: - name: Checkout uses: actions/checkout@v4 - name: Install Flutter uses: subosito/flutter-action@v2 - name: Install dependencies run: | sudo apt update # Basic sudo apt install -y clang cmake ninja-build pkg-config libgtk-3-dev mesa-utils libvulkan-dev desktop-file-utils wget # App Specific sudo apt install -y libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libunwind-dev libsecret-1-dev - name: Build run: | dart run fl_build -p linux - name: Create Release uses: softprops/action-gh-release@v2 with: files: | ${{ env.APP_NAME }}_${{ env.BUILD_NUMBER }}_amd64.AppImage env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} releaseWin: name: Release windows runs-on: windows-latest steps: - name: Checkout uses: actions/checkout@v4 - name: Install Flutter uses: subosito/flutter-action@v2 - name: Build run: dart run fl_build -p windows - name: Create Release uses: softprops/action-gh-release@v2 with: files: | ${{ env.APP_NAME }}_${{ env.BUILD_NUMBER }}_windows_amd64.zip env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # releaseApple: # name: Release ios and macos # runs-on: macos-latest # steps: # - name: Checkout # uses: actions/checkout@v4 # - name: Install Flutter # uses: subosito/flutter-action@v2 # - name: Build # run: dart run fl_build -p ios # - name: Create Release # uses: softprops/action-gh-release@v2 # with: # files: | # ${{ env.APP_NAME }}_universal.ipa # env: # GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}