Production Readiness
Current production-readiness status across eSHARS services. A gap here is a risk — not a blocker, but something that needs a plan.
Last reviewed: 2026-04-06
Services
| Service | Owner | Runbook | Monitoring | Rollback Plan | OS/Runtime EOL | Notes |
|---|---|---|---|---|---|---|
wa-eshars-prod (HISD Web) | Leon | ✅ Release Process | ✅ App Insights | ✅ Slot swap | ✅ | |
wa-eshars-nonprod (all slots) | Leon | ✅ Release Process | ✅ App Insights | ✅ Slot swap | ✅ | |
eshars-mobile-api | Leon | ✅ Release Process | ✅ App Insights | ✅ Pipeline rollback | ✅ | |
eshars-mobile-ui (Flutter) | Leon | ❌ No runbook | ❌ No monitoring | ❌ No formal rollback | ✅ | Mobile app — store review cycle complicates rollback |
eshars-mgmt (portal) | Leon | ❌ No runbook | ⚠️ Unknown | ❌ No formal rollback | ✅ | |
vm-ssrs16-prod (SSRS/SQL) | Leon | ⚠️ VM Troubleshooting partial | ❌ No health alerts | ⚠️ Manual failover only | ❌ WS2012R2 + SQL2016 EOL | Critical risk — see vm-ssrs16-prod |
vm-sql16-np (SSRS nonprod) | Leon | ⚠️ Partial | ❌ No health alerts | ⚠️ Manual only | ❌ WS2012R2 + SQL2016 EOL | Same risk as prod SSRS VM |
vm-jobscheduler-prod | Leon | ⚠️ OOM restart only | ✅ OOM alert + auto-restart | ❌ No general runbook | ✅ | |
aa-eshars-prod (Azure Automation) | Leon | ✅ Azure Automation Runbooks | ⚠️ No alerts on failed jobs | N/A | ✅ | ~12 runbooks on deprecated RunAs auth |
db-eshars-prod (Azure SQL) | Leon | ✅ Database Failover | ✅ Azure SQL metrics | ✅ Backup & Restore | ✅ | |
| App Gateway (nonprod/training) | Leon | ❌ No runbook | ⚠️ Unknown | ❌ No documented rollback | ✅ | Fronts nonprodreports.myeshars.com, trainingreports.myeshars.com |
kv-eshars-* (Key Vaults) | Leon | ✅ EDI Credential Rotation partial | ❌ No expiry alerts | N/A | ✅ | No secret expiry monitoring — secrets could expire silently |
Legend
| Symbol | Meaning |
|---|---|
| ✅ | In place and adequate |
| ⚠️ | Partial / needs improvement |
| ❌ | Missing |
Top Gaps
These are the highest-risk gaps — prioritized by impact:
-
vm-ssrs16-prodOS/SQL EOL — Windows Server 2012 R2 and SQL Server 2016 are end-of-life. No security patches. HIPAA/compliance risk. Full VM rebuild required. See vm-ssrs16-prod.md for the remediation plan. -
Key Vault secret expiry monitoring — No alerts configured when secrets approach expiry. A silently expired secret would cause auth failures in production (TMHP, SFTP, App Service config). Add Azure Monitor alerts on Key Vault secret expiry.
-
Azure Automation deprecated auth — ~12 runbooks still use
AzureRunAsConnection(Service Principal / RunAs). Microsoft deprecated RunAs accounts in Sept 2023. Migrate to Managed Identity before the accounts stop working. -
Mobile app rollback — No documented procedure for rolling back a bad iOS/Android release. App store review cycles mean a hotfix takes hours to days. Document the emergency process (TestFlight rollback, phased rollout revert).
-
eshars-mgmt monitoring — Unknown whether Application Insights is configured. Verify and add if missing.
-
App Gateway runbook — No documented procedure for App Gateway configuration changes or failures. Low frequency but high impact if it goes down.