/ / Ember CLI: Build für die Bereitstellung - ember.js, ember-cli

Ember CLI: Build für die Inszenierung - ember.js, ember-cli

Ich würde gerne eine Build einer Ember CLI App erstellenfür eine Staging-Umgebung. Für das Staging möchte ich genau dasselbe tun wie die Produktion (Minification, Fingerprinting, Tests ausschließen, etc.), aber ich möchte die Umgebungsvariablen für die Entwicklung aufgreifen environment.js Datei für die Bereitstellung:

if (environment === "development" || environment === "staging") {
ENV.someApiKey = "test-api-key";
}

if (environment === "production") {
ENV.someApiKey = "production-api-key";
}

Wenn ich renne ember build --environment=staging, sind die richtigen Staging-Umgebungsvariablengesetzt, aber all die anderen Build-Prozesse, die für die Produktion laufen würden, tun dies nicht. Gibt es eine Möglichkeit, Ember CLI zu sagen, dass es für die Produktion gebaut wird, aber Umgebungsvariablen für die Entwicklung aufnimmt?

Antworten:

1 für die Antwort № 1

Ember setzt eine Flagge, abhängig davon, ob nur die Produktion in /ember-cli/lib/brocoli/ember-app.js angegeben ist:

var isProduction = this.env === "production";

und dann verwendet es die produktionsspezifischen Einstellungen.

Wenn Sie also eine Staging-Build erstellen möchten, verwenden Sie aProzess, um die Datei environment.js vor dem Erstellen der Build-Datei zu ändern. Wenn die Erstellung abgeschlossen ist, wird die Datei wieder auf normal zurückgesetzt. Wir sollten diesen Prozess wahrscheinlich in Zukunft flexibler gestalten.