Skip to content

Latest commit

 

History

History
172 lines (107 loc) · 4.13 KB

README.rst

File metadata and controls

172 lines (107 loc) · 4.13 KB

My Tourist

A free tool for analysis the potential audience of the region's tourism products.

License: GPL v3 Pre Commit: enabled Built with Cookiecutter Django Requirements Status Black code style

Settings

Moved to settings.

Basic Commands

Setting Up Your Users

  • To create a normal user account, just go to Sign Up and fill out the form. Once you submit it, you'll see a "Verify Your E-mail Address" page. Go to your console to see a simulated email verification message. Copy the link into your browser. Now the user's email should be verified and ready to go.

  • To create an superuser account, use this command:

    $ python manage.py createsuperuser
    

For convenience, you can keep your normal user logged in on Chrome and your superuser logged in on Firefox (or similar), so that you can see how the site behaves for both kinds of users.

Type checks

Running type checks with mypy:

$ mypy my_tourist

Test coverage

To run the tests, check your test coverage, and generate an HTML coverage report:

$ coverage run -m pytest
$ coverage html
$ open htmlcov/index.html

Running tests with py.test

$ pytest

Pre-commit

Installation:

$ pre-commit install

Checking project files:

$ pre-commit run --all-files

Live reloading and Sass CSS compilation

Moved to Live reloading and SASS compilation.

Sentry

Sentry is an error logging aggregator service. You can sign up for a free account at https://sentry.io/signup/?code=cookiecutter or download and host it yourself. The system is setup with reasonable defaults, including 404 logging and integration with the WSGI application.

You must set the DSN url in production.

Deployment

Supervisor

Contents of the file /etc/supervisor/conf.d/my_tourist.conf:

[program:my_tourist]
command=docker-compose -f production.yml up
directory=/var/www/my_tourist/
redirect_stderr=true
autostart=true
autorestart=true
priority=10
supervisorctl reread
supervisorctl update

Manage:

supervisorctl start my_tourist
supervisorctl restart my_tourist
supervisorctl stop my_tourist
supervisorctl status

Docker

See detailed cookiecutter-django Docker documentation.

Maintenance

Loading data

docker-compose -f production.yml run -e MY_TOURIST_GLOBAL_CODE=XX --rm django python manage.py update_heat_map
docker-compose -f production.yml run --rm django python manage.py update_target_data

Backups

docker-compose -f production.yml exec postgres backup

Backing up the 'my_tourist' database...

SUCCESS: 'my_tourist' database backup 'backup_2020_12_29T09_39_03.sql.gz' has been created and placed in '/backups'.

docker-compose -f production.yml exec postgres backups

These are the backups you have got:

total 5.2M

-rw-r--r-- 1 root root 5.2M Dec 29 09:39 backup_2020_12_29T09_39_03.sql.gz