version: "1.0.1" name: verify-persistence description: > Verify persistence.xml configuration before git push. Use before pushing code to ensure persistence.xml uses environment variables instead of hardcoded JNDI names. Prevents QA deployment failures. disable-model-invocation: true allowed-tools: Read, Grep, Bash
Verify Persistence Configuration
Check src/main/resources/META-INF/persistence.xml for deployment readiness.
Steps
- Read persistence.xml at
src/main/resources/META-INF/persistence.xml
- Check JNDI datasources - Must use environment variables:
${JDBC_DATASOURCE} (not jdbc/coop, jdbc/rhDS, etc.)${JDBC_AUDIT_DATASOURCE} (not jdbc/ruhunuAudit, etc.)
- Check DDL generation paths - Must NOT contain hardcoded paths:
- No
eclipselink.application-location with c:/tmp/ or /home/*/tmp/
- Report findings clearly:
- If all correct: "Persistence.xml is deployment-ready"
- If issues found: List each issue with the current value and what it should be
What's Correct vs Wrong
| Setting | Correct | Wrong | |
|---|
| Main datasource | ${JDBC_DATASOURCE} | jdbc/coop, jdbc/rhDS | |
| Audit datasource | ${JDBC_AUDIT_DATASOURCE} | jdbc/ruhunuAudit | |
| DDL location | Not present or env var | c:/tmp/, /home/buddhika/tmp/ | |
If Issues Found
Offer to fix by replacing hardcoded values with environment variables. Do NOT auto-fix without user confirmation.