PostgresでEB上にDjangoをデプロイするときの奇妙な問題。Elastic Beanstalkでデータベース設定の変更が見られない - Django
コンテキスト:postgresql 9.5を使用してElastic BeanstalkにDjangoアプリケーションをデプロイします。私は2つの別々のWindows 10マシンで同じ結果を試しました。 Python 3.5とDjango 1.10.4です。
問題:RDS環境変数を使用してデータベースに接続すると、私は誤ってsettings.pyの "RDS_USERNAME"ではなく "RDS_USER"を探します。これは当然、 "RDS_USER"のKeyErrorをスローします。
しかし、これを適切な値に変更して変更をコミットして再デプロイすると、ebは変更を受け取りません。
移行を実行しようとすると、「RDS_USER」と同じKeyErrorが表示されます。
postgresのsettings.pyを変更し、いくつかのコマンド(venv、migrations)/ packages(git、postgresql95-devel)を追加した後、これを複製できます。
誰もこれを経験していますか?
新しいインスタンスを作成し、最初に適切な変数名を使用してデプロイすると正常に動作します。
settings.py:
if 'RDS_DB_NAME' in os.environ:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql',
'NAME': os.environ['RDS_DB_NAME'],
'USER': os.environ['RDS_USERNAME'],
'PASSWORD' : os.environ['RDS_PASSWORD'],
'HOST': os.environ['RDS_HOSTNAME'],
'PORT':os.environ['RDS_PORT']
}
}
else:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql',
'NAME': 'name',
'USER':'user',
'PASSWORD':'password',
'HOST':'localhost',
'PORT':''
}
}
コンソールまたはawscliを使用して展開していますか? – nmusleh