pub struct CheckReporter {
pub channel: String,
pub name: String,
pub target_ref: Option<String>,
pub seal: Option<Seal>,
}Expand description
How the queue writes what CI found into the log (D49).
Off by default, and opt-in for the same reason
MergeQueue::set_journal is: the queue is a library, the identity
under which a check is reported belongs to whoever is running it,
and inventing a channel name here would put an unattributable
reporter in a signed, ordered record.
Fields§
§channel: StringThe channel the check is reported under.
name: StringThe check’s name, e.g. "ci/build".
target_ref: Option<String>The ref these subjects are proposed to land on, in the view’s
<repo>:<refname> form.
None leaves the check node-wide. A commit id names no
repository, so an unbound check is readable only by node-wide
readers – correct, and useless to the repository it is about.
seal: Option<Seal>How a report is turned into what this log will accept (D68).
None submits the op’s own bytes unsigned, which is right for a
queue whose sequencer admits them. A daemon’s policy does not:
it demands a signature, and with --require-scope a scope
naming its log and a recent head. Both live in the payload, so
this seals the whole submission rather than only signing it –
a signer alone would sign bytes the policy then rejected for
their scope, and the refusal would read as a key problem.
Trait Implementations§
Source§impl Clone for CheckReporter
impl Clone for CheckReporter
Source§fn clone(&self) -> CheckReporter
fn clone(&self) -> CheckReporter
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more