Do not require timestamp_end, initialize db
continuous-integration/drone/push Build is failing
Details
continuous-integration/drone/push Build is failing
Details
This commit is contained in:
parent
0f2f0d281e
commit
9d142126b1
|
@ -12,6 +12,7 @@ RUN git clone https://git.kucharczyk.xyz/lukas/timetracker.git /home/timetracker
|
||||||
WORKDIR /home/timetracker/app
|
WORKDIR /home/timetracker/app
|
||||||
RUN chown -R timetracker /home/timetracker/app
|
RUN chown -R timetracker /home/timetracker/app
|
||||||
RUN poetry install
|
RUN poetry install
|
||||||
|
RUN make initialize
|
||||||
EXPOSE 8000
|
EXPOSE 8000
|
||||||
USER timetracker
|
USER timetracker
|
||||||
CMD [ "python3", "src/web/manage.py", "runserver", "0.0.0.0:8000" ]
|
CMD [ "python3", "src/web/manage.py", "runserver", "0.0.0.0:8000" ]
|
9
Makefile
9
Makefile
|
@ -1,8 +1,12 @@
|
||||||
|
.PHONY: createsuperuser
|
||||||
|
|
||||||
all: css migrate
|
all: css migrate
|
||||||
|
|
||||||
initialize: css migrate loadplatforms
|
initialize: css migrate loadplatforms
|
||||||
|
|
||||||
css: src\input.css src\web\tracker\templates\*.html
|
HTMLFILES := $(shell find src\web\tracker\templates -type f)
|
||||||
|
|
||||||
|
css: src\input.css $(HTMLFILES)
|
||||||
npx tailwindcss -i .\src\input.css -o .\src\web\tracker\static\base.css
|
npx tailwindcss -i .\src\input.css -o .\src\web\tracker\static\base.css
|
||||||
|
|
||||||
css-dev: css
|
css-dev: css
|
||||||
|
@ -25,3 +29,6 @@ loadplatforms:
|
||||||
|
|
||||||
loadsample:
|
loadsample:
|
||||||
python src\web\manage.py loaddata sample.yaml
|
python src\web\manage.py loaddata sample.yaml
|
||||||
|
|
||||||
|
createsuperuser:
|
||||||
|
python src\web\manage.py createsuperuser
|
|
@ -0,0 +1,21 @@
|
||||||
|
# Generated by Django 4.1.4 on 2023-01-02 18:55
|
||||||
|
|
||||||
|
import datetime
|
||||||
|
from django.db import migrations, models
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
("tracker", "0001_initial"),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name="session",
|
||||||
|
name="duration_manual",
|
||||||
|
field=models.DurationField(
|
||||||
|
blank=True, default=datetime.timedelta(0), null=True
|
||||||
|
),
|
||||||
|
),
|
||||||
|
]
|
|
@ -0,0 +1,23 @@
|
||||||
|
# Generated by Django 4.1.4 on 2023-01-02 23:11
|
||||||
|
|
||||||
|
from django.db import migrations, models
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
("tracker", "0002_alter_session_duration_manual"),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name="session",
|
||||||
|
name="duration_manual",
|
||||||
|
field=models.DurationField(blank=True, null=True),
|
||||||
|
),
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name="session",
|
||||||
|
name="timestamp_end",
|
||||||
|
field=models.DateTimeField(blank=True, null=True),
|
||||||
|
),
|
||||||
|
]
|
|
@ -31,8 +31,8 @@ class Platform(models.Model):
|
||||||
class Session(models.Model):
|
class Session(models.Model):
|
||||||
purchase = models.ForeignKey("Purchase", on_delete=models.CASCADE)
|
purchase = models.ForeignKey("Purchase", on_delete=models.CASCADE)
|
||||||
timestamp_start = models.DateTimeField()
|
timestamp_start = models.DateTimeField()
|
||||||
timestamp_end = models.DateTimeField()
|
timestamp_end = models.DateTimeField(blank=True, null=True)
|
||||||
duration_manual = models.DurationField(blank=True, null=True, default=timedelta(0))
|
duration_manual = models.DurationField(blank=True, null=True)
|
||||||
duration_calculated = models.DurationField(blank=True, null=True)
|
duration_calculated = models.DurationField(blank=True, null=True)
|
||||||
note = models.TextField(blank=True, null=True)
|
note = models.TextField(blank=True, null=True)
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue