Как использовать несколько профилей requirements.txt с Django App на Heroku?

Я пытаюсь развернуть веб-приложение Django на Heroku и использую такой макет для требований:

requirements/
├── base.txt
├── local.txt
├── production.txt
├── staging.txt
└── test.txt
requirements.txt

requirements.txt

# This file is expected by Heroku.

-r requirements/staging.txt  # I have to change this for each env

Я думал, что в зависимости от переменной окружения Heroku будет выбирать подходящий txt-файл. Дело в том, что после нескольких попыток и поиска документации я понял, что Heroku выбирает только файл requirements.txt и никакой другой файл. Так что я могу толкать в heroku только для staging и если мне нужно толкать для другого окружения, я должен изменить requirements.txt в репо или завести альтернативную ветку только для этого файла.

Я думаю использовать Heroku по крайней мере для нескольких окружений, поэтому я хотел бы иметь возможность управлять более чем одним окружением Heroku. Поэтому я занялся исследованием и узнал, что можно сделать setup.py, исключающий файл requirements.txt и управляющий этим, но, читая документацию, я так и не понял, как сделать так, чтобы setup.py выбрал хороший файл требований из нескольких, которые у меня есть.

Наверное, кто-то хотел это сделать, хотя я видел, что документация setup.py не рекомендует такой способ выполнения процедуры.

Я полагаю, что другим способом сделать это было бы отказаться от всего, что касается файлов требований (хотя они мне нравятся) и сделать все это через setup.py, с которым я не знаком, поэтому я спрашиваю здесь решения, которые я могу использовать для установки моих зависимостей в Heroku и других окружениях, сохраняя различные зависимости разделенными в каждом файле окружения.

Заранее спасибо

Вернуться на верх