Strange behaviour of launching of ubuntu with cloud init with different pools

I have a strange situation on a system with two storage pools, when I launch installation with:

lxc launch -s one images:ubuntu/jammy/cloud test --vm -c limits.cpu=2 -c limits.memory=2GB -c cloud-init.user-data="$UC"

cloud-init is being run as it should, but when I use the other storage which is default:

lxc launch -s default images:ubuntu/jammy/cloud test --vm -c limits.cpu=2 -c limits.memory=2GB -c cloud-init.user-data="$UC"

cloud init is ignored and I can see in the log:

cloud-init.log:2023-01-29 16:09:32,065 - modules.py[INFO]: Skipping modules 'wireguard,snap,ubuntu_autoinstall,keyboard,apt-pipelining,ubuntu-advantage,ntp,timezone,disable-ec2-metadata,runcmd' because no applicable config is provided.

Could you please point me what can be wrong and how to debug it eventually?

($UC content is identical in both cases of course)
(both storage pools are on ZFS, on two different zfs pools)

Hi, @RandomUser,
Can you post the output of those commands?

lxc storage list
lxc storage show one
lxc storage show default

Regards.

$ lxc storage list
+---------+--------+------------+-------------+---------+---------+
|  NAME   | DRIVER |   SOURCE   | DESCRIPTION | USED BY |  STATE  |
+---------+--------+------------+-------------+---------+---------+
| default | zfs    | zfs/lxd    |             | 14      | CREATED |
+---------+--------+------------+-------------+---------+---------+
| one     | zfs    | apo/LXD    |             | 4       | CREATED |
+---------+--------+------------+-------------+---------+---------+

$ lxc storage show one 
config:
  source: apo/LXD
  volatile.initial_source: apo/LXD
  zfs.pool_name: apo/LXD
description: ""
name: one
driver: zfs
used_by:
- /1.0/images/0e298c868b7bd278e62e7376bf25d739660d821a8e0c2b276abc4166f37b9634
- /1.0/images/ce07b6220f572efd4ec34a30dbf3e1ab0752f59dd9f46e5e28cc48dc72c47465
- /1.0/images/fb1a8be510aa69f21ba35653effd319c6872a02323e5aa12c7463e74276fc689
- /1.0/instances/mymachine
status: Created
locations:
- none

$ lxc storage show default 
config:
  source: zfs/lxd
  volatile.initial_source: zfs/lxd
  zfs.pool_name: zfs/lxd
description: ""
name: default
driver: zfs
used_by:
- /1.0/images/0e298c868b7bd278e62e7376bf25d739660d821a8e0c2b276abc4166f37b9634
- /1.0/images/2d282cb7d76b8783d4bd5f8d15454303ccd2cf0073a447dff901cbdaf8ad4d4d
- /1.0/images/bc0eba73215036607788c488616c451e511f935864baa21c3b1bd6c222c49f53
- /1.0/images/ce07b6220f572efd4ec34a30dbf3e1ab0752f59dd9f46e5e28cc48dc72c47465
- /1.0/instances/harmina
- /1.0/instances/head
- /1.0/instances/relief
- /1.0/instances/na
- /1.0/instances/nb
- /1.0/instances/nc
- /1.0/instances/nd
- /1.0/profiles/default
- /1.0/storage-pools/default/volumes/image/16e27f3863ea7afe958966d67531a6ec2a3c5f5b8dda1b514bf63cb016f3ac6d
- /1.0/storage-pools/default/volumes/image/dac05c5309085422395beb0857329c7ef7ed5913bfd1b7f1bb34d77a1a2b169e
status: Created
locations:
- none

I have another interesting observation, on both pools cloud-init works correctly when I launch the ubuntu-daily:jammy but in a container, not a VM, with the same cloud-init config on all instances as above.

OK, so following my previous post, instead of using images:ubuntu/jammy/cloud, I used to create a VM on both pools ubuntu-daily:jammy. It works as it should.

So my problem is solved, as there is no difference between functionality of both images for my purposes - but the images:ubuntu/jammy/cloud is definitely somewhat broken.

Yes, probably, fine you have solved the issue.
Regards.

@monstermunchkin sounds like there maybe a cloud init issue in the distrobuilder ubuntu vm images.