* Fix inconsistent line length and move config to pyproject.toml
Fix#2720
* Fix running tox with AUTOFIXABLE_STYLES
* Adjust some styles
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* Adjust more styles
* Split isort and flake8 tests
---------
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
* Add username_type option
* Update docs
Signed-off-by: Andrew-Chen-Wang <acwangpython@gmail.com>
* Fix errors and lint
Signed-off-by: Andrew-Chen-Wang <acwangpython@gmail.com>
* Try linting again
* Try linting again
* Handle signup
* Fix url reverse in template
* Fix migration file
* Remove extra line in factories
* E2E tests for email username
* Fix style in users api views and serializers
* Fix style in users api views and serializers
* Add conditions for fields in UserAdminCreationForm
* Consistent Jinja tag conditions
* Fix more empty lines issues
* Tweak options order
* Test username email
* Fix code style
* Fix kwargs to reverse user details view
* Remove comment in template
* Fix error messages dict in user form
* Fix line wrapping
* Move custom manager into a separate module and add tests
---------
Signed-off-by: Andrew-Chen-Wang <acwangpython@gmail.com>
Co-authored-by: Bruno Alla <alla.brunoo@gmail.com>
Co-authored-by: Bruno Alla <browniebroke@users.noreply.github.com>
* Replace runserver_plus with runserver since it is not compatible with django >= 4.1
* Replace runserver_plus with runserver in post_gen_hooks
---------
Co-authored-by: Bruno Alla <alla.brunoo@gmail.com>
* Add option to serve media files locally using nginx
* Fix nginx media location and storage issue
* Fix traefik django-media typo
* Add certresolver property to web-media-router
* Add trailing slash in nginx configuration to avoid path traversal exploits
* Remove autoindexing from nginx configuration so nginx uses its default off setting
* Use nginx to serve media files if cloud provider is None
* Add back warning about lack of media files without Docker or Cloud providers
* Update documentation
* Fix typos and rephrase
Co-authored-by: Arkadiusz Ryś <arkadiusz.michal.rys@gmail.com>
---------
Co-authored-by: Bruno Alla <alla.brunoo@gmail.com>
Co-authored-by: Bruno Alla <browniebroke@users.noreply.github.com>
* Add support for Webpack as frontend pipeline
* Rename CI jobs
* Fix a couple of issues with Webpack + Docker
* Don't include Boostrap CSS from CDN with Webpack
* Rename variable
* Set publicPath in prod webpack config
* Fix removal of SASS files in post-gen hooks
* Add Webpack to readme usage section
* Run Django + Webpack dev server concurrently without Docker
* Fix async runserver command with Gulp/Webpack
* Upgrade django-webpack-loader to 1.5.0
* Pass variables required by Webpack at build time
* Upgrade django-webpack-loader to 1.7.0
* Add missing condition
* Add support for Azure Storage + Webpack
* Whitespaces
* Rename ROOT_DIR -> BASE_DIR
* Rename jobs
* Bump django-webpack-loader to latest
* Document limitation of Docker + Webpack + no Whitenoise
* Update section on custom Bootstrap compilation in generated readme
* Adds swagger api documentation when drf is enabled
Changes
* Integrate drf-spectacular module
* Added routes and tests for swagger-ui
* Removes swagger ui tests when drf is not enabled
* Changes url names and documentation title
* Apply suggestions from code review
Co-authored-by: Fábio C. Barrionuevo da Luz <bnafta@gmail.com>
Co-authored-by: Bruno Alla <browniebroke@users.noreply.github.com>
* Fixes typos and linting issues
* Update domain in swagger description
Co-authored-by: Fábio C. Barrionuevo da Luz <bnafta@gmail.com>
Co-authored-by: Fábio C. Barrionuevo da Luz <bnafta@gmail.com>
Co-authored-by: Bruno Alla <browniebroke@users.noreply.github.com>
- 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
## Description
Following up on @webyneter attempt in #1205, which is now getting outdated, I've tried to make Gulp task runner work with Docker. There is no documentation yet, but this seems to work locally with the custom bootstrap compilation...
- [x] Add a node image for local developement
- [x] Proxy the django image rather than localhost in Browser sync, pass header to keep hostname
- [x] Don't call the runserver command from Gulp, let docker-compose handle
- [x] Update package.json & gulpfile.js templates to reduce the number of unwanted empty lines
- [x] Use [multi-stage build](https://docs.docker.com/develop/develop-images/multistage-build/) in production to make sure the static assets are produced
- [x] Update documentation
- [x] Verify that the previous issue with static assets missing from production isn't there
## Rationale
Currently, the static build isn't working nicely with Docker, extra manual setup is required.
Fixes#1762
* 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
* Integrate Flower with Docker Compose setup locally
* Remove alien worker celeryd option
* Move Flower COPY section below the worker's
* Remove set -o pipefail command from Flower start script
* Flower client authentication
* Override flower service image name
* Move flower service to the end of local.yml
* Install flower==0.9.2 in all environments
* Introduce production flower service
* Fix local flower start script
* Document Flower integration
* Prettify *.django envs
Rationale: consistency.
* Reference local environment Flower docs from the production's
* 'two more services' -> 'three more services'
* Update generated project's .gitignore
* Post-gen gitignore .env/ and .env
* Fix linesep between gitignored entries
* Persist `.env/**/*` files into cookiecutter-django's VCS
* Rename .env/ to .envs/
* Reference the newly created .envs/**/.* files in local.yml
* Reference the newly created .envs/**/.* files in production.yml
* Delete .env.example
* Refactor post-gen-project.py
Closes#1299.
* Implement production-dotenv-files-to-dotenv-file merge script
* Create shared PyCharm Run Configuration for the automation script
* Randomize POSTGRES_PASSWORD in ./envs/(.local|.production)/.postgres
* Default POSTGRES_PASSWORD and POSTGRES_USER to random values
* Fix jinja linebreaks in local.yml
* Spaces in production.yml
* Fix post-merge leftovers & set DJANGO_ADMIN_URL automatically
* Prettify here and there
* Fix FileNotFoundError
* Leave a TODO in post_gen_hook.py
* Introduce keep_local_envs_in_vcs option
* Remove envs when not opted for
* Inline pre_gen_project.py if-condition
* Get rid of PROJECT_DIR_PATH in post_gen_project.py
* Clean up the docs
* Match copyright notices
* Document envs ins and outs