deployment

This commit is contained in:
gw3000 2023-07-12 16:24:33 +02:00
parent 4f2e8277df
commit 8c6066176b
5 changed files with 49 additions and 184 deletions

View file

@ -1,6 +1,5 @@
# Generated by Django 4.2.2 on 2023-07-10 19:16
# Generated by Django 4.2.3 on 2023-07-12 12:34
import bird.models
from django.conf import settings
from django.db import migrations, models
import django.db.models.deletion
@ -12,145 +11,67 @@ class Migration(migrations.Migration):
initial = True
dependencies = [
('aviary', '0003_alter_aviary_condition'),
('rescuer', '0002_alter_rescuer_options_alter_rescuer_city_and_more'),
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
("aviary", "0003_alter_aviary_condition"),
("rescuer", "0001_initial"),
]
operations = [
migrations.CreateModel(
name="Bird",
name='Bird',
fields=[
(
"id",
models.UUIDField(
default=uuid.uuid4,
editable=False,
primary_key=True,
serialize=False,
),
),
("name", models.CharField(max_length=256, unique=True)),
(
"description",
models.CharField(max_length=4096, verbose_name="Hilfetext"),
),
('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)),
('name', models.CharField(max_length=256, unique=True, verbose_name='Bezeichnung')),
('description', models.CharField(max_length=4096, verbose_name='Hilfetext')),
],
options={
"verbose_name": "Vogel",
"verbose_name_plural": "Vögel",
'verbose_name': 'Vogel',
'verbose_name_plural': 'Vögel',
},
),
migrations.CreateModel(
name="BirdStatus",
name='BirdStatus',
fields=[
("id", models.BigAutoField(primary_key=True, serialize=False)),
("description", models.CharField(max_length=256, unique=True)),
('id', models.BigAutoField(primary_key=True, serialize=False)),
('description', models.CharField(max_length=256, unique=True, verbose_name='Bezeichnung')),
],
options={
"verbose_name": "Patientenstatus",
"verbose_name_plural": "Patientenstatus",
'verbose_name': 'Patientenstatus',
'verbose_name_plural': 'Patientenstatus',
},
),
migrations.CreateModel(
name="Circumstance",
name='Circumstance',
fields=[
("id", models.BigAutoField(primary_key=True, serialize=False)),
("description", models.CharField(max_length=256)),
('id', models.BigAutoField(primary_key=True, serialize=False)),
('description', models.CharField(max_length=256, verbose_name='Bezeichnung')),
],
options={
"verbose_name": "Fundumstand",
"verbose_name_plural": "Fundumstände",
'verbose_name': 'Fundumstand',
'verbose_name_plural': 'Fundumstände',
},
),
migrations.CreateModel(
name="FallenBird",
name='FallenBird',
fields=[
(
"id",
models.UUIDField(
default=uuid.uuid4,
editable=False,
primary_key=True,
serialize=False,
),
),
(
"bird_identifier",
models.CharField(max_length=256, verbose_name="Kennung"),
),
("date_found", models.DateField(verbose_name="Datum des Fundes")),
(
"place",
models.CharField(max_length=256, verbose_name="Ort des Fundes"),
),
(
"created",
models.DateTimeField(auto_now_add=True, verbose_name="angelegt am"),
),
(
"updated",
models.DateTimeField(auto_now=True, verbose_name="geändert am"),
),
("diagnostic_finding", models.CharField(max_length=256)),
(
"costs",
models.JSONField(
default=bird.models.costs_default, verbose_name="Costs"
),
),
(
"aviary",
models.ForeignKey(
blank=True,
null=True,
on_delete=django.db.models.deletion.SET_NULL,
to="aviary.aviary",
),
),
(
"bird",
models.ForeignKey(
on_delete=django.db.models.deletion.CASCADE,
to="bird.bird",
verbose_name="Patient",
),
),
(
"find_circumstances",
models.ForeignKey(
on_delete=django.db.models.deletion.CASCADE,
to="bird.circumstance",
),
),
(
"rescuer",
models.ForeignKey(
blank=True,
null=True,
on_delete=django.db.models.deletion.SET_NULL,
to="rescuer.rescuer",
),
),
(
"status",
models.ForeignKey(
default=1,
on_delete=django.db.models.deletion.CASCADE,
to="bird.birdstatus",
),
),
(
"user",
models.ForeignKey(
on_delete=django.db.models.deletion.CASCADE,
to=settings.AUTH_USER_MODEL,
),
),
('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)),
('bird_identifier', models.CharField(max_length=256, verbose_name='Kennung')),
('date_found', models.DateField(verbose_name='Datum des Fundes')),
('place', models.CharField(max_length=256, verbose_name='Ort des Fundes')),
('created', models.DateTimeField(auto_now_add=True, verbose_name='angelegt am')),
('updated', models.DateTimeField(auto_now=True, verbose_name='geändert am')),
('diagnostic_finding', models.CharField(max_length=256, verbose_name='Diagnose bei Fund')),
('costs', models.DecimalField(decimal_places=2, max_digits=5, verbose_name='Kosten')),
('aviary', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='aviary.aviary', verbose_name='Voliere')),
('bird', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='bird.bird', verbose_name='Patient')),
('find_circumstances', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='bird.circumstance', verbose_name='Fundumstände')),
('rescuer', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='rescuer.rescuer', verbose_name='Finder')),
('status', models.ForeignKey(default=1, on_delete=django.db.models.deletion.CASCADE, to='bird.birdstatus')),
('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='Benutzer')),
],
options={
"verbose_name": "Patient",
"verbose_name_plural": "Patienten",
'verbose_name': 'Patient',
'verbose_name_plural': 'Patienten',
},
),
]

