feat: archive zoo_backup for home sync

This commit is contained in:
Patrick Plate
2026-06-24 19:27:05 +02:00
parent 02844e4c4a
commit 038e546963
133 changed files with 19953 additions and 0 deletions
@@ -0,0 +1,146 @@
---
name: vmhalling-eau-test
description: Run EAU integration tests on vmhalling CENTER instance (Zentrale.120 + Mandant.JB). Deploy JAR, prepare test data, run in CENTER mode, verify DB changes and logs. Use when asked to test EAU on vmhalling, run CENTER integration test, or verify EAU changes on a real PAISY instance.
---
# vmhalling EAU Integration Test
## When to use
- Testing EAU module changes on a real PAISY CENTER instance
- Verifying CENTER-mode behavior (multi-mandant loop via connections.csv)
- Testing writeRequestData / loadReturnXml flows end-to-end
- Deploying and running EAU.jar on vmhalling
## When NOT to use
- Unit tests (use `mvn test` locally)
- Testing on Package/CLIENT instances (use `ssh-test-deploy` skill with qa host)
- Testing modules other than EAU on vmhalling
## Environment
| Item | Value |
|------|-------|
| Host | `halling` (oracle@vmhalling.ad.esi.adp.com) |
| Zentrale | `/user2/mkn/Zentrale.120` (RunType=CENTER) |
| Mandant.JB | `/user2/mkn/Mandant.JB` (RunType=CLIENT/Package) |
| Java | `WEB/JAVA/jdk17.0.17-0/bin/java` (relative to instance) |
| JAR path | `<instance>/JAR/EAU.jar` |
| connections.csv | `Zentrale.120/ADMIN/SETTINGS/connections.csv` (MJB, TS8, MA1, FUB) |
| H2 DB | `<instance>/ELSDAP/eau.mv.db` |
| SSH auth | ed25519 key in authorized_keys (scp works directly) |
| Batch scripts | `BATCH/SCRIPTS/PST_eau.ksh` |
## RunType Configuration
EAU determines RunType via `CommonRoutines.isCenter()` / `CommonRoutines.islocal()`:
| RunType | Env var | Routes to |
|---------|---------|-----------|
| CENTER | `RMZ_KUNDE=DEUEV` | `Center.java` (multi-mandant loop) |
| CLIENT | `RMZ_KUNDE=<anything else>` or `SVBEA_KUNDE=<anything else>` | `Package.java` (single mandant) |
| PACKAGE | Neither set | `Package.java` (no mandant kürzel) |
## Workflow
### 1. Switch to vmhalling host
```python
set-host(host="halling")
```
### 2. Build and deploy EAU.jar
```bash
# Build locally
cd /Users/pplate/git/paisy-<TICKET_KEY>
mvn package -pl :EAU -am -DskipTests -f java/pom.xml -Drevision=100.0.0-TEST -o -q
# Deploy via scp (SSH key already configured)
scp -o StrictHostKeyChecking=no \
java/modules/cs-modules/eau/target/EAU-*-TEST-jar-with-dependencies.jar \
oracle@vmhalling.ad.esi.adp.com:/user2/mkn/Zentrale.120/JAR/EAU.jar
# Also deploy to Mandant.JB if testing CLIENT path
scp -o StrictHostKeyChecking=no \
java/modules/cs-modules/eau/target/EAU-*-TEST-jar-with-dependencies.jar \
oracle@vmhalling.ad.esi.adp.com:/user2/mkn/Mandant.JB/JAR/EAU.jar
```
### 3. Prepare test data (if needed)
To make Anforderungen "ready to send" (triggers writeRequestData):
```bash
# H2 Shell access
export JAVA=/user2/mkn/Zentrale.120/WEB/JAVA/jdk17.0.17-0/bin/java
$JAVA -cp /user2/mkn/Zentrale.120/JAR/EAU.jar org.h2.tools.Shell \
-url "jdbc:h2:file:/user2/mkn/Mandant.JB/ELSDAP/eau" -user sa -password ""
# Null out AGTOSV_ID to make Anforderungen sendable again
UPDATE ADP_EAU_ANFORDERUNGEAUAG SET AGTOSV_ID = NULL WHERE AGTOSV_ID IS NOT NULL;
```
### 4. Run on Mandant.JB (CLIENT/Package mode — creates AGTOSVs)
```bash
cd /user2/mkn/Mandant.JB && source ADMIN/SETTINGS/PAISYPROFILE
export JAVA_HOME=/user2/mkn/Zentrale.120/WEB/JAVA/jdk17.0.17-0
export PATH=$JAVA_HOME/bin:$PATH
java -jar JAR/EAU.jar --targetdir $PAISY_OUTPUT
```
### 5. Run on Zentrale.120 (CENTER mode — iterates connections.csv)
```bash
cd /user2/mkn/Zentrale.120 && source ADMIN/SETTINGS/PAISYPROFILE
export JAVA_HOME=/user2/mkn/Zentrale.120/WEB/JAVA/jdk17.0.17-0
export PATH=$JAVA_HOME/bin:$PATH
export RMZ_KUNDE=DEUEV # ← triggers CENTER mode!
java -jar JAR/EAU.jar --targetdir $PAISY_OUTPUT
```
### 6. Verify results
```bash
# Check DB for changes
$JAVA -cp /user2/mkn/Zentrale.120/JAR/EAU.jar org.h2.tools.Shell \
-url "jdbc:h2:file:/user2/mkn/Mandant.JB/ELSDAP/eau" -user sa -password "" \
-sql "SELECT sd.AKTENZEICHENVERURSACHER FROM ADP_EAU_STEUERUNGSDATEN sd"
# Check exported XML files
ls -la /user2/mkn/Zentrale.120/USER/master/OUTPUT/EEAA*
# Check logs for WARN messages
# (output is inline from java -jar command)
```
### 7. Store results in BigMind
```python
memory_store_fact(
category="codebase",
fact=f"{TICKET_KEY}: SSH integration test on vmhalling CENTER — <result summary>"
)
```
## Key Tables (H2)
| Table | Purpose |
|-------|---------|
| `ADP_EAU_STEUERUNGSDATEN` | Contains AKTENZEICHENVERURSACHER (AZVU) |
| `ADP_EAU_ANFORDERUNGEAUAG` | Anforderungen (AGTOSV_ID=null = ready to send) |
| `ADP_EAU_AGTOSV` | Created AGTOSVs (sent containers) |
| `ADP_EAU_ANTRAG` | Anträge (parent of Anforderungen) |
## Troubleshooting
| Issue | Resolution |
|-------|------------|
| `java: not found` | Use full path: `WEB/JAVA/jdk17.0.17-0/bin/java` |
| Runs through Package.java instead of Center.java | Set `export RMZ_KUNDE=DEUEV` before running |
| "Nothing to send" | Null out AGTOSV_ID on Anforderungen to make them sendable |
| scp permission denied | SSH key should be in `~oracle/.ssh/authorized_keys` on vmhalling |
| Upload timeout via MCP | Use scp directly (92MB JAR too large for 60s MCP timeout) |
| H2 version warning | Non-blocking — H2 2.4.240 works fine |