Releases: futuredapp/.github
2.1.0
New features
JIRA transitions
All nightly build workflows now support automatically transitioning related tickets to specific status after successful build:
Usage
- Specify new secret
jira_context: ${{ secrets.JIRA_CONTEXT }}(Is org-level secret) - Specify new input with status to which ticket will be transitioned:
jira_transition: 'Testing'
What's Changed
- Workflow inputs cleanup & Fix LFS in iOS builds by @ssestak in #72
- Add Git LFS support to changelog generation action by @ssestak in #73
- Remove input secret_properties from iOS selfhosted build by @ssestak in #74
- fix(test): Fix all failing tests in universal-detect-changes-and-generate-changelog by @ssestak in #75
- JIRA transitions by @matejsemancik in #71
Full Changelog: 2.0.1...2.1.0
2.0.1
What's Changed
- Fix quotes in Firebase release notes parameter by @matejsemancik in #61
- Fix 141 error in changelog action by @matejsemancik in #62
- Removed changelog debug echo and related variable. by @Patrez in #63
- Fix Build condition by @matejsemancik in #65
- Feature/custom ios build folder by @okalman in #67
- Refactor iOS workflows by @ssestak in #64
- Refactor changelog generation action by @ssestak in #66
- Fix iOS KMP build working directory by @ssestak in #68
- Fix iOS KMP working directory by @ssestak in #69
- Android & KMP danger tokens by @matejsemancik in #70
New Contributors
Full Changelog: 2.0.0...2.0.1
2.0.0
What's Changed
- Add force build option by @ssestak in #53
- Remove unnecessary check of required keys by @ssestak in #56
- Fix export secrets pwd by @ssestak in #57
- Export secrets pwd by @ssestak in #58
- Cleanup + Naming consistency by @matejsemancik in #60
- AN + KMP nightly builds, refactor to reusable composite actions by @matejsemancik in #59
⚠️ This release introduces breaking changes
This guide outlines the necessary changes for existing users integrating with the updated Android workflows.
Summary of Changes
Firebase App Distribution Workflow
- ✅ Change:
BUNDLE_GRADLE_TASK→PACKAGE_GRADLE_TASK - ❌ Remove:
SIGNING_KEYSTORE_PATHinput - ❌ Remove: All signing secrets (
SIGNING_KEYSTORE_PASSWORD,SIGNING_KEY_ALIAS,SIGNING_KEY_PASSWORD)
Google Play Workflow
- ❌ Remove:
SIGNING_KEYSTORE_PATHinput (was unused) - ✅ Keep: All signing secrets (still required)
Detailed guides
Firebase App Distribution Workflow Changes
Required Input Changes
1. Rename BUNDLE_GRADLE_TASK to PACKAGE_GRADLE_TASK
Before:
uses: futuredapp/.github/.github/workflows/android-cloud-release-firebaseAppDistribution.yml@main
with:
BUNDLE_GRADLE_TASK: "bundleEnterprise"After:
uses: futuredapp/.github/.github/workflows/android-cloud-release-firebaseAppDistribution.yml@main
with:
PACKAGE_GRADLE_TASK: "packageEnterpriseUniversalApk"Note: The new task should be a Gradle task for packaging universal APK (e.g.,
packageEnterpriseUniversalApkorpackageDevEnterpriseUniversalApk) instead of a bundle task. This packaging task is a built-in task in Android Gradle Plugin (AGP) and should match the build variant and flavor you want to build.
2. Remove SIGNING_KEYSTORE_PATH Input
Before:
uses: futuredapp/.github/.github/workflows/android-cloud-release-firebaseAppDistribution.yml@main
with:
SIGNING_KEYSTORE_PATH: "keystore/debug.jks"
# other inputs...After:
uses: futuredapp/.github/.github/workflows/android-cloud-release-firebaseAppDistribution.yml@main
with:
# SIGNING_KEYSTORE_PATH removed
# other inputs...Required Secret Changes
Remove All Signing Secrets
The following secrets are no longer required and should be removed from your workflow calls:
Remove these secrets:
SIGNING_KEYSTORE_PASSWORDSIGNING_KEY_ALIASSIGNING_KEY_PASSWORD
Before:
secrets:
SIGNING_KEYSTORE_PASSWORD: ${{ secrets.KEYSTORE_PASSWORD }}
SIGNING_KEY_ALIAS: ${{ secrets.KEY_ALIAS }}
SIGNING_KEY_PASSWORD: ${{ secrets.KEY_PASSWORD }}
APP_DISTRIBUTION_SERVICE_ACCOUNT: ${{ secrets.FIREBASE_SERVICE_ACCOUNT }}After:
secrets:
APP_DISTRIBUTION_SERVICE_ACCOUNT: ${{ secrets.FIREBASE_SERVICE_ACCOUNT }}Complete Migration Example
Before:
jobs:
deploy-firebase:
uses: futuredapp/.github/.github/workflows/android-cloud-release-firebaseAppDistribution.yml@main
with:
TEST_GRADLE_TASKS: "testReleaseUnitTest"
BUNDLE_GRADLE_TASK: "bundleEnterprise"
UPLOAD_GRADLE_TASK: "appDistributionUploadEnterprise"
SIGNING_KEYSTORE_PATH: "keystore/release.jks"
APP_DISTRIBUTION_GROUPS: "qa-team,beta-testers"
secrets:
SIGNING_KEYSTORE_PASSWORD: ${{ secrets.KEYSTORE_PASSWORD }}
SIGNING_KEY_ALIAS: ${{ secrets.KEY_ALIAS }}
SIGNING_KEY_PASSWORD: ${{ secrets.KEY_PASSWORD }}
APP_DISTRIBUTION_SERVICE_ACCOUNT: ${{ secrets.FIREBASE_SERVICE_ACCOUNT }}After:
jobs:
deploy-firebase:
uses: futuredapp/.github/.github/workflows/android-cloud-release-firebaseAppDistribution.yml@main
with:
TEST_GRADLE_TASKS: "testReleaseUnitTest"
PACKAGE_GRADLE_TASK: "packageEnterpriseUniversalApk"
UPLOAD_GRADLE_TASK: "appDistributionUploadEnterprise"
APP_DISTRIBUTION_GROUPS: "qa-team,beta-testers"
secrets:
APP_DISTRIBUTION_SERVICE_ACCOUNT: ${{ secrets.FIREBASE_SERVICE_ACCOUNT }}Google Play Workflow Changes
Required Input Changes
Remove SIGNING_KEYSTORE_PATH Input
Before:
uses: futuredapp/.github/.github/workflows/android-cloud-release-googlePlay.yml@main
with:
SIGNING_KEYSTORE_PATH: "keystore/release.jks"
# other inputs...After:
uses: futuredapp/.github/.github/workflows/android-cloud-release-googlePlay.yml@main
with:
# SIGNING_KEYSTORE_PATH removed
# other inputs...Complete Migration Example
Before:
jobs:
deploy-google-play:
uses: futuredapp/.github/.github/workflows/android-cloud-release-googlePlay.yml@main
with:
VERSION_NAME: "1.0.0"
BUNDLE_GRADLE_TASK: "bundleRelease"
SIGNING_KEYSTORE_PATH: "keystore/release.jks"
GOOGLE_PLAY_APPLICATION_ID: "com.example.app"
GOOGLE_PLAY_WHATSNEW_DIRECTORY: "distribution/whatsnew"
secrets:
SIGNING_KEYSTORE_PASSWORD: ${{ secrets.KEYSTORE_PASSWORD }}
SIGNING_KEY_ALIAS: ${{ secrets.KEY_ALIAS }}
SIGNING_KEY_PASSWORD: ${{ secrets.KEY_PASSWORD }}
GOOGLE_PLAY_PUBLISH_SERVICE_ACCOUNT: ${{ secrets.GOOGLE_PLAY_SERVICE_ACCOUNT }}After:
jobs:
deploy-google-play:
uses: futuredapp/.github/.github/workflows/android-cloud-release-googlePlay.yml@main
with:
VERSION_NAME: "1.0.0"
BUNDLE_GRADLE_TASK: "bundleRelease"
GOOGLE_PLAY_APPLICATION_ID: "com.example.app"
GOOGLE_PLAY_WHATSNEW_DIRECTORY: "distribution/whatsnew"
secrets:
SIGNING_KEYSTORE_PASSWORD: ${{ secrets.KEYSTORE_PASSWORD }}
SIGNING_KEY_ALIAS: ${{ secrets.KEY_ALIAS }}
SIGNING_KEY_PASSWORD: ${{ secrets.KEY_PASSWORD }}
GOOGLE_PLAY_PUBLISH_SERVICE_ACCOUNT: ${{ secrets.GOOGLE_PLAY_SERVICE_ACCOUNT }}Technical Background
Firebase App Distribution Changes
The underlying logic no longer uses bundletool to create and sign universal APKs. Instead, the workflow now uses the built-in Android Gradle Plugin task for packaging universal APKs, which eliminates the need for external keystore handling and signing configuration.
Google Play Changes
The SIGNING_KEYSTORE_PATH input was unused and has been removed for consistency and clarity.
Full Changelog: 1.3.1...2.0.0
1.4.0
What's Changed
- Add generate baseline profiles workflow by @Syntey in #47
- Have option to specify runner in iOS selfhosted builds by @ssestak in #49
- Update ios-kmp-selfhosted-test.yml by @RudolfHladik in #48
- Remove unnecessary fetch depth from test by @ssestak in #52
- Universal Changelog Generator with Build Skip Logic by @ssestak in #50
- IOS secrets injection by @ssestak in #54
New Contributors
- @RudolfHladik made their first contribution in #48
Full Changelog: 1.3.0...1.4.0
1.3.0
What's Changed
- Add LFS checkout option to Android workflows by @matejsemancik in #44
- Bump Ruby version in
android-cloud-checkworkflow by @matejsemancik in #45 - Add cache encryption key to KMP & AN builds by @Syntey in #46
New Contributors
Full Changelog: 1.2.0...1.3.0
1.2.0
What's Changed
- Firebase passwords set level and version name by @xmadera in #38
- Optional Gradle options by @xmadera in #40
- Update ios-kmp-selfhosted-release.yml by @jmarek41 in #41
- KMP Swift Package integration by @matejsemancik in #42
- Add push_tags options to backup workflows by @matejsemancik in #43
New Contributors
Full Changelog: 1.1.1...1.2.0
1.1.1
What's Changed
- Add release notes to Firebase deploy by @matejsemancik in #37
Full Changelog: 1.1.0...1.1.1
1.1.0
What's Changed
- Create Android workflows & refactor iOS KMP workflows by @matejsemancik in #36
New Contributors
- @matejsemancik made their first contribution in #36
Full Changelog: 1.0.0...1.1.0
1.0.0
This release marks a big milestone. We started versioning shared workflows!