AWS Elastic Beanstalk: задание Cron не собирает переменные средыPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 AWS Elastic Beanstalk: задание Cron не собирает переменные среды

Сообщение Anonymous »


Я развертываю приложение FastAPI с помощью ElasticBeanstalk. Часть того, что я хотел бы сделать, — это иметь сценарий для сбора некоторых данных и публикации их в базе данных Postgres RDS с использованием задания cron. После некоторых поисков мне удалось заставить работу cron работать, но не полностью.

Скрипт для публикации данных использует переменные среды RDS_USERNAME.... У меня есть следующие файлы конфигурации:

option_settings: aws:elasticbeanstalk:приложение:среда: PYTHONPATH: "/var/app/current:$PYTHONPATH" aws:elasticbeanstalk:контейнер:python: WSGIPath: «main:app» команды: Setvars: команда: среда /opt/elasticbeanstalk/bin/get-config | jq -r 'to_entries | .[] | "export \(.key)=\"\(.value)\""' > /etc/profile.d/local.sh пакеты: ням: джк: [] контейнерные_команды: 01_инитдб: команда: «source /var/app/venv/*/bin/activate && python3 init_db.py» Leader_only: правда 02_some_cron_job: команда: «cat .ebextensions/cron_job.txt > /etc/cron.d/cron_job && chmod 644 /etc/cron.d/cron_job» Leader_only: правда У меня есть команда, которая считывает переменные среды AWS и устанавливает их для сеанса.

Как я уже сказал, cron запущен. Это ошибка, которую я получаю из /var/log/cron:

CMDOUT (KeyError: 'RDS_USERNAME')

Файл Python, который подключается к базе данных:

DATABASE_URL = \ 'postgresql://{имя пользователя}:{пароль}@{хост}:{порт}/{база данных}'.format( имя пользователя = os.environ['RDS_USERNAME'], пароль=os.environ['RDS_PASSWORD'], хост=os.environ['RDS_HOSTNAME'], порт = os.environ['RDS_PORT'], база данных = os.environ['RDS_DB_NAME'], ) А это файл cron_job.txt:

* * * * * ec2-user /var/app/venv/*/bin/python3 /var/app/current/cron.py
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Как настроить работу laravel cron на aws elastic beanstalk
    Anonymous » » в форуме Php
    0 Ответы
    79 Просмотры
    Последнее сообщение Anonymous
  • Параметр Django ALLOWED_HOSTS для экземпляра Elastic Beanstalk за Elastic Load Balancer
    Anonymous » » в форуме Python
    0 Ответы
    118 Просмотры
    Последнее сообщение Anonymous
  • Параметр Django ALLOWED_HOSTS для экземпляра Elastic Beanstalk за Elastic Load Balancer
    Anonymous » » в форуме Python
    0 Ответы
    84 Просмотры
    Последнее сообщение Anonymous
  • AWS Elastic Beanstalk сгенерировал домен с http на https [закрыто]
    Гость » » в форуме Apache
    0 Ответы
    101 Просмотры
    Последнее сообщение Гость
  • HTTPS не работает на платформе Java с одним экземпляром AWS Elastic BeanStalk
    Anonymous » » в форуме JAVA
    0 Ответы
    17 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»