Benutzer-Werkzeuge

Webseiten-Werkzeuge


rechnerverarbeitung:wawisy
  • Bebilderte Tutorials
  • Guides zu PCs, Laptops, Netzteilen, Bildschirmen, sonst.

Wawisy

Wawisy (Warenwirtschaftssystem) ist die Software, die vom Computerwerk zur Inventarisierung von Hardwareteilen verwendet wird. Das Programm ist in Python geschrieben, es verwendet das Django-framework für das Backend und JavaScript, HTML5, CSS und jQuery für das Frontend.

Inventarisiert werden

Was gibt es zu tun?

Funktion testen

Wenn du dich nicht an den Python-Code herantraust, ist das kein Problem. Du kannst auch auf deinem eigenen Rechner (oder einem Werkstattrechner des Platinengartens) eine eigene Wawisy-Instanz aufsetzen und damit spielen. Dadurch lernst du die Funktionen des Dienstes kennen und stolperst vielleicht über den ein oder anderen Fehler oder über Uneindeutigkeiten im Programmablauf. Über den Issue-Tracker im gitlab kannst du den Entwickler*innen von Wawisy bescheid geben, wenn du Bugs gefunden hast.

Dokumentieren

Eine schöne Dokumentation von Wawisy würde uns sowie zukünftigen Nutzer*innen und Entwickler*innen helfen. Du kannst zum Beispiel sphinx benutzen, um Code-Dokumentation mit technischer Dokumentation zu verbinden.

Code überprüfen

Da unsere Vereinsarbeit ohne Wawisy kaum möglich ist und dieser Dienst für unsere Inventarverwaltung essentiell ist, möchten wir den Code pflegen und möglichst vielen Entwickler*innen die Chance geben, daran mitzuwirken.

Unit Testing

Bisher wurden nur wenige unit tests für Wawisy geschrieben. Du kannst das ändern!

Weiteres

Weitere Aufgaben findest du im Issue-Tracker im gitlab.

Inventarisieren

  • eigener Artikel zum Inventarisieren mit Wawisy

Haken bei „charity only“ nur dann setzen, wenn ein Nachweis für den Empfang existiert und in diesem nur gemeinnützige Zwecke erlaubt sind.

PCs

TODO

Laptops

TODO

Festplatten

  1. Barcode auf die Lange flache Kante kleben, die von oben zu sehen ist, wenn der Hersteller-Aufkleber (Modellnummer, Größe…) nach links zeigt und die Anschlüsse zu einem hin zeigen
    1. dabei darauf achten, dass keine Schrauben verdeckt werden
  2. In Wawisy auf „New Item“ klicken
  3. Name: <Anschlussart> Festplatte <Herstellername> <Speichergröße in GB>
  4. Beschreibung: <Herstellername> <Modellbezeichnung> <Speichergröße in GB> <Anschlussart> <Maße in Zoll>
  5. Tags: HDD, Festplatte, <Anschlussart>, <Maße in Zoll>, <Speichergröße in GB>
  6. Barcode angeben
  7. auf „Save“ klicken

Netzteile

TODO

Bildschirme

TODO

Sonstige

TODO

Wawisy starten

Der Quellcode von Wawisy befindet sich im gitlab. Wenn du Wawisy testen oder es weiterentwickeln möchtest, kannst du es lokal ausführen. An deinem System werden dadurch keine Änderungen vorgenommen.

Wie die meisten Django-Projekte lässt sich Wawisy mit dem Kommando

./manage.py runserver

testweise ausführen.

Wawisy im System installieren

Wawisy wird auf einem Arch Linux System durch den systemd-Service /usr/lib/systemd/system/wawisy.service gestartet:

 [Unit]
Description=Wawisy

[Service]
Type=forking
KillMode=none
ExecStart=/home/wawisy/start-wawisy.sh
ExecStop=/home/wawisy/stop-wawisy.sh
WorkingDirectory=/home/wawisy

[Install]
WantedBy=multi-user.target

Das Target multi-user startet u.a. den Wawisy-Service und weitere Units, die für den Betrieb von Wawisy nötig sind. Daher setzen wir dieses Target als Standard:

systemctl set-default multi-user.target

Wir gehen davon aus, dass ein Benutzer mit dem Namen wawisy und dem Homeverzeichnis /home/wawisy existiert. Unter Arch Linux wird der Benutzer mit dem Kommando

useradd -m -s /usr/bin/bash wawisy

erstellt.

Im Homeverzeichnis liegt Wawisy im Ordner /home/wawisy/produktiv-wawisy.

Die Skripte start-wawisy.sh und stop-wawisy.sh sehen so aus:

/home/wawisy/start-wawisy.sh

#!/bin/bash
# Configuration
## user name of wawisy
WAWISY_USER="wawisy"
## path of wawisy installation (directory where manage.py is in)
WAWISY_PATH="/home/wawisy/produktiv-wawisy"

if [ $(whoami) != root ] ; then echo "this script must be run as root" && exit 1 ; fi
tmux new-session -s wawisy -d
tmux send-keys -t wawisy "su $WAWISY_USER" C-m
#tmux send-keys -t wawisy "source activate wawisy" C-m
tmux send-keys -t wawisy "cd $WAWISY_PATH && ./manage.py runserver 0.0.0.0:8000" C-m
echo -e "Wawisy started. You may now attach to the session using \ntmux a -t wawisy \n(detach using crtl+b and then press d)"

/home/wawisy/stop-wawisy.sh

#!/bin/bash
tmux send-keys -t wawisy C-c && while ps aux | grep "manage.py runserver" | grep -v "grep" --silent; do sleep 1; echo waiting for wawisy to exit...; done && tmux send-keys -t wawisy C-d && echo exited
rechnerverarbeitung/wawisy.txt · Zuletzt geändert: 2019/07/30 10:08 von henry.krumb