pub struct ProcessSshRunner;Expand description
OpenSSH-backed runner using argument arrays and piped standard I/O.
Implementations§
Source§impl ProcessSshRunner
impl ProcessSshRunner
Sourcepub fn run_snapshot_session<EventSink, Verifier, VerifyError>(
&self,
invocation: &SshInvocation,
request: SnapshotSessionRequest<'_>,
artifact_spool: &mut CreateOnlyArtifactSpool,
cancellation: &CancellationToken,
on_event: EventSink,
verify_artifact: Verifier,
) -> Result<SnapshotSessionOutcome, SshSnapshotSessionError>where
EventSink: FnMut(RemoteBuildEvent),
Verifier: FnOnce(&mut File, &Utf8Path, &SnapshotArtifactDescriptor) -> Result<ProtocolPath, VerifyError>,
pub fn run_snapshot_session<EventSink, Verifier, VerifyError>(
&self,
invocation: &SshInvocation,
request: SnapshotSessionRequest<'_>,
artifact_spool: &mut CreateOnlyArtifactSpool,
cancellation: &CancellationToken,
on_event: EventSink,
verify_artifact: Verifier,
) -> Result<SnapshotSessionOutcome, SshSnapshotSessionError>where
EventSink: FnMut(RemoteBuildEvent),
Verifier: FnOnce(&mut File, &Utf8Path, &SnapshotArtifactDescriptor) -> Result<ProtocolPath, VerifyError>,
Run one full-duplex framed snapshot build through the fixed OpenSSH invocation.
Successful protocol completion and a zero OpenSSH exit authorize the artifact
guard. The caller must still invoke CreateOnlyArtifactSpool::commit after
its own supporting-output checks.
§Errors
Distinguishes validated session failures from secret-free transport failures.
Trait Implementations§
Source§impl Clone for ProcessSshRunner
impl Clone for ProcessSshRunner
impl Copy for ProcessSshRunner
Source§impl Debug for ProcessSshRunner
impl Debug for ProcessSshRunner
Source§impl Default for ProcessSshRunner
impl Default for ProcessSshRunner
Source§impl SshRunner for ProcessSshRunner
impl SshRunner for ProcessSshRunner
Source§fn exchange(
&self,
invocation: &SshInvocation,
request: &[u8],
cancellation: &CancellationToken,
) -> Result<Vec<u8>, SshTransportError>
fn exchange( &self, invocation: &SshInvocation, request: &[u8], cancellation: &CancellationToken, ) -> Result<Vec<u8>, SshTransportError>
Send one bounded JSON request and return one bounded JSON response. Read more
Auto Trait Implementations§
impl Freeze for ProcessSshRunner
impl RefUnwindSafe for ProcessSshRunner
impl Send for ProcessSshRunner
impl Sync for ProcessSshRunner
impl Unpin for ProcessSshRunner
impl UnsafeUnpin for ProcessSshRunner
impl UnwindSafe for ProcessSshRunner
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