LXD VM - how to set disk size?

Is it possible to set VM disk size?

Something akin to --disk from multipass:

multipass launch 20.04 -v --disk 10G --name testvm

I know I can resize the disk using qemu-img, but a handy shortcut like --disk in multipass would be great.

Alternatively, how to add a disk of a given size to an existing LXD VM?

You can set that with:
lxc config device override [vm name] root size=15GB

Right, but that only resized the disk, but not the filesystem. So one needs to boot up the VM, remove the partition, readd it, reboot, resize the fs etc.

“multipass launch 20.04 -v --disk 10G --name testvm” launches a VM with a filesystem which is already 10 GB in size and ready to use.

lxc init lets you create without starting.

You need an image which supports resizing on boot, not all do.