pub struct RemotePrune { /* private fields */ }Expand description
Prune stale remote-tracking branches.
Connects to the remote to list its branches, then deletes the remote-tracking refs whose branch no longer exists there.
§Examples
use ironflow_ops_git::fetch::RemotePrune;
use ironflow_core::operation::Operation;
let op = RemotePrune::new("/path/to/repo", "origin");
assert_eq!(op.kind(), "git");Implementations§
Source§impl RemotePrune
impl RemotePrune
Sourcepub fn new(
repo_path: impl Into<PathBuf>,
remote_name: impl Into<String>,
) -> Self
pub fn new( repo_path: impl Into<PathBuf>, remote_name: impl Into<String>, ) -> Self
Create a new prune operation.
Sourcepub async fn run(
&self,
ctx: &OperationContext,
) -> Result<RemotePruneOutput, OperationError>
pub async fn run( &self, ctx: &OperationContext, ) -> Result<RemotePruneOutput, OperationError>
Execute and return a typed result.
§Errors
Returns OperationError::Secret if the secret store fails, and
OperationError::External if the connection or the prune fails. The
token never appears in the message.
Source§impl RemotePrune
impl RemotePrune
Sourcepub fn token_secret(self, key: impl Into<String>) -> Self
pub fn token_secret(self, key: impl Into<String>) -> Self
Read the HTTPS token from the secret key instead of git_token.
§Examples
use ironflow_ops_git::fetch::RemotePrune;
let op = RemotePrune::new("/path/to/repo", "origin").token_secret("gitlab_token");Trait Implementations§
Source§impl Operation for RemotePrune
impl Operation for RemotePrune
Source§fn execute<'life0, 'life1, 'async_trait>(
&'life0 self,
ctx: &'life1 OperationContext,
) -> Pin<Box<dyn Future<Output = Result<Value, OperationError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn execute<'life0, 'life1, 'async_trait>(
&'life0 self,
ctx: &'life1 OperationContext,
) -> Pin<Box<dyn Future<Output = Result<Value, OperationError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Execute the operation and return the result as JSON. Read more
Source§impl TypedOperation for RemotePrune
impl TypedOperation for RemotePrune
Source§type Output = RemotePruneOutput
type Output = RemotePruneOutput
The concrete output type that
Operation::execute produces.Auto Trait Implementations§
impl Freeze for RemotePrune
impl RefUnwindSafe for RemotePrune
impl Send for RemotePrune
impl Sync for RemotePrune
impl Unpin for RemotePrune
impl UnsafeUnpin for RemotePrune
impl UnwindSafe for RemotePrune
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more