Недавно мы начали работать над преобразованием установленного проекта Django из стека докеров в Google App Engine.По дороге Google Cloud Build оказался очень кстати.Cloudbuild позаботится о нескольких элементах при подготовке к развертыванию, в частности о интерфейсной части приложения.
Теперь, когда речь идет о специфических задачах для Python и Django, очевидным выбором является также использование cloudbuild.,Поэтому мы попытались следовать шаблону, который Google объясняет с их официальным облачным компоновщиком NPM ( здесь )
Проблема, с которой мы сталкиваемся, заключается в следующем.При сборке с официальным образом Python шаги сборки настраиваются следующим образом:
steps:
[...]
8 - name: 'python:3.7'
9 entrypoint: python3
10 args: ['-m', 'pip', 'install', '-r', 'requirements.txt']
11 - name: 'python:3.7'
12 entrypoint: python3
13 args: ['./manage.py', 'collectstatic', '--noinput']
Это прекрасно работает для первого шага, чтобы установить все требования.GAE делает это и при развертывании приложения, но здесь необходимо collectstatic из репозитория и установленных приложений django, прежде чем загружать их.
В то время как первый шаг завершается успешно с указанным выше, 2-й шаг завершается неудачно со следующей ошибкой:
File "./manage.py", line 14, in <module>
) from exc
ImportError: Couldn't import Django. Are you sure it's installed and
available on your PYTHONPATH environment variable? Did you forget to
activate a virtual environment?
Есть ли лучший способ выхода из этой ситуации?