The music education learning management system
License: MIT
Moved to settings.
$ pip install -r requirements/local.txt
Create file called .env in project root with the line
DATABASE_URL=postgres://user:pass@localhost/teleband
Where user and pass are the username and password of the postgres user you created
$ python manage.py migrate
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.
Running type checks with mypy:
$ mypy teleband
To run the tests, check your test coverage, and generate an HTML coverage report:
$ coverage run -m pytest
$ coverage html
$ open htmlcov/index.html
$ pytest
Moved to Live reloading and SASS compilation.
In development, it is often nice to be able to see emails that are being sent from your application. If you choose to use MailHog when generating the project a local SMTP server with a web interface will be available.
Download the latest MailHog release for your OS.
Rename the build to MailHog
.
Copy the file to the project root.
Make it executable:
$ chmod +x MailHog
Spin up another terminal window and start it there:
./MailHog
Check out http://127.0.0.1:8025/ to see how it goes.
Now you have your own mail server running locally, ready to receive whatever you send it.
The following details how to deploy this application.
git tag <whatever, e.g. v0.2.2>
git push origin <whatever, e.g. v0.2.2>
cd ~/MusicCPRDev
git pull
git worktree add ../dev-versions/v0.2.2 v0.2.2
sudo supervisorctl stop dev_api_musiccpr
python manage.py migrate
cd ~/dev-versions; ls -al; rm live; ln -s /data/dev-versions/v2.0.3 live
python manage.py migrate instruments
sudo certbot certonly --manual --server https://acme-v02.api.letsencrypt.org/directory --preferred-challenges dns-01 -d "*.musiccpr.org,musiccpr.org"
Prefer to have:
psql postgres://...
CREATE USER youruser WITH ENCRYPTED PASSWORD 'yourpass';
CREATE DATABASE yourdbname;
GRANT ALL PRIVILEGES ON DATABASE yourdbname TO youruser;
AnyMailSESRecommended
create access key