47 Troubleshooting Edge Image Builder (EIB) #
EIB is used to create custom SUSE Edge images.
- Wrong SCC code: Ensure the SCC code used in the EIB definition file matches the SL Micro version and architecture. 
- Missing dependencies: Ensure there are no missing packages or tools within the build environment. 
- Incorrect image size: For raw images, the - diskSizeparameter is required and it depends heavily on the images, RPMs, and other artifacts being included in the image.
- Permissions: If storing a script on the custom/files directory, ensure it has executable permissions as those files are just available at combustion time but no changes are performed by EIB. 
- Operating system group dependencies: When creating an image with custom users and groups, the groups being set as “ - primaryGroup” should be explicitly created.
- Operating system user’s sshkeys requires a home folder: When creating an image with users with sshkeys, the home folder needs to be created as well with - createHomeDir=true.
- Combustion issues: EIB relies on combustion for the customization of the OS and deployment of all the other SUSE Edge components. This also includes custom scripts being placed in the custom/scripts folder. Note that the combustion process is being executed at - initrdtime, so the system is not completely booted when the scripts are executed.
- Podman machine size: As explained in the EIB Tips and Tricks section (Part IV, “Tips and Tricks”), verify the podman machine has enough CPU/memory to run the EIB container on non-Linux operating systems. 
- EIB output: The console output of the - eib buildcommand is crucial.
- Build container logs: Check the logs of the build container. The logs are generated in the directory that was used to store the artifacts. Check - docker logsor- podman logsfor the necessary information as well.
- Temporary build directories: EIB creates temporary directories during the build process. Check these for intermediate logs or artifacts if the main output is insufficient. 
- Combustion logs: If the image being built with EIB does not boot for any reason, a root shell is available. Connect to the host console (either physically, via BMC, etc.) and check combustion logs with - journalctl -u combustionand in general all the operating system logs with- journalctlto find the root cause of the failure.
- Review - eib-buildoutput: The error message in the console output is usually very indicative.
- Check build environment: Ensure all prerequisites for EIB itself (for example, docker/podman, sufficient disk space) are met on the machine running EIB. 
- Inspect build container logs: Review the logs of the failed container for more detailed errors (see above). 
- Verify - eibconfiguration": Double-check the- eibconfiguration file for any typos or incorrect paths to source files or build scripts.- Test components individually: If your EIB build involves custom scripts or stages, run them independently to isolate failures.