Android nightly build
Source: workflows/android-cloud-nightly-build.yml
Runner: ubuntu-latest
Usage
jobs:
android-nightly-build:
uses: futuredapp/.github/.github/workflows/android-cloud-nightly-build.yml@2.7.0
with:
TEST_GRADLE_TASKS: '...'
PACKAGE_GRADLE_TASK: '...'
UPLOAD_GRADLE_TASK: '...'
APP_DISTRIBUTION_GROUPS: '...'
secrets:
APP_DISTRIBUTION_SERVICE_ACCOUNT: ${{ secrets.APP_DISTRIBUTION_SERVICE_ACCOUNT }}
Inputs
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
TEST_GRADLE_TASKS |
string |
Yes | — | A Gradle task(s) for executing unit tests, for example testReleaseUnitTest or testDevEnterpriseUnitTest |
PACKAGE_GRADLE_TASK |
string |
Yes | — | A Gradle task for packaging universal APK, eg. 'packageEnterpriseUniversalApk' |
UPLOAD_GRADLE_TASK |
string |
Yes | — | A Gradle task for uploading APK, for example appDistributionUploadEnterprise |
APP_DISTRIBUTION_GROUPS |
string |
Yes | — | Comma-separated list of app distribution group IDs |
USE_GIT_LFS |
boolean |
No | False |
Whether to download Git-LFS files |
VERSION_NAME |
string |
No | — | Version name. Example: '1.X.X-snapshot' |
BUILD_NUMBER_OFFSET |
number |
No | 0 |
Build number offset. This number will be added to GITHUB_RUN_NUMBER and can be used to make corrections to build numbers. |
KMP_FLAVOR |
string |
No | test |
KMP Build flavor. This is optional and only required by KMP projects and can be ignored on pure Android projects |
SECRET_PROPERTIES_FILE |
string |
No | secrets.properties |
A path to file that will be populated with contents of 'SECRET_PROPERTIES' secret. This file can be picked up by Secrets Gradle plugin to embed secrets into BuildConfig. |
JAVA_VERSION |
string |
No | 17 |
Java version to use |
JAVA_DISTRIBUTION |
string |
No | zulu |
Java distribution to use |
GRADLE_OPTS |
string |
No | — | Gradle options |
CHANGELOG_DEBUG |
boolean |
No | False |
Enable debug mode for changelog generation. Default is false. |
CHANGELOG_CHECKOUT_DEPTH |
number |
No | 100 |
The depth of the git history to fetch for changelog generation. Default is 100. |
CHANGELOG_FALLBACK_LOOKBACK |
string |
No | 24 hours |
The amount of time to look back for merge commits when no previous build commit is found. Default is 24 hours. |
CHANGELOG_CACHE_KEY_PREFIX |
string |
No | — | Custom prefix for cache keys used by changelog generation. If not provided, will use 'latest_builded_commit-'. If provided, format will be '{prefix}-latest_builded_commit-'. |
TIMEOUT_MINUTES |
number |
No | 30 |
Job timeout in minutes |
JIRA_TRANSITION |
string |
No | Testing |
Jira transition to use for transitioning related issues after build |
BUILD_RUNS_ON |
string |
No | ubuntu-latest |
Runner label for the build job, for example ubuntu-latest (default) or self-hosted to build on the mac runners. Other jobs in this workflow stay on ubuntu-latest |
SETUP_RUBY |
boolean |
No | True |
Whether to install Ruby with ruby/setup-ruby (default). Set to false on runners whose image already ships Ruby, for example the self-hosted mac runners, where setup-ruby cannot create its tool cache |
ANDROID_SDK_PACKAGES |
string |
No | — | When set, installs the Android SDK in the build job (android-actions/setup-android) with these sdkmanager packages, for runners whose image has no SDK, for example platforms;android-36 build-tools;36.0.0 platform-tools |
KOTLIN_NATIVE_CACHE |
boolean |
No | False |
Caches ~/.konan/dependencies (LLVM, libffi) between runs; for KMP projects built on macOS, where the Kotlin/Native toolchain downloads them on every fresh runner |
Secrets
| Name | Required | Description |
|---|---|---|
APP_DISTRIBUTION_SERVICE_ACCOUNT |
Yes | JSON key of service account with permissions to upload build to Firebase App Distribution |
GRADLE_CACHE_ENCRYPTION_KEY |
No | Configuration cache encryption key |
SECRET_PROPERTIES |
No | Custom string that contains key-value properties as secrets. Contents of this secret will be placed into file specified by 'SECRET_PROPERTIES_FILE' input. |
JIRA_CONTEXT |
No | JIRA context for transitioning tickets. |