Recent Commits
Commit | Author | Details | Committed | ||||
---|---|---|---|---|---|---|---|
3c487f988bfc | Sybren A. Stüvel (sybren) | Added cron job to deployment documentation | May 24 2019 | ||||
b08428ed501f | Francesco Siddi (fsiddi) | Cross-platform support for sed command | Dec 11 2018 | ||||
b22d860f918d | Francesco Siddi (fsiddi) | Update LATEST_SCHEMA_VERSION to 2 | Dec 11 2018 | ||||
5dc82fdb17da | Francesco Siddi (fsiddi) | Docs: Make port number consistent | Dec 11 2018 | ||||
7b92e87edddb | Francesco Siddi (fsiddi) | Rename example.sh to submit_benchmark.sh | Dec 11 2018 | ||||
5b8088bf77b4 | Sybren A. Stüvel (sybren) | Use TCP/IP sockets instead of UNIX sockets for uWSGI | Nov 7 2018 | ||||
5fc27be7b5fc | Sybren A. Stüvel (sybren) | Fixed deleting not-yet-synced benchmarks | Nov 7 2018 | ||||
b1aeb6f064a1 | Sybren A. Stüvel (sybren) | Logging improvements | Nov 7 2018 | ||||
c1adc6cdca90 | Sybren A. Stüvel (sybren) | Formatting | Nov 7 2018 | ||||
314fd015eee9 | Sybren A. Stüvel (sybren) | Reduced timeout between NginX and uWSGI + lowered uWSGI max-requests | Nov 7 2018 | ||||
b7b10f225cc5 | Sybren A. Stüvel (sybren) | Some more useful commands in bash_history | Nov 7 2018 | ||||
00d127c91fff | Sybren A. Stüvel (sybren) | Upgraded blender-id-oauth-client 0.7 → 0.8 | Nov 7 2018 | ||||
d83468c5fb3a | Sybren A. Stüvel (sybren) | Added example crontab | Nov 6 2018 | ||||
563c96dc8f4a | Sybren A. Stüvel (sybren) | mark manage-{my,open}data.sh as executable | Nov 6 2018 | ||||
61042e3bffe2 | Sybren A. Stüvel (sybren) | Linux fix | Nov 6 2018 |
README.md
Blender My Data
Portal to manage own benchmark results.
Requirements
- The example config expects a running version of Blender My Data under
http://mydata.local:8003/ for development. We don't have a production version yet.
- You also need a APP-ID and APP-SECRET from Blender ID
or your local version of Blender ID (http://id.local:8000)
Development setup
After cloning the Git repo, perform these steps to create a working dev server:
- Make sure PostgreSQL is running and it has a mydata or similar database available
- git submodule init and git submodule update
- Copy mydata/settings.example.py to mydata/settings.py and adjust to your needs
- Start your virtaulenv with pipenv shell
- Install requirements with pipenv install
- Run migrations ./manage.py migrate
- Install frontend dependencies ./gulp
- Run application ./manage.py runserver 8003
- Configure Blender ID to have an OAuth Client with redirect URL http://mydata.local:8003/oauth/authorized
- Configure a cronjob to run pipenv run ./manage.py sync --flush -v0
Try it out
- Submit an example benchmark with a valid Blender ID access_token
$ sh examples/submit_benchmark.sh examples/benchmark-v2.json your-blender-id-token You have to create the access_token manually at the moment since we don't have an authorized benchmark tool yet
- Open running application in Browser, login with Blender ID and manage your benchmarks.
Migrating from post-OAuth plugin era
In November 2018 we moved from using the oauth module in this project (which is now deleted, so don't bother searching for it except in the Git history) to using the Blender ID OAuth Client Django app. Since this was kinda hard to get correctly working with Django migrations, follow these steps instead:
pipenv run ./manage.py migrate pipenv run ./manage.py migrate blender_id_oauth_client 0001 pipenv run ./manage.py dbshell drop table blender_id_oauth_client_oauthtoken; alter table oauth_oauthtoken rename to blender_id_oauth_client_oauthtoken; alter sequence oauth_oauthtoken_id_seq rename to blender_id_oauth_client_oauthtoken_seq; \q (or Ctrl+D) pipenv run ./manage.py migrate
This rolls back the blender_id_oauth_client migrations to a point in time where it used the same database model as mydata, then moves the mydata token table to the new Django app. After that, the migrations are re-run to split the tokens table into tokens + OAuth user mapping.