With fs set to fat32, the partitions are not mounted after creating and formatting the partitions.
It use to work but then after a rebase, some few changes introduced the regression.
After investigation, I found the culprit commit :
commit 94fedb2c0c8a97ceb7c9b153aefa81c8d94ce57b
Date: Tue Mar 19 17:43:42 2024 +0000
actions: image-partition: enable creation of FAT{12|16|32} partitions
This one added more options when it comes to creating FAT partitions. So when partition fs is defined as "fat", "fat12", "fat16", "fat32", "msdos" or "vfat", then mkfs.vfat is used to create the partition, and different options were used depending on the FAT type.
The main issue is that mounting a FAT partition should use "vfat"
as fs type when using syscall.Mount().
So, in order to fix this issue, "vfat" is simply used to mount "fat", "fat12", "fat16", "fat32" or "msdos" partitions.
I created a pull request with a proposed fix here.
Assuming the following YAML section to generate the image :
With fs set to fat32, the partitions are not mounted after creating and formatting the partitions. It use to work but then after a rebase, some few changes introduced the regression.
After investigation, I found the culprit commit : commit 94fedb2c0c8a97ceb7c9b153aefa81c8d94ce57b Date: Tue Mar 19 17:43:42 2024 +0000 actions: image-partition: enable creation of FAT{12|16|32} partitions
This one added more options when it comes to creating FAT partitions. So when partition fs is defined as "fat", "fat12", "fat16", "fat32", "msdos" or "vfat", then mkfs.vfat is used to create the partition, and different options were used depending on the FAT type.
The main issue is that mounting a FAT partition should use "vfat" as fs type when using syscall.Mount().
So, in order to fix this issue, "vfat" is simply used to mount "fat", "fat12", "fat16", "fat32" or "msdos" partitions. I created a pull request with a proposed fix here.