Skip to main content

Konfigurasi Environment

Panduan lengkap untuk konfigurasi environment MStore Mobile.

๐ŸŒ Multiple Environments

MStore mendukung 3 environment berbeda:
  • Development - Untuk development lokal
  • Staging - Untuk testing sebelum production
  • Production - Untuk release ke users

๐Ÿ“ Environment Files

Struktur File

.env.dev (Development)

.env.staging (Staging)

.env.prod (Production)

๐Ÿ”ง App Constants

File: lib/pkg/common/app_constants.dart

๐Ÿ”ฅ Firebase Configuration

Multiple Firebase Projects

MStore menggunakan Firebase project berbeda untuk setiap environment.

iOS Configuration

Script untuk switch Firebase config (iOS):

Android Configuration

Android Gradle otomatis memilih config berdasarkan flavor.

Firebase Options

File: lib/core/firebase/firebase_options_*.dart

๐ŸŽจ Flavor Configuration

iOS (Xcode Schemes)

  1. Open Xcode
  2. Product โ†’ Scheme โ†’ Manage Schemes
  3. Create schemes:
    • Runner-Development
    • Runner-Staging
    • Runner-Production

Android (build.gradle)

๐Ÿš€ Running with Flavors

Development

Staging

Production

๐Ÿ—๏ธ Build Commands

Development Build

Production Build

๐Ÿ” Secure Configuration

Sensitive Data

JANGAN commit sensitive data ke Git!

Environment Variables di CI/CD

Gunakan secrets management:

GitHub Actions

GitLab CI

๐Ÿ“ฑ App Configuration

App Info

Platform-Specific Config

๐ŸŽฏ Feature Flags

Remote Config (Firebase)

Local Feature Flags

๐Ÿ—„๏ธ Database Configuration

Isar Database

๐Ÿ” Debugging Configuration

Debug Tools

VS Code Launch Configuration

๐Ÿ“Š Monitoring Configuration

Firebase Crashlytics

Firebase Analytics

๐Ÿงช Testing Configuration

Next Steps


Best Practices:
  • โœ… Gunakan environment files untuk configuration
  • โœ… Jangan commit sensitive data
  • โœ… Gunakan feature flags untuk gradual rollout
  • โœ… Setup proper monitoring di production
  • โœ… Test di semua environments sebelum release