Add README.md
This commit is contained in:
parent
26cf627a26
commit
745a214211
1 changed files with 97 additions and 0 deletions
97
README.md
Normal file
97
README.md
Normal file
|
|
@ -0,0 +1,97 @@
|
|||
# mini_ci_probe – Mini Continuous Integration Probe
|
||||
|
||||
## Überblick
|
||||
Das Experiment **mini_ci_probe** untersucht einen Probelauf einer Mini-CI-Umgebung mit Schwerpunkt auf stratifiziertem Sampling, Split von Runnern und Bootstrap-Validierung. Ziel ist die Analyse und Optimierung verteilter CI-Prozesse unter kontrollierten Stichprobenbedingungen.
|
||||
|
||||
[Artikel zum Experiment](https://donau2space.de/tag-82-mini-ci-probe-sampling-runner-split-und-ein-klarer-fortschritt/)
|
||||
|
||||
### Hinweis
|
||||
Alle Inhalte wurden per KI generiert.
|
||||
Nutzung, Anpassung und Weiterentwicklung erfolgen eigenverantwortlich auf eigenes Risiko.
|
||||
Es wird keine Korrektheit, Sicherheit, Funktionsfähigkeit oder rechtliche Eignung zugesichert.
|
||||
|
||||
## Inhalt des Repositories
|
||||
Das Repository enthält folgende Artefakte:
|
||||
|
||||
### 1. CI-Pipeline-Dokumentation (`ci_pipeline`)
|
||||
- **Art**: Dokumentation (doc_only)
|
||||
- **Ziel**: gemischt (mixed)
|
||||
- **Beschreibung**: Enthält die Dokumentation der CI-Pipeline einschließlich Konfiguration, Testdefinitionen und Prozessbeschreibung.
|
||||
- **Datenstruktur**:
|
||||
- `CI_Pipeline_Config` (JSON):
|
||||
- `stratified_sample_size`
|
||||
- `capture_parallel`
|
||||
- `aggregator_mode`
|
||||
- `bootstrap_runs`
|
||||
- `job_timeouts`
|
||||
|
||||
### 2. Python-Sampling-Tool (`python_sampling_tool`)
|
||||
- **Art**: Python-Skript (python_script)
|
||||
- **Ziel**: Linux-Userspace
|
||||
- **Sprache**: Python
|
||||
- **Beschreibung**: Implementiert ein stratifiziertes Sampling-Verfahren zur Verteilung von Test-Jobs in einer CI-Umgebung.
|
||||
- **API-Funktionen**:
|
||||
- `perform_stratified_sampling(sample_size, num_jobs)`: Führt ein stratifiziertes Sampling durch und gibt eine Liste von Stichproben zurück.
|
||||
- **Datenstruktur**:
|
||||
- `Sample` (JSON):
|
||||
- `job_id`
|
||||
- `data_points`
|
||||
|
||||
### 3. Performance-Metriken (`performance_metrics`)
|
||||
- **Art**: JSON-Datensatz (json_dataset)
|
||||
- **Ziel**: gemischt (mixed)
|
||||
- **Sprache**: JSON
|
||||
- **Beschreibung**: Enthält gemessene Leistungskennzahlen von CI-Jobs zur Auswertung der Sampling- und Bootstrap-Verfahren.
|
||||
- **Datenstruktur**:
|
||||
- `PerformanceMetrics` (JSON):
|
||||
- `job_id`
|
||||
- `duration`
|
||||
- `ci_width`
|
||||
- `ci_variance`
|
||||
|
||||
## Installation & Nutzung
|
||||
### Voraussetzungen
|
||||
- Linux-Umgebung mit Python 3.8 oder höher.
|
||||
|
||||
### Installation
|
||||
```bash
|
||||
# Repository klonen
|
||||
git clone <repository-url>
|
||||
cd mini_ci_probe
|
||||
|
||||
# Optionale Python-Umgebung erstellen
|
||||
python -m venv venv
|
||||
source venv/bin/activate
|
||||
|
||||
# Abhängigkeiten installieren (falls vorhanden)
|
||||
pip install -r requirements.txt
|
||||
```
|
||||
|
||||
### Nutzung des Sampling-Tools
|
||||
```bash
|
||||
python python_sampling_tool.py --sample-size 100 --num-jobs 1200
|
||||
```
|
||||
Dies führt ein stratifiziertes Sampling durch und erstellt eine Ausgabedatei mit Job-Stichproben.
|
||||
|
||||
## Typische Use-Cases
|
||||
- Simulation und Validierung von CI-Prozessen in kleinem Maßstab
|
||||
- Testen von Bootstrap-Methoden für Laufzeit- und Varianzanalysen
|
||||
- Analyse von Sampling-Effekten auf Job-Dauer und Konfidenzintervalle
|
||||
- Grundlage für Pipeline-Skalierungsstrategien
|
||||
|
||||
## Struktur & Erweiterbarkeit
|
||||
Die Repository-Struktur ist modular aufgebaut:
|
||||
- **/docs/** – Dokumentation der CI-Pipeline.
|
||||
- **/tools/** – Python-Skripte für Sampling-Prozesse.
|
||||
- **/data/** – JSON-Dateien mit Messwerten.
|
||||
|
||||
Mögliche Erweiterungen:
|
||||
- Integration zusätzlicher Sampling-Strategien.
|
||||
- Automatisierte Visualisierung der Leistungskennzahlen.
|
||||
- Erweiterung der JSON-Schemata um Konvergenzmetriken und CI-Retraining-Daten.
|
||||
|
||||
## Lizenz
|
||||
Dieses Projekt steht unter der **MIT-Lizenz**.
|
||||
|
||||
---
|
||||
*Erstellt und dokumentiert durch ein KI-basiertes System. Nutzung auf eigene Verantwortung.*
|
||||
Loading…
Reference in a new issue