@@ -346,7 +346,7 @@ impl Configurator {
346346 let mut progress = ProgressBar :: new ( resources. len ( ) as u64 , self . progress_format ) ?;
347347 let discovery = & mut self . discovery . clone ( ) ;
348348 for resource in resources {
349- let evaluated_name = self . evaluate_resource_name ( & resource) ?;
349+ let evaluated_name = self . evaluate_resource_name ( & resource. name ) ?;
350350
351351 progress. set_resource ( & evaluated_name, & resource. resource_type ) ;
352352 progress. write_activity ( format ! ( "Get '{evaluated_name}'" ) . as_str ( ) ) ;
@@ -426,7 +426,7 @@ impl Configurator {
426426 let mut progress = ProgressBar :: new ( resources. len ( ) as u64 , self . progress_format ) ?;
427427 let discovery = & mut self . discovery . clone ( ) ;
428428 for resource in resources {
429- let evaluated_name = self . evaluate_resource_name ( & resource) ?;
429+ let evaluated_name = self . evaluate_resource_name ( & resource. name ) ?;
430430
431431 progress. set_resource ( & evaluated_name, & resource. resource_type ) ;
432432 progress. write_activity ( format ! ( "Set '{evaluated_name}'" ) . as_str ( ) ) ;
@@ -580,7 +580,7 @@ impl Configurator {
580580 let mut progress = ProgressBar :: new ( resources. len ( ) as u64 , self . progress_format ) ?;
581581 let discovery = & mut self . discovery . clone ( ) ;
582582 for resource in resources {
583- let evaluated_name = self . evaluate_resource_name ( & resource) ?;
583+ let evaluated_name = self . evaluate_resource_name ( & resource. name ) ?;
584584
585585 progress. set_resource ( & evaluated_name, & resource. resource_type ) ;
586586 progress. write_activity ( format ! ( "Test '{evaluated_name}'" ) . as_str ( ) ) ;
@@ -659,7 +659,7 @@ impl Configurator {
659659 let resources = self . config . resources . clone ( ) ;
660660 let discovery = & mut self . discovery . clone ( ) ;
661661 for resource in & resources {
662- let evaluated_name = self . evaluate_resource_name ( resource) ?;
662+ let evaluated_name = self . evaluate_resource_name ( & resource. name ) ?;
663663
664664 progress. set_resource ( & evaluated_name, & resource. resource_type ) ;
665665 progress. write_activity ( format ! ( "Export '{evaluated_name}'" ) . as_str ( ) ) ;
@@ -926,7 +926,7 @@ impl Configurator {
926926 /// expressions and literals appropriately.
927927 ///
928928 /// # Arguments
929- /// * `resource ` - The resource whose name should be evaluated
929+ /// * `name ` - The resource name that should be evaluated
930930 ///
931931 /// # Returns
932932 /// * `String` - The evaluated resource name
@@ -937,14 +937,13 @@ impl Configurator {
937937 /// - Resource name expression evaluation fails
938938 /// - Expression does not result in a string value
939939 /// - Statement parser encounters invalid syntax
940- fn evaluate_resource_name ( & mut self , resource : & Resource ) -> Result < String , DscError > {
941- // skip resources that were created from copy loops (they already have evaluated names)
942- if resource. copy . is_some ( ) {
943- return Ok ( resource. name . clone ( ) ) ;
940+ fn evaluate_resource_name ( & mut self , name : & str ) -> Result < String , DscError > {
941+ if self . context . process_mode == ProcessMode :: Copy {
942+ return Ok ( name. to_string ( ) ) ;
944943 }
945944
946945 // evaluate the resource name (handles both expressions and literals)
947- let Value :: String ( evaluated_name) = self . statement_parser . parse_and_execute ( & resource . name , & self . context ) ? else {
946+ let Value :: String ( evaluated_name) = self . statement_parser . parse_and_execute ( name, & self . context ) ? else {
948947 return Err ( DscError :: Parser ( t ! ( "configure.mod.nameResultNotString" ) . to_string ( ) ) )
949948 } ;
950949
0 commit comments