I use cockpit in an embedded device, and it can happen that the power is suddenly cut off. So the file system is not synchronized and the last file system actions are lost.
If generating the self-signed certificate was one of them, you end up with empty files. And the next time you reboot, cockpit won't be able to start because cockpit-certificate-ensure will fail.
These commits prevent failure on empty files and force a new generation. In addition, we explicitly request file system synchronization after generation.
I use cockpit in an embedded device, and it can happen that the power is suddenly cut off. So the file system is not synchronized and the last file system actions are lost.
If generating the self-signed certificate was one of them, you end up with empty files. And the next time you reboot, cockpit won't be able to start because
cockpit-certificate-ensure
will fail.These commits prevent failure on empty files and force a new generation. In addition, we explicitly request file system synchronization after generation.