pub struct DiscordEventsConfig {Show 14 fields
pub version_release: Option<bool>,
pub github_tag: Option<bool>,
pub github_release: Option<bool>,
pub crates_io: Option<bool>,
pub npm: Option<bool>,
pub linear: Option<bool>,
pub cargo_dist: Option<bool>,
pub oci: Option<bool>,
pub workers_deploy: Option<bool>,
pub kubernetes_deploy: Option<bool>,
pub deploy: Option<bool>,
pub openapi: Option<bool>,
pub issues: Option<bool>,
pub commit: Option<bool>,
}Expand description
Per-event toggles for Discord notifications.
Omitted keys use each event’s default (most enabled; intermediate
github_tag / github_release default off so a single
version_release summary does not triple-notify).
[discord]
enabled = true
webhook_url = "${DISCORD_WEBHOOK_URL}"
username = "XBP"
[discord.events]
version_release = true
crates_io = true
npm = true
workers_deploy = true
issues = true
commit = trueFields§
§version_release: Option<bool>Full release summary (xbp version release) including notes excerpt.
github_tag: Option<bool>Git tag created/pushed (intermediate; default off to avoid spam).
github_release: Option<bool>GitHub Release object created (intermediate; default off).
crates_io: Option<bool>crates.io package publish succeeded.
npm: Option<bool>npmjs package publish succeeded.
linear: Option<bool>Linear initiative release post published.
cargo_dist: Option<bool>cargo-dist build / asset upload status.
oci: Option<bool>OCI image publish / deploy image verification.
workers_deploy: Option<bool>Cloudflare Workers deploy (one message per deploy batch).
kubernetes_deploy: Option<bool>Kubernetes deploy via xbp deploy (one message per run).
deploy: Option<bool>Generic non-k8s / non-workers deploy outcomes.
openapi: Option<bool>OpenAPI generation (xbp generate openapi).
issues: Option<bool>Issue creation from xbp issues sync (always grouped, never per-issue).
commit: Option<bool>Commits from xbp commit / xbp c (short message + SHA).
Implementations§
Source§impl DiscordEventsConfig
impl DiscordEventsConfig
pub fn is_enabled(&self, event: DiscordNotifyEvent) -> bool
pub fn set_event(&mut self, event: DiscordNotifyEvent, enabled: bool)
Trait Implementations§
Source§impl Clone for DiscordEventsConfig
impl Clone for DiscordEventsConfig
Source§fn clone(&self) -> DiscordEventsConfig
fn clone(&self) -> DiscordEventsConfig
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 DiscordEventsConfig
impl Debug for DiscordEventsConfig
Source§impl Default for DiscordEventsConfig
impl Default for DiscordEventsConfig
Source§fn default() -> DiscordEventsConfig
fn default() -> DiscordEventsConfig
Source§impl<'de> Deserialize<'de> for DiscordEventsConfig
impl<'de> Deserialize<'de> for DiscordEventsConfig
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 DiscordEventsConfig
Source§impl PartialEq for DiscordEventsConfig
impl PartialEq for DiscordEventsConfig
Source§impl Serialize for DiscordEventsConfig
impl Serialize for DiscordEventsConfig
impl StructuralPartialEq for DiscordEventsConfig
Auto Trait Implementations§
impl Freeze for DiscordEventsConfig
impl RefUnwindSafe for DiscordEventsConfig
impl Send for DiscordEventsConfig
impl Sync for DiscordEventsConfig
impl Unpin for DiscordEventsConfig
impl UnsafeUnpin for DiscordEventsConfig
impl UnwindSafe for DiscordEventsConfig
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<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.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> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more