From 797cc52f6abd34f2974327f4086ef7a931dabf04 Mon Sep 17 00:00:00 2001 From: Max Melchert <maximilian.melchert@stud.hs-bochum.de> Date: Tue, 18 Feb 2025 23:37:56 +0100 Subject: [PATCH] docs: add todo and brainstorm --- README.md | 6 ++++++ TODO.md | 38 ++++++++++++++++++++++++++++++++++++++ docs/brainstorm.md | 37 +++++++++++++++++++++++++++++++++++++ 3 files changed, 81 insertions(+) create mode 100644 TODO.md create mode 100644 docs/brainstorm.md diff --git a/README.md b/README.md index e69de29..cffb853 100644 --- a/README.md +++ b/README.md @@ -0,0 +1,6 @@ +# AKIS Cloud Computing + +> WIP + +- [To-Do](TODO.md) +- [Brainstorm](docs/brainstorm.md) diff --git a/TODO.md b/TODO.md new file mode 100644 index 0000000..23b6451 --- /dev/null +++ b/TODO.md @@ -0,0 +1,38 @@ +# TODO + +> WIP; Brainstorm; zukünftig ggf. über Issues + +## Anforderungen + +### Infrastruktur + +- [ ] Cluster: NVIDIA GeForce RTX 4090 +- [ ] Beantragung SSH-Rechte +- [ ] File-Server (u.A. Trainingsdaten) +- [ ] Umzug Trainingsdaten (Sciebo → File-Server) + +### Software + +- [ ] Linux-Support (primär) +- [ ] Windows-Support (sekundär) +- [ ] Code-Editing in VSCode (lokal) +- [ ] Code-Execution auf Server (im Hintergrund; unabhängig vom Client) +- [ ] Unabhängig von Jupyter + +### Dokumentation + +- [ ] PDF-Dokumentation +- [ ] Video-Tutorial +- [ ] Git "Best Practice" + - [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/) + - [Cheatsheet](https://gist.github.com/qoomon/5dfcdf8eec66a051ecd85625518cfd13) + +## Unklarheiten + +- [ ] Fortschrittskontrolle + - [ ] Status-Abfrage mit Rückgabewert? + - [ ] E-Mail bei Abschluss? +- [ ] UI: CLI/GUI? +- [ ] Abruf des Outputs? + - [ ] Automatisch über Script? + - [ ] Manuell über SSH? diff --git a/docs/brainstorm.md b/docs/brainstorm.md new file mode 100644 index 0000000..75c77bf --- /dev/null +++ b/docs/brainstorm.md @@ -0,0 +1,37 @@ +# Brainstorm + +## Makefile + +> kleine Scripts; kurzfristige Ausführung; Debugging + +- Konfiguration über Makefile-Variablen +- Targets + - `make push` Kopiert Code von Client auf Server (`scp`) + - `make exec` Führt Code auf Server aus (`ssh`) + - `make status` Fragt Fortschritt auf Server ab (`ssh`) + - `make pull` Kopiert Output von Server auf Client (`scp`) + +## GitLab + +> große Projekte; langwierige Berechnungen + +1. [Code](https://gitlab.cvh-server.de/mmelchert/akis-cloud-computing): `git push` +2. [Pipelines](https://gitlab.cvh-server.de/mmelchert/akis-cloud-computing/-/pipelines): `.gitlab-ci.yml` +3. [Runners](https://gitlab.cvh-server.de/mmelchert/akis-cloud-computing/-/settings/ci_cd#js-runners-settings): RTX 4090 +4. [](https://gitlab.cvh-server.de/mmelchert/ci-exercise/-/commits/main) +5. [Artifacts](https://gitlab.cvh-server.de/mmelchert/akis-cloud-computing/-/artifacts): Output + +Vorteile: + +- "bekannter" Workflow +- GUI vorhanden +- integrierte Versionsverwaltung +- automatisierte Ausführung des Codes +- Fortschrittskontrolle +- E-Mail-Benachrichtigung bei fehlerhafter Pipeline +- Ablage der letzten Output-Versionen + +Nachteile: + +- jede Code-Änderung ein Commit & Push +- Speicheraufwand (GitLab auf Hetzner-Server) -- GitLab