Skip to content
Snippets Groups Projects
Commit c82a5745 authored by Max Melchert's avatar Max Melchert
Browse files

feat: add hiiden details text in README

Added <details> tags to provide expandable sections for more information in the README file.
parent b09fd4f8
No related branches found
No related tags found
No related merge requests found
...@@ -125,9 +125,33 @@ Sie werden durch den Aufruf von `make download` im zuvor definierten Ordner `LOC ...@@ -125,9 +125,33 @@ Sie werden durch den Aufruf von `make download` im zuvor definierten Ordner `LOC
### Server ### Server
| Variable | Verwendung | Beispiel | | Variable | Verwendung | Beispiel |
| :------------ | :---------------- | :----------------- | | :------------ | :--------------- | :----------------- |
| `SERVER_USER` | Server: User Name | `mmustermann` | | `SERVER_USER` | Server: Username | `mmustermann` |
| `SERVER_HOST` | Server: Host Name | `hyrican-1-extern` | | `SERVER_HOST` | Server: Hostname | `hyrican-1-extern` |
<details>
<summary>Details anzeigen</summary>
#### `SERVER_USER`
> Wird vom Server-Admin vergeben.
#### `SERVER_HOSTNAME`
> Kann in verschiedenen Formaten vorliegen:
| Format | Beschreibung | Beispiel |
| :------------------- | :--------------------------- | :------------------- |
| IP-Address (private) | numerisch; lokales Netz | `192.168.1.100` |
| IP-Address (public) | numerisch; öffentliches Netz | `203.0.113.1` |
| FQDN | vollständiger Domänenname | `server.example.com` |
| Hostname | einfacher Name ohne Domäne | `hyrican-1` |
| Alias | alternativer Name; Verweis | `hyrican-1-extern` |
In der Regel übermittelt der Server-Admin dem neu freigeschalteten User eine SSH-Config.
Die Verwendung der dort definierten Aliases wird empfohlen.
</details>
### Python Environment ### Python Environment
...@@ -141,9 +165,28 @@ Sie werden durch den Aufruf von `make download` im zuvor definierten Ordner `LOC ...@@ -141,9 +165,28 @@ Sie werden durch den Aufruf von `make download` im zuvor definierten Ordner `LOC
### Project Paths ### Project Paths
| Variable | Verwendung | Beispiel | | Variable | Verwendung | Beispiel |
| :------------------- | :------------------------- | :------------------- | | :------------------- | :------------------------- | :------------------ |
| `LOCAL_PROJECT_DIR` | Client: Projektordner [^1] | `.` | | `LOCAL_PROJECT_DIR` | Client: Projektordner [^1] | `.` |
| `REMOTE_PROJECT_DIR` | Server: Projektordner [^2] | `~s/akis/my_project` | | `REMOTE_PROJECT_DIR` | Server: Projektordner [^2] | `~/akis/my_project` |
<details>
<summary>Details anzeigen</summary>
#### `LOCAL_PROJECT_DIR`
> Definiert den Pfad des Projektordners auf dem **lokalen Rechner**.
Er wird relativ zur _Makefile_ angegeben.
Liegt die _Makefile_ also direkt im Projektordner, ist `LOCAL_PROJECT_DIR := .`.
#### `REMOTE_PROJECT_DIR`
> Definiert den Pfad des Projektordners auf dem **Server**.
Er wird absolut oder relativ zum Home-Verzeichnis angegeben.
Also bspw. `~/akis/my_project` oder `/home/mmustermann/akis/my_project`.
</details>
### Project Files ### Project Files
...@@ -152,6 +195,26 @@ Sie werden durch den Aufruf von `make download` im zuvor definierten Ordner `LOC ...@@ -152,6 +195,26 @@ Sie werden durch den Aufruf von `make download` im zuvor definierten Ordner `LOC
| `MAIN_SCRIPT` | Auszuführendes Python-Script [^1] | `main.py` | | `MAIN_SCRIPT` | Auszuführendes Python-Script [^1] | `main.py` |
| `LOG_FILE` | Log-Datei (optional) [^1] | `progress.log` | | `LOG_FILE` | Log-Datei (optional) [^1] | `progress.log` |
<details>
<summary>Details anzeigen</summary>
#### `MAIN_SCRIPT`
> Definiert das _Python_-Script, welches später durch die _Makefile_ auf dem Server ausgeführt wird.
Sollte es notwendig sein, dass mehrere Scripts bspw. nacheinander ausgeführt werden, ist es empfehlenswert eine `main.py` zu erstellen.
Dieses `main.py` kann dann alle anderen Scripts ausführen.
#### `LOG_FILE`
> definiert die Datei, in der das _Python_-Script einen Log schreib.
Logs beinhalten meist Statusmeldungen über den Programmablauf und geben Aufschluss über Fortschritt, Fehler und Erfolg.
Die Verwendung einer Log-File ist optional.
Ist sie vorhanden, kann sie mit `make log` angesehen werden; neue Einträge werden "live" aktualisiert und angezeigt.
</details>
### File Transfer ### File Transfer
| Variable | Verwendung | Beispiel | | Variable | Verwendung | Beispiel |
...@@ -160,12 +223,59 @@ Sie werden durch den Aufruf von `make download` im zuvor definierten Ordner `LOC ...@@ -160,12 +223,59 @@ Sie werden durch den Aufruf von `make download` im zuvor definierten Ordner `LOC
| `LOCAL_DOWNLOAD_DIR` | Client: Download-Ordner [^1] | `output` | | `LOCAL_DOWNLOAD_DIR` | Client: Download-Ordner [^1] | `output` |
| `REMOTE_DOWNLOAD_FILES` | Server: Download-Dateien [^1] | `output/*.svg output/*.pkl` | | `REMOTE_DOWNLOAD_FILES` | Server: Download-Dateien [^1] | `output/*.svg output/*.pkl` |
<details>
<summary>Details anzeigen</summary>
#### `LOCAL_UPLOAD_FILES`
> Definiert – relativ zum Projektordner –, welche Dateien auf den Server hochgeladen werden sollen.
Dazu ein paar Beispiele:
| `LOCAL_UPLOAD_FILES` | Bedeutung |
| :--------------------- | :---------------------------------------------- |
| `.` | gesamter Projektordner |
| `main.py scripts data` | Main-Script, Scripts-Ordner, Data-Ordner |
| `main.py data/*.pkl` | Main-Script; alle Pickle-Dateien im Data-Ordner |
#### `LOCAL_DOWNLOAD_DIR`
> Definiert – relativ zum Projektordner – den Pfad, in dem vom Server heruntergeladene Output-Dateien gespeichert werden sollen.
Dieser kann dem selben Ordner entsprechen, wie er auf dem Server gespiegelt ist.
Er kann jedoch auch ein anderer sein und bspw. `downloads` heißen.
#### `REMOTE_DOWNLOAD_FILES`
> Definiert – relativ zum Projektordner –, welche Output-Dateien vom Server heruntergeladen werden sollen.
Es können sowohl ganze Ordner, als auch einzelne Dateien ausgewählt werden.
Dazu ein paar Beispiele:
| `REMOTE_DOWNLOAD_FILES` | Bedeutung |
| :------------------------------------------ | :------------------------------------------------------------------------------ |
| `outputs` | alle Dateien im Output-Ordner |
| `outputs/*.csv outputs/*.pkl outputs/*.svg` | alle CSV-, PKL- und SVG-Dateien des Output-Orderns |
| `outputs img/*.png progress.log | alle Dateien im Output-Ordner; alle PNG-Dateien im Image-Ordner; eine Log-Datei |
</details>
### Misc ### Misc
| Variable | Verwendung | Beispiel | | Variable | Verwendung | Beispiel |
| :-------------------- | :--------------------------------- | :------- | | :-------------------- | :--------------------------------- | :------- |
| `COPY_LINKS_AS_FILES` | Server: Kopiert Symlinks als Datei | `false` | | `COPY_LINKS_AS_FILES` | Server: Kopiert Symlinks als Datei | `false` |
#### `COPY_LINKS_AS_FILES`
> Kopiert symbolische Links als Datei
Wenn in den Projektordnern symbolische Links ("symlinks", "symbolic links") liegen, werden diese von der _Makefile_ **nicht wie Dateien** behandelt.
Sie werden unverändert als _Symlinks_ auf den Server kopiert.
In manchen Anwendungsfällen ist es jedoch gewollt, dass die Verlinkung aufgelöst und die Links als Dateien kopiert werden.
Für diesen Fall muss `COPY_LINKS_AS_FILES` auf `true` gesetzt werden.
[^1]: Relativer Pfad zum Projektordner [^1]: Relativer Pfad zum Projektordner
[^2]: Absoluter Pfad [^2]: Absoluter Pfad
...@@ -180,7 +290,7 @@ Sie werden durch den Aufruf von `make download` im zuvor definierten Ordner `LOC ...@@ -180,7 +290,7 @@ Sie werden durch den Aufruf von `make download` im zuvor definierten Ordner `LOC
| `run` | Führt Python Script aus | Server | | `run` | Führt Python Script aus | Server |
| `kill` | Bricht Python Script ab | Server | | `kill` | Bricht Python Script ab | Server |
| `log` | Zeigt Log-Datei (optional) an | Client | | `log` | Zeigt Log-Datei (optional) an | Client |
| `download` | Läd Outputdateien herunter | Server → Client | | `download` | Läd Output-Dateien herunter | Server → Client |
| `delete` | Löscht Projektdateien | Server | | `delete` | Löscht Projektdateien | Server |
--- ---
...@@ -191,9 +301,11 @@ Sie werden durch den Aufruf von `make download` im zuvor definierten Ordner `LOC ...@@ -191,9 +301,11 @@ Sie werden durch den Aufruf von `make download` im zuvor definierten Ordner `LOC
- [ ] Datasets über NFS - [ ] Datasets über NFS
- [ ] Benachrichtigung bei Abbruch/Erfolg - [ ] Benachrichtigung bei Abbruch/Erfolg
- [ ] Slack - [ ] Slack
- [ ] E-Mail
- [ ] Matrix - [ ] Matrix
- [ ] parallele Ausführung mehrerer Scripts - [ ] parallele Ausführung mehrerer Scripts
- [ ] docs: get local python packages; append to `PYTHON_PACKAGES` - [ ] docs: get local python packages; append to `PYTHON_PACKAGES`
- [ ] ggf. mehrere Log-Files
--- ---
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment