pub trait BootstrapPlugin: Send + Sync {
// Required methods
fn name(&self) -> &'static str;
fn phases(&self) -> Vec<&'static str>;
fn should_activate(&self, repo_root: &PathBuf) -> bool;
fn run(&self, context: PluginContext<'_>) -> Result<PluginOutcome>;
}Expand description
Trait that bootstrap plugins must implement
Required Methods§
Sourcefn name(&self) -> &'static str
fn name(&self) -> &'static str
The name of this plugin (e.g., “rust-cargo”, “python-pyproject”)
Sourcefn should_activate(&self, repo_root: &PathBuf) -> bool
fn should_activate(&self, repo_root: &PathBuf) -> bool
Returns true if this plugin should be auto-activated for the given repository
Sourcefn run(&self, context: PluginContext<'_>) -> Result<PluginOutcome>
fn run(&self, context: PluginContext<'_>) -> Result<PluginOutcome>
Execute the bootstrap for this plugin