Commit Graph

312 Commits

Author SHA1 Message Date
Andrew Chen Wang
2ecbf7ac34
Merge branch 'master' into async 2020-04-06 23:02:36 -04:00
Andrew Chen Wang
efbb04da91
Update so apps load first when using asgi.py 2020-03-27 21:32:17 -04:00
Andrew-Chen-Wang
7cd390854b Fixed linter checks 2020-03-24 21:42:28 -04:00
Andrew-Chen-Wang
e6b800d985 Added static files URL for runserver-level/best performance
* The reason there was a degraded performance was because we're using Gunicorn itself as a local tester. So we needed to add the staticfiles urls
2020-03-24 20:59:28 -04:00
Andrew-Chen-Wang
125ffec243 Changed starting commands for running server
* Performance is very low
2020-03-24 20:51:43 -04:00
Andrew-Chen-Wang
910ed86d11 Fixed linter check for #2506 2020-03-24 16:12:47 -04:00
Andrew-Chen-Wang
aee2de347b Add uvicorn and web sockets for Django 3
* Add use_async option to cookiecutter.json
* Add websocket configuration
2020-03-24 15:40:14 -04:00
Bruno Alla
56d5e271aa Remove isort exception in production config & fix issue 2020-03-23 21:46:14 +00:00
Bruno Alla
c4b1666707 Move storages classes into their own module 2020-03-23 21:46:14 +00:00
Bruno Alla
ea5db6c4f4
Django 3.0 support (#2469)
* Bump Django version to 3.0.x to see what breaks

* Update places where Django 2.2 is mentioned to 3.0

* Update to latest Django 3.0 version

* Bump version in setup.py
2020-03-23 21:41:51 +00:00
Bruno Alla
5498716c74 Fix isort 2020-03-17 15:35:42 +00:00
Bruno Alla
d2988040d5 Merge branch 'master' into pathlib-migration-updated 2020-03-17 14:16:35 +00:00
Bruno Alla
e97573dfda
Merge pull request #2435 from Andrew-Chen-Wang/master
Add all supported Anymail Providers
2020-03-16 19:59:25 +00:00
Bruno Alla
ca7fcb8f62
Merge pull request #2442 from jameswilliams1/fix-django-compressor-settings
Fix broken Django Compressor setup and enable static files minification
2020-03-16 19:53:02 +00:00
Bruno Alla
530868d072 Move "rest_framework" in THIRD_PARTY_APPS 2020-03-15 19:20:44 +00:00
Bruno Alla
729cd2adab Merge branch 'master' into drf-auth-token 2020-03-15 19:19:36 +00:00
Andrew-Chen-Wang
5e1d1dd1c3 Fixed tests for mail providers 2020-03-14 15:09:05 -04:00
Andrew-Chen-Wang
3978890502 Adjusted readability
* Changed Vanilla/Plain Django-Anymail to Other SMTP
* Made Mailgun default again
* config/production.py adjusted if conditions according to @browniebroke
2020-03-14 13:43:37 -04:00
Andrew-Chen-Wang
9cf72849e6 Merged parent repo and configured refurbished tests 2020-03-14 13:29:08 -04:00
Bruno Alla
fab6b8724a Test isort flake8-isort & fix issues
fixes #2123
2020-03-03 20:04:31 +00:00
jeromecaisip
bfe463fa7c
Update base.py 2020-03-02 19:27:07 +01:00
jeromecaisip
fa6ca7b1c8
Add rest_framework.authtoken on installed apps.
Add rest_framework.authtoken on installed apps when the option to use DRF is selected,  because the endpoint
'/auth-token/" depends on the said app.
2020-03-02 19:16:33 +01:00
James Williams
89f85f1255
- configure compressor when not using s3
- update django start script to compress if using whitenoise and compress enabled

- add to contributors.rst
2020-02-28 15:59:14 +00:00
Andrew-Chen-Wang
ac884f3f75 Updated mail service docs
* Trying to appease the Black-linter god...
2020-02-06 20:18:49 -05:00
Andrew-Chen-Wang
0621929cd2 Removed None option for mail service
* This is necessary in order to be compatible with Django-allauth
2020-02-06 18:41:30 -05:00
Andrew-Chen-Wang
c8eb5462eb Configurations and Packages added
* Production settings updated for all
* Added env vars from production settings
* Added packages requirements.txt
2020-02-06 16:58:15 -05:00
Bruno Alla
2fb40f3f8c
Option for DRF with extra fixes (#2410)
Option for DRF with extra fixes
2020-01-28 10:27:26 +00:00
Dani Hodovic
54a38bfb43 Allow rendering custom widgets from root templates dir (#2356)
* Allow rendering custom widgets from root templates dir

Rendering custom widgets from the projects root template directory
doesn't work out of the box.

See: https://stackoverflow.com/questions/45844032/django-templatedoesnotexist-in-case-of-a-custom-widget/46208414#46-208414

This changes the setting to use the same template finding logic that the
TEMPLATES setting uses.

* update APP_DIRS=True

* fixup! update APP_DIRS=True
2020-01-28 09:55:09 +00:00
Bruno Alla
fa9a8cfe7b Fix code formatting 2020-01-23 18:10:30 +00:00
Bruno Alla
949d8b684c Merge branch 'master' into drf-option-with-tests
# Conflicts:
#	hooks/post_gen_project.py
2020-01-23 14:41:42 +00:00
Bo
1609d4410e
Fix loaders option in test environment as well 2020-01-14 21:19:44 -06:00
Bo
15fc92ace1
Assuming DTL to be the last instead of first template engine 2020-01-14 08:50:38 -06:00
Daniel Hillier
0872982245 Fix failing mypy tests in users app with django-stubs (#2395)
Adds django-stubs as a requirement for local virtualenv. This is
required now that the User Model type is being resolved properly.
2020-01-13 01:57:20 +11:00
Dani Hodovic
1dd8608142
Add django.middleware.common.BrokenLinkEmailsMiddleware
https://docs.djangoproject.com/en/2.2/howto/error-reporting/#errors

> If those conditions are met, Django will email the users listed in the
> MANAGERS setting whenever your code raises a 404 and the request has a
> referer. It doesn’t bother to email for 404s that don’t have a referer –
> those are usually just people typing in broken URLs or broken Web bots.
> It also ignores 404s when the referer is equal to the requested URL,
> since this behavior is from broken Web bots too.
2019-12-10 12:46:52 +01:00
Yuchen Xie
0374f11d09 Using WhiteNoise in development 2019-11-07 21:03:33 +08:00
Yuchen Xie
400fcc4030 Prevent collectfast from guessing a wrong strategy
If `COLLECTFAST_STRATEGY` is not provided in `settings`, `collectfast` has to guess a "strategy". For the case with AWS, it guesses `BotoStrategy` in stead of `S3Boto3Storage`, which is a wrong decision as we `pip install django-storages[boto3]` (`boto3` in favor of `boto`).

Setting `COLLECTFAST_STRATEGY` is also encouraged as `collectfast` is not going to guess the strategy in the future.

Ref:
* f37dd1faa2/collectfast/management/commands/collectstatic.py (L33)
* f37dd1faa2/collectfast/strategies/base.py (L170)
2019-10-22 10:42:32 +08:00
Caio Ariede
ff8a9de24e Updates 2019-10-04 09:32:25 -03:00
Caio Ariede
39e745dddf Fix #2250 -- No staticfile storage with GCP without Whitenoise 2019-10-02 10:10:32 -03:00
Jerome Caisip
548417612f Additonal option to setup DRF. 2019-09-17 23:24:09 +08:00
Dani Hodovic
69566f5456
Add context processor for settings variables
This allows for usage of settings variables in templates, e.g

```
{% if settings.USE_ANALYTICS %}
<!-- Google Tag Manager (noscript) -->
<noscript><iframe src="https://www.googletagmanager.com/ns.html?id={{ settings.GOOGLE_TAG_MANAGER_ID }}" style="display:none;visibility:hidden"></iframe></noscript>
<!-- End Google Tag Manager (noscript) -->
{% endif %}
```
2019-09-05 13:24:47 +02:00
Bruno Alla
baab918874
Remove AWS_PRELOAD_METADATA (#2204)
Remove AWS_PRELOAD_METADATA
2019-09-04 20:34:23 +02:00
Bruno Alla
8c131fe603
Merge pull request #2206 from danihodovic/remove-duplicate-debug
Remove redundant DEBUG = False in test.py
2019-09-04 20:30:10 +02:00
Dani Hodovic
180ab9bbb1
Remove redundant DEBUG = False in test.py
This is already set to False by default in base.py
2019-08-26 16:25:36 +02:00
Dani Hodovic
d4d8f1b5be
Remove AWS_PRELOAD_METADATA
https://github.com/antonagestam/collectfast/pull/140
2019-08-25 14:08:28 +02:00
Dani Hodovic
7ad8791937
Remove EMAIL_HOST, EMAIL_PORT for console backend
django.core.mail.backends.console.EmailBackend is an in memory backend
so EMAIL_HOST and EMAIL_PORT does not need to be specified in this case.
2019-08-21 17:31:18 +02:00
Jules Chéron
ec80a05671
Handle path with pathlib
- Update config/settings/base.py
- Update merge_production_dotenvs_in_dotenv.py
- Update wsgi.py
- Update manage.py
2019-07-10 20:35:38 +02:00
Bruno Alla
6ca6d50ed8
Add EMAIL_TIMEOUT (#2153)
Add EMAIL_TIMEOUT
2019-07-09 12:08:15 +01:00
Bruno Alla
34c045ef60
Remove EMAIL_HOST & EMAIL_PORT with locmem backend (#2152)
Remove EMAIL_HOST & EMAIL_PORT with locmem backend
2019-07-09 11:24:48 +01:00
Dani Hodovic
35b201a2b3
Add EMAIL_TIMEOUT
Adds EMAIL_TIMEOUT to prevent a blocking send on the tcp socket from
halting the thread handling the request.
2019-07-09 09:11:50 +08:00
Dani Hodovic
1469739109
Remove EMAIL_HOST & EMAIL_PORT with locmem backend
These settings should not be required since Django never connects to an
external component when sending email. Instead it's stored in memory.

https://docs.djangoproject.com/en/2.2/topics/email/#in-memory-backend
2019-07-09 09:07:38 +08:00
Dani Hodovic
a25c406975
Remove gunicorn from installed apps
I can't find the requirement of adding it to INSTALLED_APPS on the
Django or the Gunicorn docs.

https://docs.gunicorn.org/en/latest/run.html?highlight=django#django
https://docs.djangoproject.com/en/2.2/howto/deployment/wsgi/gunicorn/
2019-07-09 09:00:31 +08:00
Dani Hodovic
87a8acbae2
Remove redundant template debug setting
> 'debug': a boolean that turns on/off template debug mode. If it is
> True, the fancy error page will display a detailed report for any
> exception raised during template rendering. This report contains the
> relevant snippet of the template with the appropriate line highlighted.

> It defaults to the value of the DEBUG setting.

https://docs.djangoproject.com/en/2.2/topics/templates/#module-django.template.backends.django

I could be wrong about this, but it seems like setting the template
DEBUG setting is redundant, since it should follow whatever the DEBUG
variable is set to.
2019-06-20 23:41:31 +08:00
Keyvan Mosharraf
e9e79428d3 Better way to include django_celery_beat in INSTALLED_APPS 2019-05-31 03:45:59 -07:00
Keyvan Mosharraf
aee9f3ecfa Install django_celery_beat in the proper way 2019-05-30 17:00:07 -07:00
Keyvan Mosharraf
631bddc811 Set celery beat scheduler using settings + install django_celery_beat if use_celery 2019-05-30 16:42:57 -07:00
Bruno Alla
7e47e9c2aa
Mailgun api url (#2014)
Mailgun api url
2019-05-28 11:27:54 +01:00
Tano Abeleyra
9a3a796a89 Use GCP acronym for Google Cloud Platform 2019-05-27 17:39:45 -03:00
Bruno Alla
b56071f516 Fix comments and empty lines in prod settings 2019-05-27 16:33:07 +01:00
Bruno Alla
881a6fd681 Change GCP settings to f-strings 2019-05-27 15:58:56 +01:00
Bruno Alla
b4cea81f26 Fix some comment and empty lines in settings 2019-05-27 15:55:41 +01:00
Bruno Alla
92e4bdf171
Make cloud_provider optional (#2067)
Make cloud_provider optional
2019-05-27 15:50:18 +01:00
Bruno Alla
c96c932111 Correct name for Celery worker-related settings - fix #2080
The settings which are normally prefixed `CELERYD_` are for worker-related config, but since we instantiate the Celery app with a namespace, the prefix for these config should actually be `CELERY_`.
2019-05-27 14:46:07 +01:00
Demetris Stavrou
a636d454f6
Update {{cookiecutter.project_slug}}/config/settings/production.py
Co-Authored-By: Bruno Alla <browniebroke@users.noreply.github.com>
2019-05-22 09:46:20 +03:00
Demetris Stavrou
38b2c2dfcd Errors are now sent to Sentry 2019-05-21 22:04:03 +03:00
Tano Abeleyra
de7be3652a Make cloud_provider optional
Some projects may not need AWS or GCS
2019-05-19 12:45:28 -03:00
shireenrao
8c69a1203f
Update {{cookiecutter.project_slug}}/config/settings/production.py
Co-Authored-By: Bruno Alla <browniebroke@users.noreply.github.com>
2019-05-19 08:27:28 -04:00
shireenrao
adcc5d0b28
Update {{cookiecutter.project_slug}}/config/settings/production.py
Co-Authored-By: Bruno Alla <browniebroke@users.noreply.github.com>
2019-05-19 08:27:14 -04:00
shireenrao
570930ef13
If using whitenoise disable AWS and GCE for static
If using whitenoise disable AWS and GCE for static setting.
2019-05-18 22:49:10 -04:00
Bruno Alla
d90406c3c3 Make the static storage use public ACL 2019-05-18 14:06:05 +01:00
Bruno Alla
b039e24130
Refactor Celery integration according to current best practices (#2016)
Refactor Celery integration according to current best practices
2019-05-17 21:38:00 +01:00
Tano Abeleyra
63a184f072 Set LOCALE_PATHS 2019-05-17 12:34:32 -03:00
Tano Abeleyra
ecc5a73aff
Add LocaleMiddleware 2019-05-17 11:57:13 -03:00
Bruno Alla
4a1894d5d6
Logging improvements (#2040)
Logging improvements
2019-05-16 13:25:38 +01:00
Tano Abeleyra
d00517252c UsersAppConfig improvements
+ Rename to UsersConfig to follow Django naming convention
+ Translate verbose_name
2019-05-15 20:10:55 -03:00
Bruno Alla
0fef828375 Create a logging config in base settings & add a root logger to existing ones 2019-05-15 17:20:14 +01:00
Bruno Alla
dc2cfc9904 Merge branch 'master' into upgrade/django-2.1 2019-05-08 12:23:23 +01:00
Craig Margieson
5ab5285e5f Edit STATIC and MEDIA urls for GCE production. 2019-05-06 15:13:01 +09:30
Bruno Alla
39df72669e Merge branch 'master' into upgrade/django-2.1
# Conflicts:
#	README.rst
2019-04-17 08:33:54 +01:00
anuj
2b141e6464 Add support for GCE static 2019-04-07 00:54:46 +05:30
anuj
b5e030b784 Corrected quotes, added parameter in tests 2019-04-07 00:34:22 +05:30
anuj
cad0b77658 Added support for GCE Media storage 2019-04-05 12:42:39 +05:30
Bruno Alla
57dd157c4a Remove deprecated password hasher 2019-04-02 19:37:12 +01:00
Bruno Alla
81851ffb6d Merge branch 'master' into mailgun_api_url 2019-04-02 15:45:37 +01:00
Bruno Alla
895298c28f Refactor Celery integration according to current best practices
- Change celery app to not be a Django app, more like a WSGI app
- Define a Celery task in the Django users app
- Write a test to execute the task
- Update scripts to use the new app to start workers
- Update documentation

Fix #865
2019-04-02 15:40:32 +01:00
Jelmert
d1bf4f4815 Added AWS_S3_REGION_NAME to production settings 2019-04-02 15:43:48 +02:00
Jelmert
17e7d603cf Added the MAILGUN_API_URL variable to the ANYMAIL configuration so we can easily switch to the EU region for mailgun 2019-04-02 15:08:51 +02:00
Bruno Alla
4e70a4b55a
Test all possible template combinations (#1993)
## Description

Fixes #591.

## Rationale

We are currently not testing many combinations, we run Flake8 on the generated project with default options, but that rarely catch any issues.

## Use case(s) / visualization(s)

Catch problems with invalid combinations, for instance, it fails due to Whitenoise breaking flake8 with `django-compressor` because `STATIC_URL` was undefined here:

b91c70d755/%7B%7Bcookiecutter.project_slug%7D%7D/config/settings/production.py (L185)
2019-04-01 08:47:46 +01:00
Guilherme Fabrizio
7d1e90bdf5 Migrate to unified Sentry SDK (#1820)
The raven library is deprecated. Replace it by the new sentry-sdk library:

https://docs.sentry.io/error-reporting/quickstart/?platform=python

fixes #1818
2019-03-20 10:04:44 +00:00
Bruno Alla
6e9f87fced Set AWS_DEFAULT_ACL to None as per django-storages documentation
fixes #1885
2019-03-19 19:57:31 +00:00
Bruno Alla
68f7268770
Run Black on Travis (#1957)
* Create a test matrix on Travis CI to help testing multiple options

* Change test_docker.sh to fail if any command in it fails

* Run black on the CI with --check option

* Fix formatting of project files using black

* Install black in the docker container

* Exclude migrations in black checks

* Fix Black formatting violations

* Run black on the whole generated project & fix issues
2019-03-18 17:49:43 +00:00
keithjeb
aea5c807f6 Change eager celery setting in local Docker (#1945)
[//]: # (Thank you for helping us out: your efforts mean great deal to the project and the community as a whole!)

[//]: # (Before you proceed:)

[//]: # (1. Make sure to add yourself to `CONTRIBUTORS.rst` through this PR provided you're contributing here for the first time)
[//]: # (2. Don't forget to update the `docs/` presuming others would benefit from a concise description of whatever that you're proposing)


## Description

[//]: # (What's it you're proposing?)

Added a note around CELERY_TASK_ALWAYS_EAGER = True in docker config for local development. This causes tasks to be executed on the 'main' thread rather than by the workers. I understand why that might be desirable, but thought it worth calling out incase (like me) it makes people think something is broken.


## Rationale

[//]: # (Why does the project need that?)

Ease of use/troubleshooting


## Use case(s) / visualization(s)

[//]: # ("Better to see something once than to hear about it a thousand times.")
2019-03-02 13:51:30 +00:00
Carl Johnson
1753812136 Settings: Use security settings in dev as well as prod 2018-11-12 15:04:03 -05:00
Chris Pappalardo
ea53635a0a fixed production bugs in caddyfile and middleware 2018-09-15 12:45:10 -07:00
Umair Ashraf
bf6c7e8e9c fixed s3 http url for static and media storage 2018-09-12 13:45:30 -04:00
Wan Liuyang
de5504f414
Rename custom S3Boto3Storage subclasses (#1784)
Closes #1788 

This PR preps for the upcoming `django-storages` 2.X:

1. ~~Explicitly set default ACL to None which was [incorrectly set](3f6ec74942/storages/backends/s3boto3.py (L195)) to `public-read` by `django-storages`~~

2. Renamed `StaticRootS3BotoStorage` to `StaticRootS3Boto3Storage` to avoid confusion. This is to prep for the upcoming `S3Boto` class deprecation.

See also:
https://django-storages.readthedocs.io/en/latest/backends/amazon-S3.html#settings
https://github.com/jschneier/django-storages/blob/master/CHANGELOG.rst
2018-09-09 19:59:04 +08:00
Irfan
27ae9c36e4 Fix #1771: Use full-fledge S3 Storage class in production settings
sorl-thumbnail serialized and deserializes the storage class and during this
process location parameter is lost if factory is used. Using a full-fledge
storage class fixes this issue.

See: https://stackoverflow.com/a/18046120/104731
2018-09-01 11:49:01 +05:00
Nikita P. Shupeyko
ac61117b59 Prevent AWS S3 bucket from being created automatically
Rationale: most of the time you want to create a bucket yourself in order to assign/tweak polices etc.
2018-06-28 16:35:35 +03:00
Nikita Shupeyko
07060eaecc
Extend & enhance Celery configuration (#1679)
* CELERY_TASK_TIME_LIMIT

* CELERY_TASK_SOFT_TIME_LIMIT

* CELERY_ALWAYS_EAGER -> CELERY_TASK_ALWAYS_EAGER

* CELERY_EAGER_PROPAGATES = CELERY_TASK_ALWAYS_EAGER

Addresses https://github.com/pydanny/cookiecutter-django/pull/1446/files#r167238808

* CELERY_RESULT_BACKEND = CELERY_BROKER_URL always

* CELERY_TIMEZONE = TIME_ZONE

* CELERY_TASK_EAGER_PROPAGATES = True

* Name task limit settings appropriately

CELERY_TASK_TIME_LIMIT -> CELERYD_TASK_TIME_LIMIT, CELERY_TASK_SOFT_TIME_LIMIT -> CELERYD_TASK_SOFT_TIME_LIMIT
2018-06-21 19:38:48 +00:00
Nikita P. Shupeyko
c812e01fc5 Rename UsersConfig to UsersAppConfig 2018-06-05 12:18:35 +03:00
Nikita P. Shupeyko
95d218e3e4 Rename CeleryConfig to CeleryAppConfig 2018-06-05 12:18:07 +03:00
Nikita Shupeyko
fe3f45ba7d
Rename DJANGO_SENTRY_DSN env to SENTRY_DSN (#1663)
Rationale: so that Heroku auto-provisioned Sentry addon, with its SENTRY_DSN config var is being connected to out-of-box
2018-05-27 22:36:13 +03:00
Nikita P. Shupeyko
b069f8e40e Fix E303 in production.py 2018-05-21 21:57:52 +03:00
Nikita P. Shupeyko
600be33b85 Fix E402 in production.py 2018-05-21 21:57:31 +03:00
Nikita P. Shupeyko
5b6c8a89d3 Fix flake8 errors in wsgi.py 2018-05-21 21:36:03 +03:00
Nikita P. Shupeyko
c3baadd8c7 Set DEBUG=True unconditionally in local config 2018-05-14 10:21:33 +03:00
saschalalala
6d4be405d8 Migrate to Django2 path urls (#1637)
* Change users urls to Django 2 paths

* Change config urls to Django 2 paths

* Change admin url setting to Django 2 path syntax

* Replace more admin urls

* Add myself to contributors.rst
2018-05-14 10:09:24 +03:00
Nikita P. Shupeyko
fd15b20a08 Use string interpolation in production STATIC_URL 2018-05-13 17:03:04 +03:00
Nikita P. Shupeyko
661fc3e449 Fix E402 2018-05-09 13:42:20 +03:00
Nikita P. Shupeyko
a07327459c Fix logging module imported unconditionally in production.py 2018-05-09 13:24:08 +03:00
Nikita P. Shupeyko
df1ce737d5 Replace os.environ.get with env call in local.py 2018-05-09 13:15:41 +03:00
Nikita P. Shupeyko
00ff5c8506
Fix a typo in production.py 2018-05-07 20:33:34 +03:00
Osaetin Daniel
a4f059196e Removed unnecessary sentry configuration (#1598) 2018-04-10 10:39:44 +08:00
Daniel Roy Greenfeld
3f753e0411
First pass at running black across the project (#1602) 2018-04-08 17:03:29 -05:00
Nikita P. Shupeyko
26ccf9307f Fix REDIS_URL missing
Fixes #1570.
2018-04-04 13:42:01 +03:00
Nikita P. Shupeyko
418b53bf77 Rename use_sentry_for_error_reporting to use_sentry
Rationale: consistency
2018-04-03 12:12:26 +03:00
Wan Liuyang
d1198f63b1
Drop Opbeat (#1578) 2018-03-21 19:54:27 +08:00
jose Gabriel Guzman Lopez
0601a1b858
Local
add  "127.0.0.1"
2018-03-16 11:35:39 -05:00
Daniel Roy Greenfeld
b32fd78012
Update base.py 2018-03-13 22:21:01 -05:00
Daniel Roy Greenfeld
19501ef26b
Adding DRF 2018-03-13 22:17:46 -05:00
Malik S
6c8538abfe Add all internal IPs for multiple docker networks (#1520)
* Add all internal IPs for multiple docker networks

When developing with modified docker-compose.yml that contains multiple
network definitions, all networks gateways of the created container
should be added to INTERNAL_IPS, otherwise Django-Debug-Toolbar will not
work.

* Add @flyudvik to contributors
2018-03-08 15:54:24 +03:00
Wan Liuyang
9cb7e50b8e Convert old-styled string formatting to f-string (#1528)
* Convert old-styled string formatting to f-string

* Update flake8 explicit version to 3.5.0

* Make tox.ini in sync with requirements.txt

* Fix annoying flake8 F405
2018-03-06 19:56:27 +03:00
Nikita Shupeyko
d2791b019a
Prettify and re-order settings entries (#1550)
* Prettify and re-order settings entries

* Use old-style .format() for the time being

* Remove redundant linebreaks at the settings files' beginning

* Fix E303 too many blank lines

* Remove a redundant linebreak from requirements.txt

* Some linebreake juggling in config.settings.base
2018-03-06 14:28:25 +03:00
Bruno Alla
82dcd2d30c Simplify Mailgun settings
When creating a Mailgun add-on on Heroku, the app gets some environment
variables by default:

    MAILGUN_API_KEY
    MAILGUN_DOMAIN

However, the cookiecutter names do not match and requires a manual step
from the user deploying. It's used elsewhere but shouldn't harm the
other deployment methods to rename these variables.

While updating the docs I noticed a variable that appear unused
DJANGO_MAILGUN_SERVER_NAME so this removes it from the documentation.
2018-03-05 17:56:45 +00:00
Nikita P. Shupeyko
64f2541743 Set ALLOWED_HOSTS in config.settings.local 2018-03-04 17:51:37 +03:00
Nikita P. Shupeyko
f4e217ed21 Simplify production databases section generation 2018-03-04 17:33:54 +03:00
Nikita P. Shupeyko
6c26d39f65 Unconditionally connect to database from DATABASE_URL env when opting for Docker
Closes #1541.
2018-03-04 17:24:06 +03:00
adammsteele
ed2204ecba Celery config - json serialization by default (#1535)
* Use json serialization in celery by default

* Added myself to CONTRIBUTORS.rst
2018-03-01 14:25:33 +03:00
Wan Liuyang
30dfbbd0ab Remove AWS S3 header bytes workaround 2018-02-20 16:04:16 +08:00
Bruno Alla
3853094221
Merge pull request #1374 from svleeuwen/patch-1
Remove boto related settings that aren't used
2018-02-16 21:19:35 +00:00
Hashim Muqtadir
e8ca2dd8ea Add atomic requests setting to production.py (#1513)
Since config/production.py sets a new value for `DATABASES['default']`, the `DATABASES['default']['ATOMIC_REQUESTS'] = True` setting from base gets overridden. So it's probably a good idea to add it back.
2018-02-16 18:15:50 +03:00
Sander van Leeuwen
bef1bb856e
Add cache control via AWS_S3_OBJECT_PARAMETERS setting
Previously covered by AWS_HEADERS
2018-02-13 16:04:43 +01:00
Nikita Shupeyko
86e33e8714
Refactor *_gen_project hooks (#1490)
* Fix ./hooks/pre_gen_project.py asking user to select an option once only

+ prettify output

* Fix pre_gen hook not really exiting when it should

* Refactor & prettify ./hooks/post_gen_project.py

* Ensure same POSTGRES_USER is set across environments

+ get rid of env.example in favor of pre-generated .env.
2018-02-07 22:52:52 +03:00
David
b24d0d0bd8 Fixes wsgi.py app_path to avoid deleting all /config occurrences. (#1467) 2018-02-03 00:01:28 +03:00
Daniel Roy Greenfeld
793a46ba45 Removed expiramental elastic beanstalk support and bumped official Django version to 1.11.9 2018-01-15 12:33:51 -08:00
Pierre Chiquet
d2dd265a99 Fix MediaRootS3BotoStorage: do not override existing files (#1367)
* Fix MediaRootS3BotoStorage: do not override existing files

see https://github.com/jschneier/django-storages/issues/50

* Update "other contributors"

* alphabetical order
2017-12-13 16:06:48 +03:00
Bruno Alla
4f8cd89bb7 Set CONN_MAX_AGE to 60 seconds -- fixes #710 (#1382)
* Set CONN_MAX_AGE to 60 seconds -- fixes #710

Setting the value in the production config.

* Get CONN_MAX_AGE from the environment, default to 60 in .env

* Add test for CONN_MAX_AGE setting

* Remove duplication in default value & test cleanup

* Remove test for CONN_MAX_AGE value in settings
2017-11-13 23:08:47 +03:00
Sander van Leeuwen
9661ecaf8f Remove boto related settings that aren't used
Since upgrade to boto3 in commit 12db5176d6 we don't need AWS_HEADERS anymore
2017-10-25 14:11:36 +02:00
Chris Franklin
d0e5c4b3b6 Fix comments and silence PEP8 lambda warnings in config module. (#1357) 2017-10-12 20:36:44 +03:00
Charlie Smith
cda6878486 More inline docs for DATABASES variable (#1350)
* More inline docs for DATABASES variable

Use of database url is not part of Django, but comes from django-environ. Was initially confusing where feature came from, as link points to offical django docs.

* Contributors update
2017-09-30 15:18:55 +03:00
Wan Liuyang
ea5fb0efb6 Update EMAIL_BACKEND to "anymail.backends.espname.EmailBackend" to match anymail 1.0 (#1335) 2017-09-18 16:19:09 +03:00
Reggie Riser
0e1c00d3b3 Fixed typo in generated comment. (#1306) 2017-08-28 22:30:56 +03:00
Bruno Alla
4be48b7999 Use django-storages for media files if using WhiteNoise - fixes #1192
As per the discussion in #869, WhiteNoise is for serving static files
not for media files (files uploaded from the app by users).
For such thing, we still need `DEFAULT_FILE_STORAGE` to be set and
we use django-storages for that.
2017-08-02 20:10:49 +01:00
Bruno Alla
12db5176d6 Upgrade to boto3 fixes #998
- Boto3 is the replacement of boto, switch to the latest version
- Switch django-storages class to the one based on Boto3
- AWS_S3_CALLING_FORMAT isn't relevant anymore
2017-08-02 20:00:03 +01:00
shireenrao
1871abd7e9 Setting up new project with mailhog without docker breaks use of mailhog (#553)
* add mailhog container for local development

* update local settings to use mailhog container for docker

* remove whitespace

* remove whitespace

* fix whitespace formatting

* another try to fix whitespace

* fix block error due to whitespace

* only use mailhog in docker if docker and mailhog is chosen in setup wizard

* Remove warning at end if using docker and mailhog

* mailhog should work locally without docker

* remove unnecessary check for docker in dev docker-compose file

* Remove section within local development docs referencing docker

As this document is meant as a how to for developing locally, I removed the section which was added for using mailhog in docker. I will add that section to the developing-locally-docker.rst file. Also removed jinja template as it does not work in docs.

* Added a comment on mailhog for local docker development

* fix hyperlink to #smtp-backend

* Added a comment on mailhog for local docker development

* pull docs/developing-locally-docker.rst from upstream

* remove changes from dev.yml and add comment for local.py

* Sync with pydanny:master
2017-06-26 22:21:32 +03:00
Shupeyko Nikita
1f7be4eb57 Revert "Node.JS + docker-compose = ♥" (#1206)
* Revert "[Fix] #1173 Nginx SSL redirect loop (#1174)"

This reverts commit cabcc7b106.

* Revert "Fix Getting Up and Running Locally With Docker doc sphinx warnings (#1165)"

This reverts commit 83c8594203.

* Revert "Fix index.rst sphinx warnings (#1166)"

This reverts commit 51dd0b5e73.

* Revert "Pin mailhog Docker image to v1.0.0 (#1201)"

This reverts commit d9f870461b.

* Revert "Node.JS + docker-compose = ♥ (#1128)"

This reverts commit 4b06fe3958.
2017-06-21 23:12:22 +03:00
Shupeyko Nikita
4b06fe3958 Node.JS + docker-compose = ♥ (#1128)
* Introduce static asset build infrastructure

* Enhance gulpfile.js

* Introduce node service

* BrowserSync debug-only support

* Remove newline before  BrowserSync debug-only support section

* FIx node Dockerfile package.json COPY

* Try fiixing node Dockerfile package.json COPY ones again

* Switch to `node:7-slim`

* Try switching to node:6

To account for possible node:7 docker-compose incompatibiltiy

* Revert "Try switching to node:6"

This reverts commit 62cc02df1a.

* Try switcging workdir to /app

* Try utilizing relative package.json path

* Resetting to the last version working locally with docker-compose 1.11.x

* Build upon the latest node:7.9-slim

* Stop dockerignoring package.json

* Fix typo

* Try a different package.json path

* Revert "Try a different package.json path"

This reverts commit f29f8500b8.

* Revert "Fix typo"

This reverts commit 02033729b5.

* Revert "Stop dockerignoring package.json"

This reverts commit 63c5491546.

* Upgrade docker-engine and docker-compose used by Travis CI

* Fix .travis.yml comments

* Inline docker-engine and docker-compose versions

* DEBUG: pwd

* Revert "DEBUG: pwd "

This reverts commit 6c2ed4321a.

* Try copying package.json to the same dir as node Dockerfile's

* Revert "Try copying package.json to the same dir as node Dockerfile's"

This reverts commit 24340a0783.

* Try out node:7.9

* Revert "Try out node:7.9"

This reverts commit 32286d33c2.

* Revert "Upgrade docker-engine and docker-compose used by Travis CI"

* Get rid of npm-check-updates

Reason: Reserved for the upcoming PR

* Get rid of npm-check

Reason: Reserved for the upcoming PR

* Get rid of 'standard' npm package

Reason: Reserved for the upcoming PR

* Clean up package.json

* Preserve package.json uncoditionally

Since we now have *unconditional* node.js integration, `package.json` must be out there whenever `node` service gets built

* Upgrade node service image to 7.10

* Document Node.js-Docker integration

* Fix gulpfile.js images region name

* Get rid of Gulp migrate task

* Document Gulp-Docker integration

* Introduce static asset build infrastructure

* Enhance gulpfile.js

* Introduce node service

* BrowserSync debug-only support

* Remove newline before  BrowserSync debug-only support section

* FIx node Dockerfile package.json COPY

* Try fiixing node Dockerfile package.json COPY ones again

* Switch to `node:7-slim`

* Try switching to node:6

To account for possible node:7 docker-compose incompatibiltiy

* Revert "Try switching to node:6"

This reverts commit 62cc02df1a.

* Try switcging workdir to /app

* Try utilizing relative package.json path

* Resetting to the last version working locally with docker-compose 1.11.x

* Build upon the latest node:7.9-slim

* Stop dockerignoring package.json

* Revert "Stop dockerignoring package.json"

This reverts commit 63c5491546.

* Fix typo

* Revert "Fix typo"

This reverts commit 02033729b5.

* Try a different package.json path

* Revert "Try a different package.json path"

This reverts commit f29f8500b8.

* Upgrade docker-engine and docker-compose used by Travis CI

* Fix .travis.yml comments

* Inline docker-engine and docker-compose versions

* DEBUG: pwd

* Revert "DEBUG: pwd "

This reverts commit 6c2ed4321a.

* Try copying package.json to the same dir as node Dockerfile's

* Revert "Try copying package.json to the same dir as node Dockerfile's"

This reverts commit 24340a0783.

* Try out node:7.9

* Revert "Try out node:7.9"

This reverts commit 32286d33c2.

* Revert "Upgrade docker-engine and docker-compose used by Travis CI"

* Get rid of npm-check-updates

Reason: Reserved for the upcoming PR

* Get rid of npm-check

Reason: Reserved for the upcoming PR

* Get rid of 'standard' npm package

Reason: Reserved for the upcoming PR

* Clean up package.json

* Preserve package.json uncoditionally

Since we now have *unconditional* node.js integration, `package.json` must be out there whenever `node` service gets built

* Upgrade node service image to 7.10

* Document Node.js-Docker integration

* Fix gulpfile.js images region name

* Get rid of Gulp migrate task

* Document Gulp-Docker integration

* Remove Gulp-Docker integraton not supported initialization message
2017-06-20 22:48:17 +03:00
Shupeyko Nikita
65e64fe364 Fix CELERY_BROKER_URL naming mismatch (#1143)
* Fix CELERY_BROKER_URL naming mismatch

Closes #1116

* Fix all occurences
2017-04-24 19:35:58 +03:00
Daniel Roy Greenfeld
6aced9ba73 Remove Python 2.7 support per #1129 (#1130)
* Remove Python 2.7 support per

* Remove Python 2.7 references

* Remove Python 2.7 references

* remove python 2 entirely
2017-04-21 12:31:45 -07:00
Nikita P. Shupeyko
c4e646214a Workaround flake8 "imported but unused" errors 2017-04-21 18:52:53 +03:00
Daniel Roy Greenfeld
b0fe04fc52 First pass at Bootstrap 4 Alpha 6, just the basic layout 2017-04-20 15:18:30 -07:00