Skip to content

Releases: futuredapp/.github

2.1.0

14 Nov 13:15
9fef89d

Choose a tag to compare

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

12 Nov 09:40
49828b5

Choose a tag to compare

What's Changed

New Contributors

Full Changelog: 2.0.0...2.0.1

2.0.0

07 Oct 08:42
f23e660

Choose a tag to compare

What's Changed

⚠️ 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_TASKPACKAGE_GRADLE_TASK
  • Remove: SIGNING_KEYSTORE_PATH input
  • Remove: All signing secrets (SIGNING_KEYSTORE_PASSWORD, SIGNING_KEY_ALIAS, SIGNING_KEY_PASSWORD)

Google Play Workflow

  • Remove: SIGNING_KEYSTORE_PATH input (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., packageEnterpriseUniversalApk or packageDevEnterpriseUniversalApk) 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_PASSWORD
  • SIGNING_KEY_ALIAS
  • SIGNING_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

29 Aug 15:11
192f715

Choose a tag to compare

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

Full Changelog: 1.3.0...1.4.0

1.3.0

05 Jun 09:14
b5d4b26

Choose a tag to compare

What's Changed

New Contributors

Full Changelog: 1.2.0...1.3.0

1.2.0

13 Mar 14:34
3bc5f4a

Choose a tag to compare

What's Changed

New Contributors

Full Changelog: 1.1.1...1.2.0

1.1.1

07 Feb 11:04
88d89a2

Choose a tag to compare

What's Changed

Full Changelog: 1.1.0...1.1.1

1.1.0

30 Jan 12:15
9c8cbca

Choose a tag to compare

What's Changed

New Contributors

Full Changelog: 1.0.0...1.1.0

1.0.0

27 Jan 16:24
8dd1218

Choose a tag to compare

This release marks a big milestone. We started versioning shared workflows!