|
|
|
@ -2,79 +2,3 @@
|
|
|
|
|
|
|
|
|
|
dwgstatus is a Django app to manage the detailing department's drawings
|
|
|
|
|
|
|
|
|
|
## Set up dev server ##
|
|
|
|
|
|
|
|
|
|
`$ ` is a user prompt
|
|
|
|
|
`# ` is a root prompt
|
|
|
|
|
|
|
|
|
|
- mount the P: drive at /mnt/p
|
|
|
|
|
```
|
|
|
|
|
# apt install cifs-utils
|
|
|
|
|
# mkdir -p /mnt/p
|
|
|
|
|
# mount -t cifs "//psc-3/Project Management" /mnt/p -o user=<YOUR USER NAME>
|
|
|
|
|
```
|
|
|
|
|
- clone repo to your home drive and switch to repo directory
|
|
|
|
|
```
|
|
|
|
|
$ git clone https://gitlab.com/pacstair/dwgstatus ~/dwgstatus
|
|
|
|
|
$ cd ~/dwgstatus
|
|
|
|
|
```
|
|
|
|
|
- create and activate virtual env
|
|
|
|
|
```
|
|
|
|
|
$ python -m venv venv
|
|
|
|
|
$ . venv/bin/activate
|
|
|
|
|
```
|
|
|
|
|
- install required python packages
|
|
|
|
|
```
|
|
|
|
|
$ pip install -r requirements.txt
|
|
|
|
|
```
|
|
|
|
|
- optionally, copy the `db.sqlite3` file to `~/dwgstatus` from a backup
|
|
|
|
|
- run DB migrations
|
|
|
|
|
```
|
|
|
|
|
$ python manage.py migrate
|
|
|
|
|
```
|
|
|
|
|
- run dev server
|
|
|
|
|
```
|
|
|
|
|
$ python manage.py runserver
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
Dev server should now be running at http://localhost:8000
|
|
|
|
|
|
|
|
|
|
Changes to most files will be picked up and the server restarted
|
|
|
|
|
automatically when you edit a file.
|
|
|
|
|
|
|
|
|
|
## Deploy to prod ##
|
|
|
|
|
|
|
|
|
|
See above for steps not explained here. Assuming a fresh debian
|
|
|
|
|
install:
|
|
|
|
|
|
|
|
|
|
- mount P: drive to /mnt/p
|
|
|
|
|
- entry in `/etc/fstab` to make it automatic
|
|
|
|
|
- needs a `.credentials` file
|
|
|
|
|
- create user `dwgstatus`
|
|
|
|
|
- as user `dwgstatus`:
|
|
|
|
|
- clone repo to home dir
|
|
|
|
|
- create venv and install python packages
|
|
|
|
|
- run DB migrations
|
|
|
|
|
- collect static files
|
|
|
|
|
```
|
|
|
|
|
$ python manage.py collectstatic
|
|
|
|
|
```
|
|
|
|
|
- install required debian packages:
|
|
|
|
|
- nginx
|
|
|
|
|
- uwsgi
|
|
|
|
|
- uwsgi-emperor
|
|
|
|
|
- set up nginx config
|
|
|
|
|
```
|
|
|
|
|
# rm /etc/nginx/sites-enabled/default
|
|
|
|
|
# rm /etc/nginx/sites-available/default
|
|
|
|
|
# ln -s /etc/nginx/sites-availble/dwgstatus /home/dwgstatus/dwgstatus/nginx.conf
|
|
|
|
|
# ln -s /etc/nginx/sites-enabled /etc/nginx/sites-availble/dwgstatus
|
|
|
|
|
# systemctl restart nginx
|
|
|
|
|
```
|
|
|
|
|
- set up uwsgi-emperor
|
|
|
|
|
```
|
|
|
|
|
# rm /etc/uwsgi-emperor/emperor.ini
|
|
|
|
|
# ln -s /etc/uwsgi-emperor/emperor.ini /home/dwgstatus/dwgstatus/uwsgi-emperor.ini
|
|
|
|
|
# ln -s /etc/uwsgi-emperor/vassals/dwgstatus.ini /home/dwgstatus/dwgstatus/uwsgi.ini
|
|
|
|
|
# systemctl restart uwsgi-emperor
|
|
|
|
|
```
|
|
|
|
|