OpenBSD also has cloud-init support now[1] which makes interaction with terraform and ansible much simpler.
While the big three do not have officially supported templates, a few providers do, including Exoscale (disclaimer: CTO there).
I thought there was an AWS AMI for OpenBSD though.
Vultr does let you boot up and install any ISO, so that's an option. Not a big provider, but...
It may be possible even without one, if you can somehow figure out how the boot process works. The most crazy successful attempt I made was performing deletion of the entire Linux root filesystem with a busybox shell running in RAM over SSH, and replacing it with to another unsupported distribution, then rewrite the grub.cfg, configure the network settings and trigger a clean filesystem sync and reboot via proc. Finally pray you'll see the server coming online again soon. It worked.
But providing a template is all it needs for the provider to support OpenBSD, unfortunately it is still unavailable. Is it that hard to provide a template?
So if your provider gives you the access to kvm console you just need to download bsd.rd, add GRUB entry and reboot. Do your install and you're a happy OpenBSD user in the cloud.
In the next step I think I'll automate that process with bash/ansible and autoinstall file.
In the end I just settled with FreeBSD when most stuff I used to use in Linux worked fine.
I really wish I could stay with OpenBSD. I don't want to call it but it does feel like it's becoming more of a research OS.