Files
Krow-workspace/docs/02-codemagic-env-vars.md
bwnyasse 3c0488576b refactor: restructure monorepo to align with industry standards
This commit restructures the monorepo to improve organization,
maintainability, and scalability. The changes include:

- Moving mobile apps from `mobile-apps/` to `apps/mobile-*`.
- Moving the web dashboard from `admin-web/` and `frontend-web/`
 to `apps/web-dashboard/`.
- Moving Firebase-related files to the root `firebase/` directory.
- Adding a `.geminiignore` file to exclude unnecessary files from
 Gemini analysis.
- Updating `.gitignore` to reflect the new structure and exclude
 sensitive files.
- Updating `codemagic.yaml` to reflect the new app locations.
- Adding a `make help` command to the root directory.
- Adding a `make install-git-hooks` command to install git hooks.
- Adding a `docs/02-codemagic-env-vars.md` file to document
 Codemagic environment variables.
- Adding a `docs/03-contributing.md` file to document
 contribution guidelines.
- Adding prototype placeholders to the internal launchpad.
- Updating the `README.md` file to reflect the new structure and
 provide updated instructions.

These changes improve the overall structure of the monorepo and
make it easier to develop, maintain, and scale the KROW Workforce
platform.
2026-01-10 22:36:29 -05:00

7.2 KiB

Codemagic Environment Variables

This document outlines the environment variables required for the Codemagic CI/CD pipelines defined in codemagic.yaml. These variables should be configured in your Codemagic project under Environment variables.

Client App (client-app)


Group: client_app_dev_credentials

Variable Name Example Value Secure Description
FLAVOR dev No The Flutter flavor to use for the build.
FIREBASE_APP_ID_ANDROID 1:DEV_ANDROID_APP_ID No The Firebase App ID for the Android app (Dev).
FIREBASE_APP_ID_IOS 1:DEV_IOS_APP_ID No The Firebase App ID for the iOS app (Dev).
FIREBASE_TESTER_GROUPS developers No Comma-separated list of Firebase tester groups.
FIREBASE_TOKEN (your_firebase_token) Yes Your Firebase CLI token.
GOOGLE_SERVICES_JSON (contents of google-services.json) Yes Contents of your google-services.json file for Android (Dev).
GOOGLE_SERVICE_INFO_PLIST (contents of GoogleService-Info.plist) Yes Contents of your GoogleService-Info.plist file for iOS (Dev).
KEYSTORE_PASSWORD (your_keystore_password) Yes Password for the Android keystore.
KEY_ALIAS (your_key_alias) Yes Alias for the key in the Android keystore.
KEY_PASSWORD (your_key_password) Yes Password for the key in the Android keystore.

Group: client_app_staging_credentials

Variable Name Example Value Secure Description
FLAVOR staging No The Flutter flavor to use for the build.
FIREBASE_APP_ID_ANDROID 1:STAGING_ANDROID_APP_ID No The Firebase App ID for the Android app (Staging).
FIREBASE_APP_ID_IOS 1:STAGING_IOS_APP_ID No The Firebase App ID for the iOS app (Staging).
FIREBASE_TESTER_GROUPS qa-team, stakeholders No Comma-separated list of Firebase tester groups.
FIREBASE_TOKEN (your_firebase_token) Yes Your Firebase CLI token.
GOOGLE_SERVICES_JSON (contents of google-services.json) Yes Contents of your google-services.json file for Android (Staging).
GOOGLE_SERVICE_INFO_PLIST (contents of GoogleService-Info.plist) Yes Contents of your GoogleService-Info.plist file for iOS (Staging).
KEYSTORE_PASSWORD (your_keystore_password) Yes Password for the Android keystore.
KEY_ALIAS (your_key_alias) Yes Alias for the key in the Android keystore.
KEY_PASSWORD (your_key_password) Yes Password for the key in the Android keystore.

Group: client_app_prod_credentials

