8f472a0443
- Integrate etcd-client for distributed coordination and leader election - Add remote client macros with proper formatting for all services - Implement RequestMetrics for tracking RPC performance and errors - Add rate limiting mechanism across all service endpoints - Create ElectionRequest and ElectionResult message types for leader election - Add role management with primary/replica switching capabilities - Implement health checker with automatic failover detection - Add repository count metrics for cluster monitoring - Update Cargo.toml with etcd-client and dashmap dependencies - Modify RepoEntry to include read_only flag for replica handling - Implement should_accept_election logic to prevent duplicate elections - Add RoleChangedEvent handling for cluster role updates
14 lines
449 B
Rust
14 lines
449 B
Rust
//! Repository snapshot and move operations.
|
|
//!
|
|
//! Supports:
|
|
//! - Creating snapshots (git bundle) of repositories for backup
|
|
//! - Restoring snapshots to new or existing repositories
|
|
//! - Moving repositories between cluster nodes
|
|
//! - Listing and deleting snapshots
|
|
|
|
pub mod ops;
|
|
pub mod storage;
|
|
|
|
pub use ops::{create_snapshot, restore_snapshot, verify_snapshot};
|
|
pub use storage::{LocalSnapshotStorage, SnapshotInfo, SnapshotStorageBackend};
|