Bereitstellen von Python auf Elastic Beanstalk mit verschiedenen Konfigurationen für verschiedene Umgebungen

9

AWS erklärt nicht ordnungsgemäß, wie unterschiedliche Implementierungsumgebungen auf dem Beanstalk in Bezug auf verschiedene Umgebungen verwaltet werden und wie diese Einstellungen in Ihrem Quellcode-Repository gespeichert werden.

Sie erklären deutlich, wie Sie Ihre python.config in .expextensions wie folgt einrichten:

%Vor%

Wenn Sie jedoch mehrere Umgebungen wie staging und prod haben möchten, müssen Sie Ihre Konfigurationsdateien austauschen. Was noch schlimmer ist, wie möchten Sie dies in Ihrer Quellcodeverwaltung für gemeinsame Umgebungen wie Staging beibehalten? Es scheint, dass Sie jedes Mal, wenn Sie drücken, diese Konfigurationseinstellungen benötigen.

Ich habe auch festgestellt, dass AWS keine nicht geänderten Änderungen bereitstellen kann, was bedeutet, dass das Schreiben eines Skripts zur Handhabung meiner Bereitstellungen ebenfalls keine Option ist. Was fehlt mir hier?

    
John Clarke Mills 11.09.2012, 01:38
quelle

2 Antworten

0

Ich habe es nicht versucht, aber es scheint, dass Sie DJANGO_SETTINGS_MODULE nicht über die Konfigurationsdatei, sondern über die eigenen Parameter des Containers übergeben können. Sie können es über Umgebungsdetails aktualisieren - & gt; Konfiguration bearbeiten - & gt; Containerabschnitt der Beanstalk-Konsole. Nur als Idee:

  • Erstellen Sie mehrere Umgebungen "Produktion", "Bereitstellung", usw.
  • Konfigurieren Sie jede mit relevantem DJANGO_SETTINGS_MODULE value
  • Entferne den DJANGO_SETTINGS_MODULE-Wert von .ebextensions
  • Bereitstellen einer Anwendung in einer vordefinierten Umgebung
Michael Korbakov 21.01.2013 01:31
quelle
0

Ich habe in der Vergangenheit etwas darüber gegraben und es scheint so, als würden Sie gerne eb branch verwenden, um die verschiedenen Umgebungen zu konfigurieren und dann die Option innerhalb der Optionsettings lokal auf der Eb-Client-Ebene zu konfigurieren (wenn Sie die Verzweigung starten) und so).

Wenn Sie darüber nachdenken, sollte die Umgebungskonfiguration (d. h. DJANGO_SETTINGS_MODULE ) getrennt vom Anwendungscode verwaltet werden, also nehme ich an, dass Sie die Ebextensions nicht verwenden und konfigurieren, wenn ich zu einer neuen Umgebung navigiere. Wenn ich zu einem vorhandenen wechsle, muss sichergestellt werden, dass der Wert für das env, in dem ich spielen möchte, richtig eingestellt ist.

    
alph486 31.10.2014 21:25
quelle