@@ -125,8 +125,9 @@ def update_sdks():
125125 generated_test_exists = os .path .isdir (generated_test_path )
126126
127127 if arm_module :
128- logging .info ("Delete source code of resourcemanager module %s" , artifact )
129- shutil .rmtree (os .path .join (module_path , "src" , "main" ))
128+ logging .info ("Delete generated source code of resourcemanager module %s" , artifact )
129+ shutil .rmtree (os .path .join (module_path , "src" , "main" , "resources" ), ignore_errors = True )
130+ delete_generated_source_code (os .path .join (module_path , "src" , "main" , "java" ))
130131
131132 logging .info (f"Generate for module { artifact } " )
132133 try :
@@ -168,6 +169,28 @@ def update_sdks():
168169 logging .error (f"Failed modules { failed_modules } " )
169170
170171
172+ def delete_generated_source_code (path : str ) -> None :
173+ autorest_generated_header = "Code generated by Microsoft (R) AutoRest Code Generator"
174+ typespec_generated_header = "Code generated by Microsoft (R) TypeSpec Code Generator"
175+ if os .path .exists (path ):
176+ for file in os .listdir (path ):
177+ cur_path = os .path .join (path , file )
178+ if os .path .isdir (cur_path ):
179+ # Recurse into subdirectory
180+ delete_generated_source_code (cur_path )
181+ else :
182+ try :
183+ # Read file content and check for header
184+ with open (cur_path , 'r' , encoding = 'utf-8' ) as f :
185+ content = f .read ()
186+ if autorest_generated_header in content or typespec_generated_header in content :
187+ os .remove (cur_path ) # Delete the file
188+ except Exception as e :
189+ # Skip files that can't be read (binary files, permission issues)
190+ print (f"Warning: Could not process file { cur_path } : { e } " )
191+ continue
192+
193+
171194def main ():
172195 global sdk_root
173196
0 commit comments