pub struct Release {
pub mode: ReleaseMode,
pub commands: Vec<String>,
pub timeout_minutes: u64,
pub version_files: Vec<VersionFile>,
}Expand description
[release]: releasing without GitHub Actions. Opt-in per repository.
Fields§
§mode: ReleaseModeReleaseMode::Actions (default: nothing changes) or
ReleaseMode::Local.
commands: Vec<String>Shell commands run in order, from a clean checkout of the merge commit,
once the tag is pushed. The first failure stops the list. They see
MAGI_RELEASE_VERSION, MAGI_RELEASE_TAG, MAGI_RELEASE_COMMIT and
MAGI_RELEASE_PR in the environment; {{ ... }} cannot carry the
version because teravars renders the whole file before any release
exists. Only read when mode = "local".
timeout_minutes: u64Minutes each command may run before it is killed and counted as failed.
version_files: Vec<VersionFile>Files whose version a release bump rewrites, for repositories whose
manifest is not a root Cargo.toml (a Tauri app keeps it under
src-tauri/, with the app version repeated in package.json and
tauri.conf.json). Empty (default) means the root Cargo.toml and
nothing else. The first entry is the version of record - the file the
repository’s own auto-tag.yml reads - and must be kind = "cargo".
Never detected: see crate::release_manifest.
Implementations§
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Release
impl<'de> Deserialize<'de> for Release
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>,
Auto Trait Implementations§
impl Freeze for Release
impl RefUnwindSafe for Release
impl Send for Release
impl Sync for Release
impl Unpin for Release
impl UnsafeUnpin for Release
impl UnwindSafe for Release
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<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