@@ -62,7 +62,7 @@ impl LocalLoader {
6262 )
6363 } ) ?;
6464 let mut locked = self
65- . load_manifest ( manifest)
65+ . load_manifest ( manifest, self . profile ( ) )
6666 . await
6767 . with_context ( || format ! ( "Failed to load Spin app from {}" , quoted_path( path) ) ) ?;
6868
@@ -82,8 +82,12 @@ impl LocalLoader {
8282 }
8383
8484 // Load the given manifest into a LockedApp, ready for execution.
85- pub ( crate ) async fn load_manifest ( & self , mut manifest : AppManifest ) -> Result < LockedApp > {
86- spin_manifest:: normalize:: normalize_manifest ( & mut manifest) ;
85+ pub ( crate ) async fn load_manifest (
86+ & self ,
87+ mut manifest : AppManifest ,
88+ profile : Option < & str > ,
89+ ) -> Result < LockedApp > {
90+ spin_manifest:: normalize:: normalize_manifest ( & mut manifest, profile) ;
8791
8892 manifest. validate_dependencies ( ) ?;
8993
@@ -166,33 +170,28 @@ impl LocalLoader {
166170 let component_requires_service_chaining = requires_service_chaining ( & component) ;
167171
168172 let source = self
169- . load_component_source ( id, component. source ( self . profile ( ) ) . clone ( ) )
173+ . load_component_source ( id, component. source . clone ( ) )
170174 . await
171- . with_context ( || {
172- format ! (
173- "Failed to load Wasm source {}" ,
174- component. source( self . profile( ) )
175- )
176- } ) ?;
175+ . with_context ( || format ! ( "Failed to load Wasm source {}" , component. source) ) ?;
177176
178177 let metadata = ValuesMapBuilder :: new ( )
179- . string ( "description" , component. description . clone ( ) )
178+ . string ( "description" , component. description )
180179 . string_array ( "allowed_outbound_hosts" , allowed_outbound_hosts)
181- . string_array ( "key_value_stores" , component. key_value_stores . clone ( ) )
182- . string_array ( "databases" , component. sqlite_databases . clone ( ) )
183- . string_array ( "ai_models" , component. ai_models . clone ( ) )
184- . serializable ( "build" , component. build ( self . profile ( ) ) ) ?
180+ . string_array ( "key_value_stores" , component. key_value_stores )
181+ . string_array ( "databases" , component. sqlite_databases )
182+ . string_array ( "ai_models" , component. ai_models )
183+ . serializable ( "build" , component. build ) ?
185184 . take ( ) ;
186185
187186 let dependencies = self
188187 . load_component_dependencies (
189188 id,
190189 component. dependencies_inherit_configuration ,
191- & component. dependencies ( self . profile ( ) ) ,
190+ & component. dependencies ,
192191 )
193192 . await ?;
194193
195- let env = component. environment ( self . profile ( ) ) . into_iter ( ) . collect ( ) ;
194+ let env = component. environment . into_iter ( ) . collect ( ) ;
196195
197196 let files = if component. files . is_empty ( ) {
198197 vec ! [ ]
0 commit comments