pub struct GithubVerifiedArtifactStore<R> { /* private fields */ }Expand description
Concrete independent GitHub artifact verifier and private local cache.
Implementations§
Source§impl<R> GithubVerifiedArtifactStore<R>
impl<R> GithubVerifiedArtifactStore<R>
Sourcepub fn new(
transport: GithubTransport<R>,
cache_root: impl AsRef<Path>,
) -> Result<Self, GithubArtifactStoreError>
pub fn new( transport: GithubTransport<R>, cache_root: impl AsRef<Path>, ) -> Result<Self, GithubArtifactStoreError>
Bind a dedicated GitHub transport to an existing private cache root.
§Errors
Rejects relative, aliased, linked, non-directory, or group/world-accessible cache roots. Unix roots must have no group or other permission bits.
Sourcepub fn cache_root(&self) -> &Utf8Path
pub fn cache_root(&self) -> &Utf8Path
Return the canonical private cache root.
Sourcepub fn into_transport(self) -> GithubTransport<R>
pub fn into_transport(self) -> GithubTransport<R>
Consume the store and recover its dedicated transport.
Trait Implementations§
Source§impl<R: GhRunner + Send> VerifiedArtifactStore for GithubVerifiedArtifactStore<R>
impl<R: GhRunner + Send> VerifiedArtifactStore for GithubVerifiedArtifactStore<R>
Source§fn supports_listing(&self) -> bool
fn supports_listing(&self) -> bool
Whether verified manifest enumeration is implemented.
Source§fn supports_download(&self) -> bool
fn supports_download(&self) -> bool
Whether verified no-clobber download is implemented.
Source§fn supports_removal(&self) -> bool
fn supports_removal(&self) -> bool
Whether exact retained-artifact deletion is implemented.
Source§fn supports_signed_cleanup_evidence(&self) -> bool
fn supports_signed_cleanup_evidence(&self) -> bool
Whether this verifier can produce attempt-scoped signed-cleanup evidence from raw reports.
Source§fn list_verified(
&mut self,
context: &GithubArtifactContext,
) -> RemoteBuildResult<Vec<ArtifactManifest>>
fn list_verified( &mut self, context: &GithubArtifactContext, ) -> RemoteBuildResult<Vec<ArtifactManifest>>
Return only independently verified manifests, or an empty vector while pending. Read more
Source§fn verified_run_evidence(
&mut self,
context: &GithubArtifactContext,
) -> RemoteBuildResult<Option<GithubVerifiedRunEvidence>>
fn verified_run_evidence( &mut self, context: &GithubArtifactContext, ) -> RemoteBuildResult<Option<GithubVerifiedRunEvidence>>
Return evidence produced by the same independent verification as
Self::list_verified. Read moreSource§fn download_verified(
&mut self,
context: &GithubArtifactContext,
request: &ArtifactDownloadRequest,
) -> RemoteBuildResult<ArtifactDownloadResult>
fn download_verified( &mut self, context: &GithubArtifactContext, request: &ArtifactDownloadRequest, ) -> RemoteBuildResult<ArtifactDownloadResult>
Download and independently verify one exact manifest artifact. Read more
Source§fn remove_artifacts(
&mut self,
_context: &GithubArtifactContext,
) -> RemoteBuildResult<()>
fn remove_artifacts( &mut self, _context: &GithubArtifactContext, ) -> RemoteBuildResult<()>
Delete only artifacts owned by the exact mapped run. Read more
Auto Trait Implementations§
impl<R> Freeze for GithubVerifiedArtifactStore<R>where
GithubTransport<R>: Freeze,
impl<R> RefUnwindSafe for GithubVerifiedArtifactStore<R>where
GithubTransport<R>: RefUnwindSafe,
impl<R> Send for GithubVerifiedArtifactStore<R>where
GithubTransport<R>: Send,
impl<R> Sync for GithubVerifiedArtifactStore<R>where
GithubTransport<R>: Sync,
impl<R> Unpin for GithubVerifiedArtifactStore<R>where
GithubTransport<R>: Unpin,
impl<R> UnsafeUnpin for GithubVerifiedArtifactStore<R>where
GithubTransport<R>: UnsafeUnpin,
impl<R> UnwindSafe for GithubVerifiedArtifactStore<R>where
GithubTransport<R>: UnwindSafe,
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