pub struct VerifyReleaseConfig {
pub enabled: bool,
pub assert_assets: bool,
pub assert_landing: bool,
pub install_smoke: Option<InstallSmokeConfig>,
pub glibc_ceiling: Option<String>,
}Expand description
Top-level verify_release: block.
See the module-level docs for the verification lifecycle. The gate is a
no-op unless enabled: true.
Fields§
§enabled: boolWhether to run the post-release verification gate at all. Default
false — the gate is opt-in because it needs the published release to
already exist (it runs after publish) and, for install-smoke, a Docker
daemon.
assert_assets: boolAssert that every produced artifact has a matching uploaded asset on
the published release, and that every signature / certificate / SBOM
asset the resolved signs: / sboms: config demands exists there too
(derived from config + the artifact set, so a sign or SBOM stage that
silently produced nothing still fails the gate with the exact missing
names; intentional skips — if: falsy, skip: truthy, --skip=sign —
create no expectations). Default true (no extra config: anodizer
already knows the produced set and can fetch the release’s asset list).
Independent of Docker and the network smoke-test.
assert_landing: boolAssert that every publisher that succeeded this run actually LANDED:
each published crate version is visible on the crates.io sparse index,
each npm package version is visible on its registry, each uploaded
blob object exists in its bucket, and each uploaded snap is live in
the Snap Store’s channel map (catching a manual-review hold that
parked the revision outside every channel). Default true (no extra
config: the run’s own publish report already carries every coordinate
the probes need). Publishers that did not run — or did not succeed —
are skipped.
install_smoke: Option<InstallSmokeConfig>Per-package install smoke-test images. When None, smoke-testing is
off. When present, each package type that produced an artifact is
installed in its (configured or default) container and <bin> --version is run.
glibc_ceiling: Option<String>glibc version ceiling, e.g. "2.36". When any glibc-linked .deb
requires a glibc NEWER than this floor, the gate reports it and exits
non-zero. None (the default) disables the libc check entirely. musl
binaries have no glibc requirement and are skipped.
Implementations§
Source§impl VerifyReleaseConfig
impl VerifyReleaseConfig
Sourcepub fn assert_assets_enabled(&self) -> bool
pub fn assert_assets_enabled(&self) -> bool
Whether the asset-existence check should run: only when the whole gate
is enabled AND assert_assets is set.
Sourcepub fn glibc_check_enabled(&self) -> bool
pub fn glibc_check_enabled(&self) -> bool
Whether the libc-ceiling check should run: only when the whole gate is enabled AND a ceiling was configured.
Sourcepub fn landing_checks_enabled(&self) -> bool
pub fn landing_checks_enabled(&self) -> bool
Whether the per-publisher landing checks should run: only when the
whole gate is enabled AND assert_landing is set.
Trait Implementations§
Source§impl Clone for VerifyReleaseConfig
impl Clone for VerifyReleaseConfig
Source§fn clone(&self) -> VerifyReleaseConfig
fn clone(&self) -> VerifyReleaseConfig
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 VerifyReleaseConfig
impl Debug for VerifyReleaseConfig
Source§impl Default for VerifyReleaseConfig
impl Default for VerifyReleaseConfig
Source§impl<'de> Deserialize<'de> for VerifyReleaseConfigwhere
VerifyReleaseConfig: Default,
impl<'de> Deserialize<'de> for VerifyReleaseConfigwhere
VerifyReleaseConfig: Default,
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 VerifyReleaseConfig
Source§impl JsonSchema for VerifyReleaseConfig
impl JsonSchema for VerifyReleaseConfig
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
$ref keyword. Read moreSource§impl PartialEq for VerifyReleaseConfig
impl PartialEq for VerifyReleaseConfig
Source§impl Serialize for VerifyReleaseConfig
impl Serialize for VerifyReleaseConfig
impl StructuralPartialEq for VerifyReleaseConfig
Auto Trait Implementations§
impl Freeze for VerifyReleaseConfig
impl RefUnwindSafe for VerifyReleaseConfig
impl Send for VerifyReleaseConfig
impl Sync for VerifyReleaseConfig
impl Unpin for VerifyReleaseConfig
impl UnsafeUnpin for VerifyReleaseConfig
impl UnwindSafe for VerifyReleaseConfig
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
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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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.