View file

@ -1,37 +0,0 @@
# Generated by Django 4.2.3 on 2023-07-12 06:59
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
("bird", "0001_initial"),
]
operations = [
migrations.AlterField(
model_name="bird",
name="name",
field=models.CharField(
max_length=256, unique=True, verbose_name="Bezeichnung"
),
),
migrations.AlterField(
model_name="birdstatus",
name="description",
field=models.CharField(
max_length=256, unique=True, verbose_name="Bezeichnung"
),
),
migrations.AlterField(
model_name="circumstance",
name="description",
field=models.CharField(max_length=256, verbose_name="Bezeichnung"),
),
migrations.AlterField(
model_name="fallenbird",
name="costs",
field=models.DecimalField(decimal_places=2, max_digits=5),
),
]

View file

@ -1,19 +1,8 @@
"""
Django settings for core project.
Generated by 'django-admin startproject' using Django 4.2.2.
For more information on this file, see
https://docs.djangoproject.com/en/4.2/topics/settings/
For the full list of settings and their values, see
https://docs.djangoproject.com/en/4.2/ref/settings/
"""
import os
import environ
from pathlib import Path
import environ
env = environ.Env()
@ -112,18 +101,8 @@ WSGI_APPLICATION = "core.wsgi.application"
# https://docs.djangoproject.com/en/4.2/ref/settings/#databases
DATABASES = {
"default": {
# "ENGINE": "django.db.backends.sqlite3",
# "NAME": BASE_DIR / "db.sqlite3",
# "ENGINE": "django.db.backends.postgresql",
# "NAME": "django_traefik",
# "USER": "django_traefik",
# "PASSWORD": "django_traefik",
# "HOST": "db",
# "PORT": "5432",
"default": env.db(),
}
}
# Password validation
@ -162,6 +141,7 @@ USE_TZ = True
STATIC_URL = "static/"
STATICFILES_DIRS = [BASE_DIR / "static"]
STATIC_ROOT = BASE_DIR / "staticfiles"
STATICFILES_STORAGE = "whitenoise.storage.CompressedManifestStaticFilesStorage"
# Default primary key field type

View file

@ -1,12 +1,13 @@
Django>=4.2
django-environ>=0.9
crispy-bootstrap5>=0.6
django-allauth>=0.50
django-bootstrap-datepicker-plus>=4.0
django-bootstrap-modal-forms>=2
django-crispy-forms>=1
django-environ==0.9.0
django-environ>=0.9
django-jazzmin>=2.6.0
environ>=1
gunicorn>=20.1
names>=0.3.0
psycopg2-binary>=2.9
whitenoise>=6.5

View file

@ -3,14 +3,14 @@ version: '3.8'
services:
web:
build: ./app
command: bash -c 'while !</dev/tcp/db/5432; do sleep 1; done; python manage.py runserver 0.0.0.0:8000'
command: bash -c 'while !</dev/tcp/db/5432; do sleep 1; done;python manage.py migrate;python manage.py loaddata fixtures/data.json; python manage.py runserver 0.0.0.0:8000'
volumes:
- ./app:/app
expose:
- 8000
environment:
- DEBUG=1
- DATABASE_URL=postgresql://django_traefik:django_traefik@db:5432/django_traefik
- DATABASE_URL=postgresql://django_fbf:django_fbf@db:5432/django_fbf
depends_on:
- db
labels:
@ -23,9 +23,9 @@ services:
expose:
- 5432
environment:
- POSTGRES_USER=django_traefik
- POSTGRES_PASSWORD=django_traefik
- POSTGRES_DB=django_traefik
- POSTGRES_USER=django_fbf
- POSTGRES_PASSWORD=django_fbf
- POSTGRES_DB=django_fbf
traefik:
image: traefik:v2.9.6
ports: