-
Notifications
You must be signed in to change notification settings - Fork 35
Open
Labels
needs triageThis is a new issue that needs to be triaged.This is a new issue that needs to be triaged.
Description
Use Case / Problem
Users need to clone or recover a database using point-in-time restore (PITR) for incident recovery, testing, or creating a snapshot for dev. Today this requires manual steps and careful copying of IDs/timestamps, which is error-prone and hard to automate.
Proposed Solution
Add a restore mode to create for *.SQLDatabase that provisions a new database by restoring from a source database backup at a given point in time, identified by itemId and workspaceId.
Sample command:
create dbname.SQLDatabase -p "mode=restore,restorePointInTime=<timestamp>,itemId=<guid>,workspaceId=<guid>"
Expected behavior:
- Validate
restorePointInTimeformat and provide examples (e.g., ISO 8601 with timezone). - Validate GUID formats for
itemIdandworkspaceId. - Provide clear errors for permission/source-not-found/restore-window violations.
Alternatives Considered
- Performing restore manually in the Fabric UI (not automatable and more error-prone).
Impact Assessment
- This aligns with Microsoft Fabric roadmap items
Implementation Attestation
- I understand this feature should maintain backward compatibility with existing commands
- I confirm this feature request does not introduce performance regressions for existing workflows
- I acknowledge that new features must follow fabric-cli's established patterns and conventions
Implementation Notes
If the restore operation is long-running, consider returning an operation handle and/or allowing --wait behavior consistent with other long-running create operations.
Metadata
Metadata
Assignees
Labels
needs triageThis is a new issue that needs to be triaged.This is a new issue that needs to be triaged.