Skip to content

batscs/stundenplan-algorithm

Repository files navigation

Inhaltsverzeichnis

  1. Introduction

  2. Setup (Endbenutzer)
    1.1 Docker Engine bereitstellen
    1.2 docker login git.fh-wedel.de
    1.3 docker-compose.yml erstellen
    1.4 docker-compose up -d
    1.5 Im Browser aufrufen

  3. Endpoints

  4. Setup (Entwickler)
    3.1 Mit Docker
    - Git Repository Clonen
    - Docker-Engine bereitstellen
    - Starten
    3.2 Ohne Docker
    - Voraussetzungen
    - Requirements installieren
    - Starten

  5. Testen
    4.1 Test Script ausführen

Introduction

Diese Repository gehört zu dem Stundenplan Algorithmus, welcher ein Teil des Stundenplan25-Softwareprojekt der Fachhochschule Wedel ist. Zu dem gesamten Projekt gibt es eine ausführlichere Documentation.

Diese Dokumentation ist für den Release 1.0.0 geschrieben, welches das Endprodukt für das Softwareprojekt dient. Die Dokumentation wird nicht für neue Releases aktualisiert, da diese nicht im Rahmen des Softwareprojekts sind.

Setup (Endbenutzer)

1. Docker Engine bereitstellen

z.B. Docker Desktop for Windows installieren & anmelden

2. docker login git.fh-wedel.de

Benötigt um das genetic_algorithm image von git.fh-wedel.de zu pullen im nächsten Schritt

3. docker-compose.yml erstellen

Hierbei muss nicht die gesamte git repository gecloned werden. Mit folgender docker-compose wird der neuste stable release als container aufgesetzt.

version: '2'

services:
    algorithm:
        container_name: "stundenplan_algorithm"
        image: git.fh-wedel.de/swp_stundenplan25/genetic_algorithm:1.0.0
        volumes:
            - ./resources:/app/src/python/resources
        ports:
            - "1111:1111"

4. docker-compose up -d

Muss im Terminal ausgeführt werden im Ordner wo die docker-compose.yml sich befindet

5. Im browser aufrufen (http://localhost:1111)

Swagger Dokumentation hier für Verwendung der API Endpunkte

API Endpoints

url: http://localhost:1111/api/docs

swagger_ui

Setup (Entwickler)

Mit Docker

1. Git Repository Clonen

2. Docker-Engine bereitstellen

3. Starten

Gestartet wird der Server über mit docker-compose

docker-compose up -d

Bei Änderungen ist es erforderlich das Docker Image neu zu bauen, erst dann kann der Container mit den Änderungen gestartet werden.

docker-compose up -d --build

Alternative können für PyCharm oder IntelliJ die Run-Konfigurationen aus dem .run Ordner importiert werden

Ohne Docker

1. Voraussetzungen

Es muss mindestens python version 3.12 vorhanden sein, testen kann man das durch

python -V

2. Requirements installieren

Es befindet sich in der repo eine requirements.txt mit allen dependencies welche benötigt werden, python kann diese selbst installieren:

python -m pip install requirements.txt -r

3. Starten

Auf Windows kann der Server mit folgendem CMD einzeiler gestartet werden:

cmd /c "set PYTHONPATH=%CD%; %PYTHONPATH% && python -u src\python\server.py" 

Auf Linux kann der Server mit folgendem Shell einzeiler gestartet werden:

PYTHONPATH=$(pwd) && export PYTHONPATH && python -u src/python/server.py

Testen

Die Tests können durch das script test.py in dem test Ordner ausgeführt werden.

Der Algorithm-Server muss laufen damit die Tests ausgeführt werden können.

Test Script ausführen

python test/test.py

Eigene Tests können entsprechend dem vorhanden Muster in test/units.py ergänzt werden

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages