Почему я не могу "git push heroku master"?

В настоящее время я пытаюсь развернуть свое приложение django на heroku и получаю ошибку. В моем приложении я обслуживаю статические и медиа файлы из AWS S3 bucket, и локально все работает нормально, но когда я пытаюсь развернуть его на heroku, я получаю эту ошибку:

Вот мои настройки.py:

PRODUCTION = True

if PRODUCTION:
    # AWS S3 SETTINGS
    AWS_ACCESS_KEY_ID = os.environ.get('AWS_ACCESS_KEY_ID')
    AWS_SECRET_ACCESS_KEY = os.environ.get('AWS_SECRET_ACCESS_KEY')
    AWS_STORAGE_BUCKET_NAME = os.environ.get('AWS_STORAGE_BUCKET_NAME')
    AWS_S3_CUSTOM_DOMAIN = '%s.s3.amazonaws.com' % AWS_STORAGE_BUCKET_NAME
    AWS_DEFAULT_ACL = 'public-read'

    AWS_S3_OBJECT_PARAMETERS = {
        'CacheControl': 'max-age=86400',
    }
    AWS_HEADERS = {
        'Access-Control-Allow-Origin': '*',
    }
    AWS_QUERYSTRING_AUTH = False
    AWS_LOCATION = 'static'

    STATIC_ROOT = os.path.join(BASE_DIR, 'staticfiles')
    STATICFILES_DIRS = [
        os.path.join(BASE_DIR, 'static'),
    ]
    STATIC_URL = 'https://%s/%s/' % (AWS_S3_CUSTOM_DOMAIN, AWS_LOCATION)
    STATICFILES_STORAGE = 'storages.backends.s3boto3.S3Boto3Storage'

    DEFAULT_FILE_STORAGE = 'joaoLina.storage_backend.MediaStorage'
    MEDIA_URL = 'https://%s/%s/' % (AWS_S3_CUSTOM_DOMAIN, 'media')
else:
    STATIC_ROOT = os.path.join(BASE_DIR, 'staticfiles')
    STATIC_URL = '/static/'
    STATICFILES_DIRS = [
        os.path.join(BASE_DIR, 'static'),
    ]
    MEDIA_URL = '/media/'
    MEDIA_ROOT = os.path.join(BASE_DIR, 'media')

Я читал, что иногда эта проблема возникает из-за того, что STATIC_ROOT не установлен, но это не тот случай. И я знаю, что могу просто сделать:

$ heroku config:set DISABLE_COLLECTSTATIC=1

но таким образом проблема все равно будет существовать.

Я сделал локально:

python3 manage.py collectstatic
python3 manage.py test

и все прошло просто отлично с 0 проблемами.

Так что я действительно не знаю, где проблема, если кто-то может помочь, я буду благодарен.

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