Variable Name Example Value Secure Description
FLAVOR prod No The Flutter flavor to use for the build.
FIREBASE_APP_ID_ANDROID 1:PROD_ANDROID_APP_ID No The Firebase App ID for the Android app (Prod).
FIREBASE_APP_ID_IOS 1:PROD_IOS_APP_ID No The Firebase App ID for the iOS app (Prod).
FIREBASE_TESTER_GROUPS (empty or specific group) No Comma-separated list of Firebase tester groups.
FIREBASE_TOKEN (your_firebase_token) Yes Your Firebase CLI token.
GOOGLE_SERVICES_JSON (contents of google-services.json) Yes Contents of your google-services.json file for Android (Prod).
GOOGLE_SERVICE_INFO_PLIST (contents of GoogleService-Info.plist) Yes Contents of your GoogleService-Info.plist file for iOS (Prod).
KEYSTORE_PASSWORD (your_keystore_password) Yes Password for the Android keystore.
KEY_ALIAS (your_key_alias) Yes Alias for the key in the Android keystore.
KEY_PASSWORD (your_key_password) Yes Password for the key in the Android keystore.

Staff App (staff-app)


Group: staff_app_dev_credentials

Variable Name Example Value Secure Description
FLAVOR dev No The Flutter flavor to use for the build.
FIREBASE_APP_ID_ANDROID 1:DEV_ANDROID_APP_ID No The Firebase App ID for the Android app (Dev).
FIREBASE_APP_ID_IOS 1:DEV_IOS_APP_ID No The Firebase App ID for the iOS app (Dev).
FIREBASE_TESTER_GROUPS developers No Comma-separated list of Firebase tester groups.
FIREBASE_TOKEN (your_firebase_token) Yes Your Firebase CLI token.
GOOGLE_SERVICES_JSON (contents of google-services.json) Yes Contents of your google-services.json file for Android (Dev).
GOOGLE_SERVICE_INFO_PLIST (contents of GoogleService-Info.plist) Yes Contents of your GoogleService-Info.plist file for iOS (Dev).
KEYSTORE_PASSWORD (your_keystore_password) Yes Password for the Android keystore.
KEY_ALIAS (your_key_alias) Yes Alias for the key in the Android keystore.
KEY_PASSWORD (your_key_password) Yes Password for the key in the Android keystore.

Group: staff_app_staging_credentials

Variable Name Example Value Secure Description
FLAVOR staging No The Flutter flavor to use for the build.
FIREBASE_APP_ID_ANDROID 1:STAGING_ANDROID_APP_ID No The Firebase App ID for the Android app (Staging).
FIREBASE_APP_ID_IOS 1:STAGING_IOS_APP_ID No The Firebase App ID for the iOS app (Staging).
FIREBASE_TESTER_GROUPS qa-team, stakeholders No Comma-separated list of Firebase tester groups.
FIREBASE_TOKEN (your_firebase_token) Yes Your Firebase CLI token.
GOOGLE_SERVICES_JSON (contents of google-services.json) Yes Contents of your google-services.json file for Android (Staging).
GOOGLE_SERVICE_INFO_PLIST (contents of GoogleService-Info.plist) Yes Contents of your GoogleService-Info.plist file for iOS (Staging).
KEYSTORE_PASSWORD (your_keystore_password) Yes Password for the Android keystore.
KEY_ALIAS (your_key_alias) Yes Alias for the key in the Android keystore.
KEY_PASSWORD (your_key_password) Yes Password for the key in the Android keystore.

Group: staff_app_prod_credentials

Variable Name Example Value Secure Description
FLAVOR prod No The Flutter flavor to use for the build.
FIREBASE_APP_ID_ANDROID 1:PROD_ANDROID_APP_ID No The Firebase App ID for the Android app (Prod).
FIREBASE_APP_ID_IOS 1:PROD_IOS_APP_ID No The Firebase App ID for the iOS app (Prod).
FIREBASE_TESTER_GROUPS (empty or specific group) No Comma-separated list of Firebase tester groups.
FIREBASE_TOKEN (your_firebase_token) Yes Your Firebase CLI token.
GOOGLE_SERVICES_JSON (contents of google-services.json) Yes Contents of your google-services.json file for Android (Prod).
GOOGLE_SERVICE_INFO_PLIST (contents of GoogleService-Info.plist) Yes Contents of your GoogleService-Info.plist file for iOS (Prod).
KEYSTORE_PASSWORD (your_keystore_password) Yes Password for the Android keystore.
KEY_ALIAS (your_key_alias) Yes Alias for the key in the Android keystore.
KEY_PASSWORD (your_key_password) Yes Password for the key in the Android keystore.