@@ -201,7 +201,7 @@ impl ResourceDiscovery for CommandDiscovery {
201
201
info ! ( "{}" , t!( "discovery.commandDiscovery.discoverResources" , kind = kind : { : ?} , filter = filter) ) ;
202
202
203
203
// if kind is DscResource and DSC_RESOURCE_PATH is not defined, we need to discover extensions first
204
- if * kind == DiscoveryKind :: Resource && env :: var ( "DSC_RESOURCE_PATH" ) . is_err ( ) {
204
+ if * kind == DiscoveryKind :: Resource {
205
205
self . discover ( & DiscoveryKind :: Extension , "*" ) ?;
206
206
}
207
207
@@ -286,10 +286,9 @@ impl ResourceDiscovery for CommandDiscovery {
286
286
if manifest. kind == Some ( Kind :: Adapter ) {
287
287
trace ! ( "{}" , t!( "discovery.commandDiscovery.adapterFound" , adapter = resource. type_name) ) ;
288
288
insert_resource ( & mut adapters, & resource, true ) ;
289
- } else {
290
- trace ! ( "{}" , t!( "discovery.commandDiscovery.resourceFound" , resource = resource. type_name) ) ;
291
- insert_resource ( & mut resources, & resource, true ) ;
292
289
}
290
+ trace ! ( "{}" , t!( "discovery.commandDiscovery.resourceFound" , resource = resource. type_name) ) ;
291
+ insert_resource ( & mut resources, & resource, true ) ;
293
292
}
294
293
}
295
294
}
@@ -563,11 +562,9 @@ impl ResourceDiscovery for CommandDiscovery {
563
562
564
563
// TODO: This should be a BTreeMap of the resource name and a BTreeMap of the version and DscResource, this keeps it version sorted more efficiently
565
564
fn insert_resource ( resources : & mut BTreeMap < String , Vec < DscResource > > , resource : & DscResource , skip_duplicate_version : bool ) {
566
- if resources. contains_key ( & resource. type_name ) {
567
- let Some ( resource_versions) = resources. get_mut ( & resource. type_name ) else {
568
- resources. insert ( resource. type_name . clone ( ) , vec ! [ resource. clone( ) ] ) ;
569
- return ;
570
- } ;
565
+ debug ! ( "Inserting resource: {} version {} from {}" , resource. type_name, resource. version, resource. directory) ;
566
+ if let Some ( resource_versions) = resources. get_mut ( & resource. type_name ) {
567
+ debug ! ( "Resource '{}' already exists, checking versions" , resource. type_name) ;
571
568
// compare the resource versions and insert newest to oldest using semver
572
569
let mut insert_index = resource_versions. len ( ) ;
573
570
for ( index, resource_instance) in resource_versions. iter ( ) . enumerate ( ) {
0 commit comments