@@ -46,27 +46,35 @@ public static IResourceBuilder<AdminerContainerResource> AddAdminer(this IDistri
4646        } 
4747        else 
4848        { 
49-             var  AdminerContainer  =  new  AdminerContainerResource ( name ) ; 
50-             var  AdminerContainerBuilder  =  builder . AddResource ( AdminerContainer ) 
49+             var  adminerContainer  =  new  AdminerContainerResource ( name ) ; 
50+             var  adminerContainerBuilder  =  builder . AddResource ( adminerContainer ) 
5151                                               . WithImage ( AdminerContainerImageTags . Image ,  AdminerContainerImageTags . Tag ) 
5252                                               . WithImageRegistry ( AdminerContainerImageTags . Registry ) 
5353                                               . WithHttpEndpoint ( targetPort :  8080 ,  port :  port ,  name :  AdminerContainerResource . PrimaryEndpointName ) 
5454                                               . WithUrlForEndpoint ( AdminerContainerResource . PrimaryEndpointName ,  e =>  e . DisplayText  =  "Adminer Dashboard" ) 
5555                                               . ExcludeFromManifest ( ) ; 
5656
57-             var  assembly  =  Assembly . GetExecutingAssembly ( ) ; 
58-             var  stream  =  assembly . GetManifestResourceStream ( "CommunityToolkit.Aspire.Hosting.Adminer.login-servers.php" )  ??  throw  new  InvalidOperationException ( "Unable to load embedded resource 'login-servers.php'." ) ; 
59-             var  tempFile  =  Path . GetTempFileName ( ) ; 
57+             adminerContainerBuilder . WithContainerFiles ( 
58+                 destinationPath :  "/var/www/html/plugins-enabled" , 
59+                 callback :  async  ( context ,  ct )  => 
60+                 { 
61+                     var  assembly  =  Assembly . GetExecutingAssembly ( ) ; 
62+                     using  var  stream  =  assembly . GetManifestResourceStream ( "CommunityToolkit.Aspire.Hosting.Adminer.login-servers.php" )  ??  throw  new  InvalidOperationException ( "Unable to load embedded resource 'login-servers.php'." ) ; 
6063
61-             using  ( var  fileStream  =  new  FileStream ( tempFile ,  FileMode . Create ,  FileAccess . Write ) ) 
62-             { 
63-                 stream . CopyTo ( fileStream ) ; 
64-             } 
64+                     using  var  reader  =  new  StreamReader ( stream ) ; 
65+                     var  contents  =  await  reader . ReadToEndAsync ( ct ) ; 
6566
66-             // Refactor this to use WithContainerFiles API when Aspire 9.2 available 
67-             AdminerContainerBuilder . WithBindMount ( tempFile ,  "/var/www/html/plugins-enabled/login-servers.php" ,  isReadOnly :  true ) ; 
67+                     return  [ 
68+                         new  ContainerFile 
69+                         { 
70+                             Contents  =  contents , 
71+                             Name  =  "login-servers.php" , 
72+                         } 
73+                     ] ; 
74+                 } 
75+             ) ; 
6876
69-             return  AdminerContainerBuilder ; 
77+             return  adminerContainerBuilder ; 
7078        } 
7179    } 
72- } 
80+ } 
0 commit comments