pub struct SpawnedBinary {
pub path: String,
pub content_hash: String,
pub version: Option<String>,
pub commit: Option<String>,
pub dirty: Option<String>,
}Expand description
Identity of the executable one spawn actually ran.
The content hash is taken from the bytes on disk AT SPAWN, which is the whole point: a restart that picks up an upgraded binary changes this hash while the deployment record’s deploy-time hash stays put, so the swap is a visible, reportable fact instead of an invisible one.
Fields§
§path: StringPath of the executable that was launched.
content_hash: StringLowercase hexadecimal SHA-256 digest of the executable bytes at spawn.
version: Option<String>Package version stamped into the binary. Present only when the spawned executable is this server’s own binary, which is the only executable whose build stamp this process can honestly claim to know.
commit: Option<String>Source commit stamped into the binary, under the same condition.
dirty: Option<String>Dirty-state token stamped into the binary, under the same condition.
Trait Implementations§
Source§impl Clone for SpawnedBinary
impl Clone for SpawnedBinary
Source§fn clone(&self) -> SpawnedBinary
fn clone(&self) -> SpawnedBinary
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for SpawnedBinary
impl Debug for SpawnedBinary
Source§impl<'de> Deserialize<'de> for SpawnedBinary
impl<'de> Deserialize<'de> for SpawnedBinary
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
impl Eq for SpawnedBinary
Source§impl PartialEq for SpawnedBinary
impl PartialEq for SpawnedBinary
Source§impl Serialize for SpawnedBinary
impl Serialize for SpawnedBinary
impl StructuralPartialEq for SpawnedBinary
Auto Trait Implementations§
impl Freeze for SpawnedBinary
impl RefUnwindSafe for SpawnedBinary
impl Send for SpawnedBinary
impl Sync for SpawnedBinary
impl Unpin for SpawnedBinary
impl UnsafeUnpin for SpawnedBinary
impl UnwindSafe for SpawnedBinary
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<M> EmbeddedConversationMessage for Mwhere
M: Serialize,
impl<M> EmbeddedConversationMessage for Mwhere
M: Serialize,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request