У меня есть модуль Python, который генерирует прогнозы для конкретной c области нашего бизнеса. Модуль содержит не только мои прогнозы, но также и другие, которые используются в качестве входных данных для моих прогнозов или используют мой прогноз в качестве входных данных.
Мы вносим много изменений со временем в код в хранилище. Я хотел бы иметь возможность запускать код с какой-то даты в прошлом все время. В идеале я мог бы назвать версии или выпуски и специально запустить этот файл. На данный момент, единственный способ, которым я мог себе представить, это сделать несколько операторов if в моем коде. Это не может быть лучшей практикой, поэтому я спрашиваю здесь.
Я понимаю, что мне также нужно будет хранить ввод данных на дату запуска - я могу справиться с этим сам. Я специально спрашиваю о том, как хранить версии базы кода, чтобы их можно было легко запускать - в идеале параллельно в кластере EC2.
Структура репо:
parent-folder
- Dockerfile
- forecasting-code
- requirements.txt
- forecast_runner.py
- config.py
- module
- forecasts
- volume_forecast.py
- conversion_forecast.py
- profitability_forecast.py
- models
- price_elasticity.py
- scripts
- load_data.py
- data_inputs
- sql
- csv
- pkl
- auth_files
- google_sheets
- db