...
Il est également possible pour chaque environnement de jouer sur les paramètres de build Angular, comme l'utilisation du compilateur AOT ou encore la taille max que ne dois doit pas dépasser le bundle.
Builder le client Angular en précisant l'environnement
...
Où [environment]
correspond au nom du bloc défini dans le fichier angular.json
(et non le suffixe dans le nom du fichier fichier environment.ts
)
Avertissement | ||
---|---|---|
| ||
Si par la suite vous utiliser utilisez la commande Sans quoi la commande sync va relancer le build Angular en reprenant le fichier |
Environnements Firebase
Il est également possible d'utiliser plusieurs fichiers de configuration Firebase en fonction de l'environnement. Cela peut particulièrement être utile lorsque que l'on veut effectuer des tests de notification sans avertir tous les utilisateurs qui utilisent l'application de production.
Dans src/environments/firebase/
sous chaque dossier propre à la plateforme, vous pouvez ajouter autant de fichiers que vous souhaitez selon vos environnements.
Info |
---|
Pour exemple à l'Université de Lorraine, l'app de dev est branchée sur le firebase de dev et les app preprod et prod sont branchées sur la production. |
Conf PWA
Pour la PWA, il convient de mettre à jour le chemin vers le fichier de configuration correspondant dans le fichier environment.ts
Par exemple, dans le fichier environment.developments.ts
, on aura :
Bloc de code |
---|
import firebasePwaEnvironment from './firebase/web/firebase-environment.pwa-development.json'; |
Conf applications mobiles
Pour les applications natives, il conviendra de copier le bon fichier dans l'arborescence du projet en renommant suivant le nom attendu :
ios/App/App/GoogleService-Info.plist
android/app/google-services.json
Cette étape peut être simplifiée par l'utilisation de l'outil Trapèze.
Environnements Trapeze
Trapeze est un outil qui permet de modifier de l'information à chaud directement dans les fichiers des applications natives, sans avoir à rebuilder les dossiers avec ionic cap sync
Pour plus d'informations sur trapeze : https://trapeze.dev/
Dans le projet Multi, trapeze est principalement utilisé pour mettre à jour le numéro de version de l'application et pour copier le bon fichier Firebase suivant l'environnement.
Vous pouvez alors partir du fichier trapeze-config.ts.dist pour créer autant de conf souhaitées selon vos environnements
Vous pourrez ensuite exécuter la conf trapeze en fonction de l'environnement en précisant le fichier à utiliser :
Bloc de code |
---|
VERSION_NAME="1.1.0" BUILD_NUMBER="7" npx trapeze run trapeze-config.[environment].yml |