Compare commits
8 Commits
project/sh
...
99be9e40c2
| Author | SHA1 | Date | |
|---|---|---|---|
| 99be9e40c2 | |||
| c1d11bc53a | |||
| e515cd3b6b | |||
| 502226a2c9 | |||
| 070e0c2b00 | |||
| 14c5c35787 | |||
| 98e0512fbe | |||
| 2164003482 |
@@ -28,18 +28,27 @@ jobs:
|
|||||||
- name: Clone repository
|
- name: Clone repository
|
||||||
run: git clone --revision ${{ gitea.sha }} --depth 1 ${{ gitea.server_url }}/${{ gitea.repository }}
|
run: git clone --revision ${{ gitea.sha }} --depth 1 ${{ gitea.server_url }}/${{ gitea.repository }}
|
||||||
|
|
||||||
|
- name: Start postgres_db container for testing
|
||||||
|
working-directory: IoT-Systems
|
||||||
|
run: docker-compose up -d postgres_db
|
||||||
|
|
||||||
- name: Build Store testing container
|
- name: Build Store testing container
|
||||||
working-directory: IoT-Systems
|
working-directory: IoT-Systems
|
||||||
run: docker build -t local/store/${{gitea.sha}} -f store/Dockerfile-test .
|
run: docker build -t local/store/${{gitea.sha}} -f store/Dockerfile-test .
|
||||||
|
|
||||||
- name: Run Store tests
|
- name: Run Store tests
|
||||||
working-directory: IoT-Systems
|
working-directory: IoT-Systems
|
||||||
run: docker run --rm -it local/store/${{gitea.sha}}
|
run: docker run --network host --rm -it local/store/${{gitea.sha}}
|
||||||
|
|
||||||
- name: Clean up containers
|
- name: Clean up containers
|
||||||
if: ${{always()}}
|
if: ${{always()}}
|
||||||
run: docker image rm local/store/${{gitea.sha}}
|
run: docker image rm local/store/${{gitea.sha}}
|
||||||
|
|
||||||
|
- name: Clean up docker-compose
|
||||||
|
if: ${{always()}}
|
||||||
|
working-directory: IoT-Systems
|
||||||
|
run: docker-compose down -v --remove-orphans
|
||||||
|
|
||||||
integration-smoke-test:
|
integration-smoke-test:
|
||||||
name: Integration smoke testing
|
name: Integration smoke testing
|
||||||
runs-on: host-arch-x86_64
|
runs-on: host-arch-x86_64
|
||||||
|
|||||||
22
diagrams/general-sequence.puml
Normal file
22
diagrams/general-sequence.puml
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
@startuml
|
||||||
|
actor Worker as worker
|
||||||
|
participant Agent as agent
|
||||||
|
participant "Edge" as edge
|
||||||
|
participant "Hub" as hub
|
||||||
|
participant "Store" as store
|
||||||
|
participant "MapView" as mapview
|
||||||
|
actor Spectator as spectator
|
||||||
|
|
||||||
|
worker -> agent : Start agent
|
||||||
|
agent -> edge : Send sensor data
|
||||||
|
edge -> edge : Classify road state
|
||||||
|
edge -> hub : Send processed data
|
||||||
|
hub -> hub : Save processed data
|
||||||
|
hub -> store : Send processed data batch
|
||||||
|
store -> store : Save processed data batch
|
||||||
|
store -> mapview : Send new rows
|
||||||
|
mapview -> spectator : Show updated paths and markers
|
||||||
|
spectator -> mapview : Click on markers
|
||||||
|
mapview -> spectator : Hide clicked markers
|
||||||
|
mapview -> store : Save display preference
|
||||||
|
@enduml
|
||||||
15
diagrams/main-activity-diagram.puml
Normal file
15
diagrams/main-activity-diagram.puml
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
@startuml
|
||||||
|
|Користувач|
|
||||||
|
start
|
||||||
|
:Натискає на іконку ями;
|
||||||
|
|Система|
|
||||||
|
:Запитує підтвердження видалення ями;
|
||||||
|
|Користувач|
|
||||||
|
:Підтверджує видалення ями;
|
||||||
|
|Система|
|
||||||
|
:Модифікує запис про яму;
|
||||||
|
note right #ff9999: Можлива виключна ситуація 1
|
||||||
|
:Видаляє яму;
|
||||||
|
|Користувач|
|
||||||
|
stop
|
||||||
|
@enduml
|
||||||
23
diagrams/use-case.puml
Normal file
23
diagrams/use-case.puml
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
@startuml
|
||||||
|
rectangle IoT-Systems {
|
||||||
|
usecase "Collect telemetry (accelerometer + GPS)" as uc1
|
||||||
|
usecase "Send telemetry" as uc2
|
||||||
|
usecase "Process telemetry" as uc3
|
||||||
|
usecase "Determine road condition (pothole / bump /\nnormal)" as uc4
|
||||||
|
usecase "View road defect marks" as uc5
|
||||||
|
usecase "View route on map" as uc6
|
||||||
|
}
|
||||||
|
|
||||||
|
rectangle "The user is the card operator" as uc10
|
||||||
|
rectangle "Sensor Agent\n(Device/STM32/Emulator)" as uc11
|
||||||
|
|
||||||
|
uc11 - uc1
|
||||||
|
uc11 - uc2
|
||||||
|
|
||||||
|
uc10 - uc5
|
||||||
|
uc10 - uc6
|
||||||
|
|
||||||
|
uc2 -.|> uc3 : <<include>>
|
||||||
|
uc3 -.|> uc4 : <<include>>
|
||||||
|
|
||||||
|
@enduml
|
||||||
@@ -6,6 +6,7 @@ WORKDIR /app
|
|||||||
COPY store/requirements.txt .
|
COPY store/requirements.txt .
|
||||||
|
|
||||||
RUN pip install --no-cache-dir -r requirements.txt
|
RUN pip install --no-cache-dir -r requirements.txt
|
||||||
|
RUN pip install --root-user-action ignore --no-cache-dir pytest httpx
|
||||||
# Copy the entire application into the container
|
# Copy the entire application into the container
|
||||||
COPY store/. .
|
COPY store/. .
|
||||||
# Run the main.py script inside the container when it starts
|
# Run the main.py script inside the container when it starts
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
PYTHONPATH=$PWD python3 test/main_test.py
|
PYTHONPATH=$PWD python3 test/main_test.py
|
||||||
|
PYTHONPATH=$PWD python3 -m pytest test_db.py
|
||||||
|
|||||||
Reference in New Issue
Block a user