Rollback Procedures
App Service Rollback (HISD, mobile-api, mgmt)
Using Deployment Slots
If the deployment used slot swapping:
# Swap back to the previous slotaz webapp deployment slot swap \ --resource-group <rg> \ --name <app-name> \ --slot staging \ --target-slot productionUsing Previous Deployment
# List recent deploymentsaz webapp log deployment list --name <app-name> --resource-group <rg>
# Redeploy previous artifact from Azure DevOpsaz pipelines run --name "<pipeline-name>" --branch <previous-good-commit>Database Rollback
Via DNS Swap (preferred — zero downtime)
If you created a snapshot before the change:
.\database\snapshots\restore-snapshot.ps1 \ -ResourceGroup <rg> \ -SnapshotServer <server> \ -SnapshotName <snapshot-name> \ -Alias primaryVia Point-in-Time Restore
.\database\snapshots\create-snapshot.ps1 \ -ResourceGroup <rg> \ -SqlServer <server> \ -DatabaseName <db> \ -PointInTime "2025-01-15T10:30:00Z"Then swap DNS to the restored copy.
Mobile App Rollback (mobile-ui)
- iOS: Contact Apple for expedited review or use Shorebird (if configured)
- Android: Roll back in Google Play Console > Release management
- Internal: Distribute previous build via App Center
Checklist After Rollback
- Verify application health endpoints
- Check error rates in Application Insights
- Notify the team in the incident channel
- Create a post-mortem document