spin_trigger/cli/
variable.rs1use spin_factor_variables::VariablesFactor;
2use spin_factors::RuntimeFactors;
3use spin_factors_executor::ExecutorHooks;
4
5pub struct VariablesValidatorHook;
7
8#[spin_core::async_trait]
9impl<F: RuntimeFactors, U> ExecutorHooks<F, U> for VariablesValidatorHook {
10 async fn configure_app(
11 &self,
12 configured_app: &spin_factors::ConfiguredApp<F>,
13 ) -> anyhow::Result<()> {
14 let variables_factor_app_state = configured_app.app_state::<VariablesFactor>()?;
15
16 let expression_resolver = variables_factor_app_state.expression_resolver();
17 expression_resolver.ensure_required_variables_resolvable()?;
18
19 Ok(())
20 }
21}