Hi everyone. I made a AMD64 image the other day for a gateway, and came across a interesting thing:
{
"type": "model",
"series": "16",
"authority-id": "",
"brand-id": "",
"model": "my-ubuntucore",
"architecture": "amd64",
"timestamp": "2023-04-01T12:00:00.0Z",
"base": "core20",
"grade": "dangerous",
"snaps": [
{
"name": "my-gadget",
"type": "gadget"
},
{
"name": "pc-kernel",
"type": "kernel",
"default-channel": "20/stable",
"id": "UqFziVZDHLSyO3TqSWgNBoAdHbLI4dAH"
},
{
"name": "core20",
"type": "base",
"default-channel": "latest/stable",
"id": "DLqre5XGLbDqg9jPtiAhRRjDuPVa5X1q"
},
{
"name": "snapd",
"type": "snapd",
"default-channel": "latest/stable",
"id": "PMrrV4ml8uWuEUDBT8dSGnKUYbevVhc4"
}
]
}
After building the image and booting it on my gateway, it refused to install, and could not find a snap-declaration for the kernel snap.
I just realised that I used the wrong snap-id for the pc-kernel snap, and used the pc
snap’s id in its place.
So, the snap-id does not match for the kernel. I would have thought that ubuntu-image should have caught this somehow?
Can there be checks inserted during image creation to verify the snap id in the model file against the actual snap that is downloaded/used?
Currently using the latest version of ubuntu-image. (3.0+snap20)