4.0 KiB
4.0 KiB
Skill: ssh-test-deploy
Deploy and test a module JAR on a PAISY SSH test instance.
Invoked by
💻 Code mode (or 🪃 Orchestrator delegating to Code)
Required Inputs
| Input | Source | Example |
|---|---|---|
TICKET_KEY |
Jira issue key | ESIDEPAISY-12081 |
MODULE |
PAISY module name | eau, eubp, svmeldungen, dabpv |
PROGRAM |
PAI program to run | PAI022, PAIBATCH, PAI030 |
PROGRAM_ARGS |
Program arguments (optional) | "-eau", "-svmeldungen DSAK" |
Steps
1. List available test instances
list-instances()
Pick an appropriate instance based on module and availability. If the user has a preferred instance, use that.
2. Select the instance
set-instance(instance="<chosen instance>")
3. Build the module JAR locally
cd /Users/pplate/git/paisy-<TICKET_KEY>
mvn package -pl java/modules/cs-modules/<MODULE> -am -DskipTests -f java/pom.xml
Locate the built JAR:
find java/modules/cs-modules/<MODULE>/target -name "*.jar" -not -name "*-sources.jar" | head -1
4. Upload JAR to instance
upload-file(
localPath="/Users/pplate/git/paisy-<TICKET_KEY>/java/modules/cs-modules/<MODULE>/target/<MODULE>-<version>.jar",
remoteFilename="<MODULE>-<version>.jar"
)
5. Run the program
run-program(
program="<PROGRAM>",
args="<PROGRAM_ARGS>"
)
For common programs:
| Program | Purpose | Typical args |
|---|---|---|
PAI022 |
SV-Meldeverfahren batch | "-svmeldungen DSAK", "-svmeldungen DSBD" |
PAIBATCH |
General batch runner | module-specific |
PAI030 |
Lohnsteuer | "-lstb" |
PAI028 |
SVD import | (no args, reads SVD.XML) |
6. Parse output
Check the program output for errors:
# PAISY error responses start with "F;"
# Success responses typically start with "0;" or contain "RC=0"
| Pattern | Meaning | Action |
|---|---|---|
F; prefix |
PAISY error | Log error, report to user |
RC=0 |
Success | Continue |
RC=4 |
Warning | Log warning, review output |
RC=8 or higher |
Error | Log error, investigate |
7. Verify with shell command (optional)
exec-command(command="ls -la /path/to/output/")
exec-command(command="cat /path/to/logfile.log | tail -50")
8. Log results to BigMind
memory_store_fact(
category="codebase",
fact=f"{TICKET_KEY}: SSH test on <instance> — {PROGRAM} {PROGRAM_ARGS} → RC={rc}. <summary>"
)
memory_append_chunk(
session_id=SESSION_ID,
content=f"SSH test deploy for {TICKET_KEY}:\nInstance: <instance>\nProgram: {PROGRAM}\nResult: <output summary>",
flag_reason="SSH test result"
)
Expected Output
- Module JAR built and uploaded to test instance
- Program executed with output captured
- Results logged to BigMind
- Error/success status reported to user
Error Handling
| Error | Resolution |
|---|---|
| No instances available | list-instances() returns empty — ask user to check VPN/SSH access |
| Build failure | Check Maven output for compilation errors, fix before retrying |
| Upload failure | Verify instance is reachable, check disk space with exec-command("df -h") |
F; response |
Parse error code, check ADP Docs Wiki for error meaning |
RC=15 |
Often means SVD.XML is outdated — run PAI028 first to import fresh SVD data |
| Connection timeout | Instance may be down — try another instance from list-instances() |
Common Workflows
EAU test
set-instance(instance="Nadine.123")
run-program(program="PAI022", args="-eau")
SVMeldungen DSAK test
set-instance(instance="Tanja.122")
run-program(program="PAI022", args="-svmeldungen DSAK")
Full batch test
# First update SVD data
run-program(program="PAI028")
# Then run the batch
run-program(program="PAIBATCH", args="<module-specific>")
Language
- Log entries and BigMind facts: English
- Error descriptions from PAISY: German (preserve as-is)
- User-facing summaries: match user's language