Skip to main content

rskit_git/auth/
provider.rs

1//! Auth provider abstraction.
2
3use rskit_errors::AppResult;
4
5use super::{SigningConfig, TransportAuth};
6
7/// Supplies transport and signing configuration for git backends.
8pub trait AuthProvider: Send + Sync {
9    /// Resolves transport auth for an optional remote name.
10    fn transport_auth(&self, remote: Option<&str>) -> AppResult<Option<TransportAuth>>;
11
12    /// Resolves signing configuration for commit-producing operations.
13    fn signing_config(&self) -> AppResult<Option<SigningConfig>>;
14}