* chore: Update web dependencies
Updated the following dependencies:
- Upgraded `enhanced-resolve` from 5.17.0 to 5.18.0
- Upgraded `karma` from 6.4.3 to 6.4.4
- Upgraded `kotlin-web-helpers` to 2.0.0
- Upgraded `mocha` from 10.7.0 to 10.7.3
- Upgraded `webpack` from 5.93.0 to 5.94.0
- Upgraded `ws` from 8.5.0 to 8.18.0
Removed the following dependencies:
- `@types/eslint`
- `@types/eslint-scope`
Also, updated the multi-platform build and publish workflow to use `niyajali/mifos-mobile-github-actions` instead of `openMF/mifos-mobile-github-actions`.
* ci: Update GitHub Actions workflow
This commit updates the GitHub Actions workflows to:
- Remove the pull request trigger from the `build-and-deploy-site` workflow. The workflow will now only be triggered manually or on a schedule.
- Add `build_ios` as an input to the `multi-platform-build-and-publish` workflow to control whether the iOS app should be built.
- Remove unused inputs from the `multi-platform-build-and-publish` workflow, including `publish_desktop` and `publish_web`.
* chore: Add Fastlane lanes and update workflows
This commit introduces new Fastlane lanes for Android and iOS:
- **Android:**
- `assembleDebugApks`: Assembles debug APKs.
- `assembleReleaseApks`: Assembles release APKs using a keystore.
- `bundlePlayStoreRelease`: Bundles a Play Store release, including generating a version and release notes.
- `deploy_on_firebase`: Deploys the release APK to Firebase App Distribution.
- `buildAndSignApp`: A private lane to build and sign the app with provided keystore credentials.
- `generateVersion`: Generates and sets version information.
- `generateReleaseNotes`: Generates release notes from git commits.
- **iOS:**
- `build_ios`: Builds the iOS app with optional configuration (defaults to Debug).
- `increment_version`: Increments the build number using Firebase App Distribution's latest release.
- `deploy_on_firebase`: Deploys the iOS app to Firebase App Distribution, including incrementing the build number.
- `generateReleaseNotes`: Generates release notes from git commits.
It also updates the following workflows:
- **promote-to-production.yml**: Removes the manual trigger and workflow dispatch, making it only triggered by GitHub releases.
- **tag-weekly-release.yml**: Updates the cron schedule to run weekly.
- **multi-platform-build-and-publish.yml**: Switches back to using `openMF/mifos-mobile-github-actions` instead of `niyajali/mifos-mobile-github-actions`.
Additionally, it relocates the keystore to a `keystores` directory, updates the `build.gradle.kts` file to reflect this change, and adds necessary metadata for the Play Store. It also updates the `AppFile` to use the playStorePublishServiceCredentialsFile from the secrets directory and adds a `secrets` directory to the `.gitignore`.
* ci: Remove `publish_android` input from multi-platform workflow
This commit removes the `publish_android` input from the `multi-platform-build-and-publish` workflow.
This input was previously used to control whether the Android app should be published to the Play Store.
Since this functionality is no longer required, the input has been removed to simplify the workflow configuration.
* chore: Remove `repoName` param from `generateReleaseNotes` lane
This commit removes the `repoName` parameter from the `generateReleaseNotes` lane in the Fastfile. The `repoName` parameter is no longer needed as the lane now automatically determines the repository name.
This change simplifies the `generateReleaseNotes` lane and makes it more robust.
This commit migrates the CI workflows from reusable workflows to local workflows within the repository. This change provides greater control and flexibility in managing the CI process.
The following changes were made:
- Removed the dependency on the `mifos-mobile-github-actions` repository for CI workflows.
- Implemented local workflows for tagging weekly releases, PR checks, and building/publishing multi-platform artifacts.
- Updated the weekly release workflow to trigger the multi-platform build and publish workflow for beta releases.
- Added package name inputs to the PR check workflow for Android, desktop, web, and iOS platforms.
- Removed unused workflows for publishing Android and web apps to Firebase and GitHub Pages, respectively.
This commit migrates the Android and iOS Firebase app distribution process to use Fastlane.
- Removed the custom Gradle task for Firebase app distribution.
- Removed the firebase appdistribution plugin from the project.
- Implemented `android deploy_on_firebase` Fastlane lane for Android Firebase app distribution.
- Implemented `ios deploy_on_firebase` Fastlane lane for iOS Firebase app distribution.
- Updated the internal release workflow to trigger the Fastlane lanes.
- Updated documentation to reflect the changes.
- Updated the weekly schedule workflow to trigger the new workflow for internal release.
* Chore: Updated Fastlane and CI for release
This commit adds Fastlane for automating the Android release process and configures CI for internal, beta, and production releases using GitHub Actions.
The following changes were made:
- Added Fastlane configuration files for building, testing, and deploying the app.
- Added GitHub Actions workflows for triggering internal, beta, and production releases.
- Updated .gitignore to exclude Fastlane report files.
- Updated dependency versions in Gemfile.lock.
- Added a README for Fastlane.
- Updated the make_site workflow to trigger on released releases instead of published releases.
* chore: trigger publish on pull request close
* chore: Updated fastlane dependencies
* chore: Updated fastlane dependencies
chore: trigger publish on pull request close
Chore: Updated Fastlane and CI for release
This commit adds Fastlane for automating the Android release process and configures CI for internal, beta, and production releases using GitHub Actions.
The following changes were made:
- Added Fastlane configuration files for building, testing, and deploying the app.
- Added GitHub Actions workflows for triggering internal, beta, and production releases.
- Updated .gitignore to exclude Fastlane report files.
- Updated dependency versions in Gemfile.lock.
- Added a README for Fastlane.
- Updated the make_site workflow to trigger on released releases instead of published releases.
* chore: Fixing fastlane configuration
* chore: Update lock file
* chore: Updating Fast file
* chore: Updating Fast file
* chore: Fixing Fast file
* chore: Fixing Fast file
* chore: Fixing Fastlane
* chore: Fixing Fastlane
* chore: Setup fox iOS Firebase App Distribution
* chore: Fix Typo
* Update internal_or_beta_release.yml
* chore: Fixing Workflow
* chore: Fixing Workflow File
* chore: Updating Bundler
* Update FastFile
* chore: Updating Workflow
* chore: Configured Multi-Platform App Build and Distribution
* chore: Fixing workflow usage
* chore: Fixing workflow usage
* chore: Fixing workflow usage
* chore: Fixing workflow usage
* chore: Fixing workflow usage
* chore: Fixing workflow usage
* chore: Fixing workflow usage
* chore: Fixing workflow usage
* chore: Fixing workflow usage
* chore: Fixing workflow usage
* chore: Fixing workflow usage
* Chore: Updated Fastlane and CI for release
This commit adds Fastlane for automating the Android release process and configures CI for internal, beta, and production releases using GitHub Actions.
The following changes were made:
- Added Fastlane configuration files for building, testing, and deploying the app.
- Added GitHub Actions workflows for triggering internal, beta, and production releases.
- Updated .gitignore to exclude Fastlane report files.
- Updated dependency versions in Gemfile.lock.
- Added a README for Fastlane.
- Updated the make_site workflow to trigger on released releases instead of published releases.
* Configured CI/CD And Fastlane to Release App to Play Store
This commit introduces a comprehensive CI/CD pipeline using Github Actions and Fastlane.
The following
workflows have been added:
- **On Push:** Builds, archives, and creates Github pre-releases for beta builds. Deploys to Playstore internal track and promotes to beta if specified.
- **Play Publish:** Builds and deploys to Playstore internal track. Optionally promotes to beta.
- **
Production Deploy:** Promotes beta releases to production on the Playstore.
- **Bump our Calendar Version:** Creates monthly releases.
- **Tag Weekly Release:** Tags weekly releases and triggers the On Push workflow for beta builds.
Additionally, Fastlane has been configured to handle deployments to the Playstore and Amazon Appstore. Secret inflation and release note generation have been automated using Github Actions.
* Configured CI/CD And Fastlane to Release App to Play Store
This commit introduces a comprehensive CI/CD pipeline using Github Actions and Fastlane.
The following
workflows have been added:
- **On Push:** Builds, archives, and creates Github pre-releases for beta builds. Deploys to Playstore internal track and promotes to beta if specified.
- **Play Publish:** Builds and deploys to Playstore internal track. Optionally promotes to beta.
- **
Production Deploy:** Promotes beta releases to production on the Playstore.
- **Bump our Calendar Version:** Creates monthly releases.
- **Tag Weekly Release:** Tags weekly releases and triggers the On Push workflow for beta builds.
Additionally, Fastlane has been configured to handle deployments to the Playstore and Amazon Appstore. Secret inflation and release note generation have been automated using Github Actions.
* fix: Improved pre-commit and pre-push scripts
* Updated Badging
* Updated Badging