pub struct Application { /* private fields */ }Implementations§
Source§impl Application
impl Application
Sourcepub fn local_state() -> Self
pub fn local_state() -> Self
Construct the explicit local-state capability graph used only by plan-independent show/monitor/approval/artifact-verification operations.
Sourcepub fn from_canonical_config(config: &CanonicalConfig) -> Result<Self, NxdError>
pub fn from_canonical_config(config: &CanonicalConfig) -> Result<Self, NxdError>
Construct the application from an already-evaluated configuration.
Composition verifies every declared provider/secret executable, records immutable digests, and refuses missing capabilities. Concrete in-core PVE/PBS/SOPS runtimes are not constructed here.
pub fn from_canonical_config_with_linked( config: &CanonicalConfig, linked: &LinkedProviderRegistry, ) -> Result<Self, NxdError>
Sourcepub fn from_canonical_inventory(
config: &CanonicalConfig,
) -> Result<Self, NxdError>
pub fn from_canonical_inventory( config: &CanonicalConfig, ) -> Result<Self, NxdError>
Construct the inventory-only application used by canonical read paths.
This validates desired state without composing provider or secret executables. Operations requiring live observation must use the complete application graph instead.
pub fn external_runtime(&self) -> &ExternalRuntimeGraph
pub fn from_plan(plan: &PlanEnvelope) -> Result<Self, NxdError>
pub fn from_plan_with_linked( plan: &PlanEnvelope, linked: &LinkedProviderRegistry, ) -> Result<Self, NxdError>
pub fn validate( &self, request: ValidateRequest, ) -> Result<ValidationReport, NxdError>
pub fn render_config(source: ConfigSource) -> Result<CanonicalConfig, NxdError>
Sourcepub fn render_config_inventory(
source: ConfigSource,
) -> Result<CanonicalConfig, NxdError>
pub fn render_config_inventory( source: ConfigSource, ) -> Result<CanonicalConfig, NxdError>
Load canonical inventory without forcing target build outputs. Lifecycle planning performs selection against this value before requesting outputs.
Sourcepub fn render_target_inventory(
source: ConfigSource,
hostname: &str,
include_lifecycle_artifacts: bool,
) -> Result<CanonicalConfig, NxdError>
pub fn render_target_inventory( source: ConfigSource, hostname: &str, include_lifecycle_artifacts: bool, ) -> Result<CanonicalConfig, NxdError>
Evaluate the lazy canonical inventory for one already-resolved exact target. Non-install lifecycle commands omit reserved takeover artifacts before Nix forces their derivations.
Sourcepub fn render_config_for_hosts(
source: ConfigSource,
requested_hosts: &[String],
) -> Result<CanonicalConfig, NxdError>
pub fn render_config_for_hosts( source: ConfigSource, requested_hosts: &[String], ) -> Result<CanonicalConfig, NxdError>
Load the same canonical site while retaining build outputs only for the already-resolved deployment targets.
pub fn resolve_target_outputs( source: &ConfigSource, config: &mut CanonicalConfig, requested_hosts: &[String], ) -> Result<(), NxdError>
pub fn resolve_target_outputs_with_logger( source: &ConfigSource, config: &mut CanonicalConfig, requested_hosts: &[String], logger: &Logger, ) -> Result<(), NxdError>
pub fn plan(&self, request: PlanRequest) -> Result<PlanEnvelope, NxdError>
pub fn plan_with_progress( &self, request: PlanRequest, logger: Logger, ) -> Result<PlanEnvelope, NxdError>
pub fn exec_plan( &self, request: PlanRequest, argv: Vec<String>, ) -> Result<PlanEnvelope, NxdError>
pub fn exec_plan_with_progress( &self, request: PlanRequest, argv: Vec<String>, logger: Logger, ) -> Result<PlanEnvelope, NxdError>
pub fn info(&self, request: InfoRequest) -> Result<InfoReport, NxdError>
pub fn apply(&self, request: ApplyRequest) -> Result<ApplyReport, NxdError>
pub fn apply_with_progress( &self, request: ApplyRequest, logger: Logger, ) -> Result<ApplyReport, NxdError>
Sourcepub fn create_approval(
&self,
request: CreateApprovalRequest,
) -> Result<ApprovalEvidence, NxdError>
pub fn create_approval( &self, request: CreateApprovalRequest, ) -> Result<ApprovalEvidence, NxdError>
Create digest-bound approval evidence for a reviewed plan (no mutation).
Sourcepub fn validate_approval(
&self,
request: ValidateApprovalRequest,
) -> Result<(), NxdError>
pub fn validate_approval( &self, request: ValidateApprovalRequest, ) -> Result<(), NxdError>
Import and validate approval evidence against a plan without applying.
pub fn show_run(&self, run_id: Option<&str>) -> Result<Value, NxdError>
pub fn monitor_run(&self, run_id: &str) -> Result<MonitorRunReport, NxdError>
pub fn cancel_run(&self, run_id: &str) -> Result<CancelRunReport, NxdError>
pub fn verify( &self, request: VerifyRequest, ) -> Result<VerificationReport, NxdError>
pub fn capture( &self, request: CaptureRequest, ) -> Result<CaptureReport, NxdError>
pub fn capture_with_progress( &self, request: CaptureRequest, logger: Logger, ) -> Result<CaptureReport, NxdError>
pub fn artifact_build( &self, request: ArtifactBuildRequest, ) -> Result<ArtifactBuildReport, NxdError>
pub fn artifact_verify(&self, manifest: &Path) -> Result<(), NxdError>
pub fn show_config( &self, selectors: &[String], ) -> Result<CanonicalConfig, NxdError>
pub fn show_plan(&self, path: &Path) -> Result<PlanDisplay, NxdError>
Auto Trait Implementations§
impl !Freeze for Application
impl !RefUnwindSafe for Application
impl Send for Application
impl Sync for Application
impl Unpin for Application
impl UnsafeUnpin for Application
impl !UnwindSafe for Application
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<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request§impl<L> LayerExt<L> for L
impl<L> LayerExt<L> for L
§fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
Layered].