introduce prerelease tags
This commit is contained in:
@@ -26,24 +26,42 @@ jobs:
|
|||||||
large-packages: false
|
large-packages: false
|
||||||
docker-images: false
|
docker-images: false
|
||||||
swap-storage: false
|
swap-storage: false
|
||||||
|
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v4
|
||||||
- uses: actions/setup-java@v4
|
- uses: actions/setup-java@v4
|
||||||
with:
|
with:
|
||||||
distribution: 'temurin'
|
distribution: 'temurin'
|
||||||
java-version: '17'
|
java-version: '17'
|
||||||
|
|
||||||
|
- name: Determine build type
|
||||||
|
id: build-type
|
||||||
|
run: |
|
||||||
|
if [[ "${{ github.ref_name }}" =~ ^v.*-(pre|alpha) ]]; then
|
||||||
|
echo "is_prerelease=true" >> $GITHUB_OUTPUT
|
||||||
|
echo "Build type: Prerelease (APK only)"
|
||||||
|
else
|
||||||
|
echo "is_prerelease=false" >> $GITHUB_OUTPUT
|
||||||
|
echo "Build type: Full release (APK + Bundle + Play Console)"
|
||||||
|
fi
|
||||||
|
|
||||||
- uses: ruby/setup-ruby@v1
|
- uses: ruby/setup-ruby@v1
|
||||||
|
if: steps.build-type.outputs.is_prerelease == 'false'
|
||||||
with:
|
with:
|
||||||
ruby-version: '3.3'
|
ruby-version: '3.3'
|
||||||
bundler-cache: true
|
bundler-cache: true
|
||||||
working-directory: app
|
working-directory: app
|
||||||
|
|
||||||
- uses: actions/setup-node@v4
|
- uses: actions/setup-node@v4
|
||||||
with:
|
with:
|
||||||
node-version: 20
|
node-version: 20
|
||||||
|
|
||||||
- name: Download bundle dependencies
|
- name: Download bundle dependencies
|
||||||
|
if: steps.build-type.outputs.is_prerelease == 'false'
|
||||||
run: |
|
run: |
|
||||||
gem install bundler
|
gem install bundler
|
||||||
bundle config path vendor/bundle
|
bundle config path vendor/bundle
|
||||||
bundle install
|
bundle install
|
||||||
|
|
||||||
- name: Build container proxy
|
- name: Build container proxy
|
||||||
working-directory: packages/flutter_mozilla_components/javascript/container_proxy
|
working-directory: packages/flutter_mozilla_components/javascript/container_proxy
|
||||||
run: |
|
run: |
|
||||||
@@ -61,6 +79,7 @@ jobs:
|
|||||||
channel: stable
|
channel: stable
|
||||||
flutter-version: 3.32.5
|
flutter-version: 3.32.5
|
||||||
cache: true
|
cache: true
|
||||||
|
|
||||||
- name: Setup Flutter dependencies
|
- name: Setup Flutter dependencies
|
||||||
working-directory: app
|
working-directory: app
|
||||||
run: |
|
run: |
|
||||||
@@ -70,19 +89,34 @@ jobs:
|
|||||||
- name: Build APK
|
- name: Build APK
|
||||||
working-directory: app
|
working-directory: app
|
||||||
run: flutter build apk --verbose --release --split-per-abi --no-tree-shake-icons
|
run: flutter build apk --verbose --release --split-per-abi --no-tree-shake-icons
|
||||||
|
|
||||||
- name: Build App Bundle
|
- name: Build App Bundle
|
||||||
|
if: steps.build-type.outputs.is_prerelease == 'false'
|
||||||
working-directory: app
|
working-directory: app
|
||||||
run: flutter build appbundle --verbose --no-tree-shake-icons
|
run: flutter build appbundle --verbose --no-tree-shake-icons
|
||||||
- name: Create github artifact release
|
|
||||||
|
- name: Create github artifact release (Prerelease)
|
||||||
|
if: steps.build-type.outputs.is_prerelease == 'true'
|
||||||
|
uses: ncipollo/release-action@v1.17.0
|
||||||
|
with:
|
||||||
|
artifacts: "app/build/app/outputs/apk/release/*.apk"
|
||||||
|
prerelease: true
|
||||||
|
|
||||||
|
- name: Create github artifact release (Full)
|
||||||
|
if: steps.build-type.outputs.is_prerelease == 'false'
|
||||||
uses: ncipollo/release-action@v1.17.0
|
uses: ncipollo/release-action@v1.17.0
|
||||||
with:
|
with:
|
||||||
artifacts: "app/build/app/outputs/apk/release/*.apk,app/build/app/outputs/bundle/release/app-release.aab"
|
artifacts: "app/build/app/outputs/apk/release/*.apk,app/build/app/outputs/bundle/release/app-release.aab"
|
||||||
|
|
||||||
- name: Upload app bundle artifact
|
- name: Upload app bundle artifact
|
||||||
|
if: steps.build-type.outputs.is_prerelease == 'false'
|
||||||
uses: actions/upload-artifact@v4
|
uses: actions/upload-artifact@v4
|
||||||
with:
|
with:
|
||||||
name: appbundle
|
name: appbundle
|
||||||
path: app/build/app/outputs/bundle/release/app-release.aab
|
path: app/build/app/outputs/bundle/release/app-release.aab
|
||||||
|
|
||||||
- name: Release to Google Play (internal)
|
- name: Release to Google Play (internal)
|
||||||
|
if: steps.build-type.outputs.is_prerelease == 'false'
|
||||||
working-directory: app
|
working-directory: app
|
||||||
env:
|
env:
|
||||||
SUPPLY_PACKAGE_NAME: ${{ secrets.ANDROID_PACKAGE_NAME }}
|
SUPPLY_PACKAGE_NAME: ${{ secrets.ANDROID_PACKAGE_NAME }}
|
||||||
|
|||||||
Reference in New Issue
Block a user