aboutsummaryrefslogtreecommitdiff
path: root/Taskfile.yml
blob: 583004e709136b69af481c74e5d5be9a6df1ff64 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
version: '3'

tasks:
  dev-backend:
    desc: Run backend in watch mode.
    cmds:
      - dotnet watch --project src/Costasdev.Busurbano.Backend/Costasdev.Busurbano.Backend.csproj

  dev-frontend:
    desc: Run frontend development server.
    cmds:
      - npm run dev --prefix src/frontend

  build-proto:
    desc: Generates the protobuf bindings for C# and Python
    cmds:
      - protoc --python_out=./src/gtfs_perstop_report/src/proto --pyi_out=./src/gtfs_perstop_report/src/proto --proto_path=./src/common ./src/common/stop_schedule.proto
      - protoc --csharp_out=./src/Costasdev.Busurbano.Backend/Types/ --proto_path=./src/common ./src/common/stop_schedule.proto

  build-backend:
    desc: Publish backend in Release mode.
    cmds:
      - dotnet publish -c Release -o ./dist/backend src/Costasdev.Busurbano.Backend/Costasdev.Busurbano.Backend.csproj

  build-frontend:
    desc: Build frontend bundle.
    cmds:
      - npm run build --prefix src/frontend
      - mkdir dist/frontend
      - mv src/frontend/build/client/ dist/frontend/

  format-backend:
    desc: Format backend solution.
    cmds:
      - dotnet format --verbosity diagnostic

  format-frontend:
    desc: Format frontend sources.
    cmds:
      - 'prettier --write src/frontend/**/*.{ts,tsx,css}'

  gen-stop-report:
    desc: Generate stop-based JSON reports for specified dates or date ranges.
    cmds:
      - uv --directory ./src/gtfs_perstop_report run ./stop_report.py --output-dir ./output/vitrasa --feed-url https://datos.vigo.org/data/transporte/gtfs_vigo.zip --force --provider vitrasa
      - uv --directory ./src/gtfs_perstop_report run ./stop_report.py --output-dir ./output/renfe --feed-url https://ssl.renfe.com/gtransit/Fichero_AV_LD/google_transit.zip --force --provider renfe

  gen-stop-json:
    desc: Generate stop-based JSON files for specified dates or date ranges.
    cmds:
      - uv --directory ./src/stop_downloader/vigo run ./download-stops.py