Skip to content

Docker-Image für Experiment Automation (Product-Module) - #41

Open
snowball77 wants to merge 12 commits into
masterfrom
product-module
Open

snowball77 wants to merge 12 commits into
masterfrom
product-module

Conversation

@snowball77

Copy link
Copy Markdown
Contributor

Closes #40

Zusammenfassung

Docker-Image, das Experiment Automation als standalone Eclipse-RCP-Product baut und headless ausführt. Enthält SSJ-Simulation-Engine und ArchitecturalTemplates-Fixes (zwei PR-Branches im Dockerfile gemergt).

Änderungen

releng/org.palladiosimulator.experimentautomation.product.docker/

Datei Beschreibung
Dockerfile 3-Stage-Build: AT → EA → Runtime; installiert GTK3+Xvfb
docker-entrypoint.sh Startet Xvfb, führt Eclipse aus, propagiert Exit-Code
pom.xml Maven-Modul (pom-packaging)
.dockerignore Ignoriert alles (Build nutzt git clone)
README.md Build- und Run-Anleitung (deutsch)
AGENTS.md Agentenkontext-Dokumentation

Nutzung

docker build --platform linux/amd64 -t experiment-automation:latest \
  -f releng/org.palladiosimulator.experimentautomation.product.docker/Dockerfile .

docker run --rm --platform linux/amd64 \
  -v /pfad/zu/experimenten:/experiments:ro \
  -v /pfad/zu/workspace:/data \
  -e EA_CONSOLE_LOG=true \
  experiment-automation:latest \
  /experiments/mein-experiment.experiments

Status

  • Build und Runtime getestet (macOS Apple Silicon via QEMU)
  • Headless-Experiment: Exit-Code 0
  • Workspace unter /data (bind-mount)
  • Console-Log via EA_CONSOLE_LOG=true konfigurierbar

Align with Palladio-Build-MavenParent#65 which upgrades the
parent POM from 2.7.5 to 4.0.13. Also set executionEnvironment
to JavaSE-17 to prevent autodetection of JavaSE-21 on JDK 21.

Reference: PalladioSimulator/Palladio-Build-MavenParent#65
- 3-stage multi-repo Dockerfile (AT + EA, linux/amd64)
- pom.xml, .dockerignore, AGENTS.md
…ace, EA_CONSOLE_LOG

- docker-entrypoint.sh: starts Xvfb (SWT/GTK headless), runs Eclipse,
  propagates exit code
- README.md: build & run documentation (German)
- Dockerfile: install GTK3 + Xvfb, add VOLUME /data, ENV EA_CONSOLE_LOG
- AGENTS.md: update key files, usage, status
…nfig.ini

- Add product extension to application plugin.xml (cosmetic, not used
  by equinox.app in headless mode)
- Strip eclipse.product from config.ini in Dockerfile so equinox.app
  never tries to resolve it
- Use -application flag instead of -product in entrypoint
@snowball77

Copy link
Copy Markdown
Contributor Author

Update: "Product could not be found" Warnung gefixt.
Ursache: config.ini enthielt eclipse.product=... aber kein Bundle registriert das Product als Extension.
Fix: eclipse.product wird im Dockerfile aus config.ini entfernt; Entrypoint nutzt -application statt -product.
Image aktualisiert: snowball77/experiment-automation:latest

…ClosedWorkloadVariation

- caseSetValueProvider now parses values directly instead of using
  SetValueProviderStrategy (which always returns Double)
- isAllIntegers()/getToken() helpers determine whether to use Long or Double
- Revert experiment file back to MemoryDatasource (FileDatasource /data
  fails on macOS; stale-ID fix now makes MemoryDatasource work correctly)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Docker-Image für Experiment Automation (Product-Module)

1 participant