This repo contains reusable workflows. These workflows are automatically set up when creating projects using iOS project template.
If you want to import them manually, reference a reusable workflow in your trigger workflow:
jobs:
{ name }:
uses: futuredapp/.github/.github/workflows/{platform}-{runner}-{action}[email protected]
secrets:
# Secrets to be passed to called workflow
key: ${{ secrets.key }}Name the job first and choose its platform, runner and action. Check the reusable workflow file and pass all the required secrets to it. All the available reusable workflows are listed in the following table.
| Platform | Runner | Action | File | Description |
|---|---|---|---|---|
| Universal | Any | Workflows Lint | workflows-lint |
Lints GitHub workflow files for syntax and best practices. |
| Universal | Cloud | Backup | universal-cloud-backup |
Backups currently checked out ref to a remote repository. |
| Universal | Self-hosted | Backup | universal-selfhosted-backup |
Backups currently checked out ref to a remote repository. |
| iOS | Self-hosted | Test | ios-selfhosted-test |
Lints and tests the PR. |
| iOS | Self-hosted | Build | ios-selfhosted-build |
Deprecated. Use ios-selfhosted-nightly-build or ios-selfhosted-on-demand-build. |
| iOS | Self-hosted | Nightly Build | ios-selfhosted-nightly-build |
Creates a nightly enterprise build and submits it to App Store Connect. |
| iOS | Self-hosted | On-Demand Build | ios-selfhosted-on-demand-build |
Creates an on-demand enterprise build and submits it to App Store Connect. |
| iOS | Self-hosted | Release | ios-selfhosted-release |
Creates release build and submits it to App Store Connect. |
| iOS (KMP) | Self-hosted | Test | ios-kmp-selfhosted-test |
Lints and tests the PR. |
| iOS (KMP) | Self-hosted | Build | ios-kmp-selfhosted-build |
Creates enterprise release build and submits the build to Futured App Store Connect. |
| iOS (KMP) | Self-hosted | Release | ios-kmp-selfhosted-release |
Creates release build and submits it to App Store Connect. |
| Android (+KMP) | Cloud | Tests & Lint checks | android-cloud-check |
Runs unit tests and lint checks on pull request. |
| Android (+KMP) | Cloud | Firebase Snapshot Release | android-cloud-release-firebaseAppDistribution |
Publishes QA Snapshot build to Firebase App Distribution. |
| Android (+KMP) | Cloud | Google Play Release | android-cloud-release-googlePlay |
Publishes release build to Google Play. |
| Android | Cloud | Nightly Build | android-cloud-nightly-build |
Automated nightly builds with Firebase App Distribution deployment. |
| Android (+KMP) | Cloud | Generate Baseline Profiles | android-cloud-generate-baseline-profiles |
Generates baseline profiles and creates PR with changes. |
| KMP | Cloud | Detect Changes | kmp-cloud-detect-changes |
Detects changed sources in KMP projects for conditional job execution. |
| KMP | Cloud | Combined Nightly Build | kmp-combined-nightly-build |
Automated nightly builds for both iOS and Android platforms in KMP projects. |
All contributions are welcome!
Current maintainer is Jakub Marek, [email protected] and Matej Semančík, [email protected].
Content of this repository is available under the MIT license. See the LICENSE file for more information.