Browse Source

[ci][attachconfig]support subfolders

guotong ma 1 year ago
parent
commit
2d55efba84

+ 0 - 0
bsp/stm32/stm32f407-rt-spark/.ci/attachconfig/aht21.attach → bsp/stm32/stm32f407-rt-spark/.ci/attachconfig/peripheral/aht21.attach


+ 0 - 0
bsp/stm32/stm32f407-rt-spark/.ci/attachconfig/ap3216c.attach → bsp/stm32/stm32f407-rt-spark/.ci/attachconfig/peripheral/ap3216c.attach


+ 0 - 0
bsp/stm32/stm32f407-rt-spark/.ci/attachconfig/ethernet_28j60.attach → bsp/stm32/stm32f407-rt-spark/.ci/attachconfig/peripheral/ethernet_28j60.attach


+ 0 - 0
bsp/stm32/stm32f407-rt-spark/.ci/attachconfig/fal_easyflash.attach → bsp/stm32/stm32f407-rt-spark/.ci/attachconfig/peripheral/fal_easyflash.attach


+ 0 - 0
bsp/stm32/stm32f407-rt-spark/.ci/attachconfig/filesystem.attach → bsp/stm32/stm32f407-rt-spark/.ci/attachconfig/peripheral/filesystem.attach


+ 0 - 0
bsp/stm32/stm32f407-rt-spark/.ci/attachconfig/icm20608.attach → bsp/stm32/stm32f407-rt-spark/.ci/attachconfig/peripheral/icm20608.attach


+ 0 - 0
bsp/stm32/stm32f407-rt-spark/.ci/attachconfig/lcd_st7787.attach → bsp/stm32/stm32f407-rt-spark/.ci/attachconfig/peripheral/lcd_st7787.attach


+ 0 - 0
bsp/stm32/stm32f407-rt-spark/.ci/attachconfig/led_matrix.attach → bsp/stm32/stm32f407-rt-spark/.ci/attachconfig/peripheral/led_matrix.attach


+ 0 - 0
bsp/stm32/stm32f407-rt-spark/.ci/attachconfig/lvgl.attach → bsp/stm32/stm32f407-rt-spark/.ci/attachconfig/peripheral/lvgl.attach


+ 0 - 0
bsp/stm32/stm32f407-rt-spark/.ci/attachconfig/rs485.attach → bsp/stm32/stm32f407-rt-spark/.ci/attachconfig/peripheral/rs485.attach


+ 0 - 0
bsp/stm32/stm32f407-rt-spark/.ci/attachconfig/rw007.attach → bsp/stm32/stm32f407-rt-spark/.ci/attachconfig/peripheral/rw007.attach


+ 0 - 0
bsp/stm32/stm32f407-rt-spark/.ci/attachconfig/spi_flash_w25q64.attach → bsp/stm32/stm32f407-rt-spark/.ci/attachconfig/peripheral/spi_flash_w25q64.attach


+ 0 - 0
bsp/stm32/stm32f407-rt-spark/.ci/attachconfig/sram.attach → bsp/stm32/stm32f407-rt-spark/.ci/attachconfig/peripheral/sram.attach


+ 0 - 0
bsp/stm32/stm32f407-rt-spark/.ci/attachconfig/usb_mouse.attach → bsp/stm32/stm32f407-rt-spark/.ci/attachconfig/peripheral/usb_mouse.attach


+ 16 - 10
tools/ci/bsp_buildings.py

@@ -1,6 +1,4 @@
 import os
-import re
-import glob
 import shutil
 import multiprocessing
 
@@ -108,7 +106,10 @@ def build_bsp_attachconfig(bsp, attach_file):
     config_bacakup = config_file+'.origin'
     shutil.copyfile(config_file, config_bacakup)
 
-    append_file(attach_file, config_file)
+    attachconfig_dir = os.path.join(rtt_root, 'bsp', bsp, '.ci/attachconfig')
+    attach_path = os.path.join(attachconfig_dir, attach_file)
+
+    append_file(attach_path, config_file)
 
     res = build_bsp(bsp)
 
@@ -145,18 +146,23 @@ if __name__ == "__main__":
         print("::endgroup::")
 
         attach_dir = os.path.join(rtt_root, 'bsp', bsp, '.ci/attachconfig')
-        attach_files = glob.glob(os.path.join(attach_dir, '*.attach'))
-        for attach_file in attach_files:
+        attach_list = []
+        for root, dirs, files in os.walk(attach_dir):
+            for file in files:
+                file_path = os.path.join(root, file)
+                relative_path = os.path.relpath(file_path, attach_dir)
+                attach_list.append(relative_path)
+
+        for attach_file in attach_list:
             count += 1
-            attach = os.path.basename(attach_file)
-            print(f"::group::\tCompiling BSP: =={count}=== {bsp} {attach}===")
+            print(f"::group::\tCompiling BSP: =={count}=== {bsp} {attach_file}===")
             res = build_bsp_attachconfig(bsp, attach_file)
             if not res:
-                print(f"::error::build {bsp} {attach} failed.")
-                add_summary(f'\t- ❌ build {attach} failed.')
+                print(f"::error::build {bsp} {attach_file} failed.")
+                add_summary(f'\t- ❌ build {attach_file} failed.')
                 failed += 1
             else:
-                add_summary(f'\t- ✅ build {attach} success.')
+                add_summary(f'\t- ✅ build {attach_file} success.')
             print("::endgroup::")
 
     exit(failed)