Possible to run `machine` executor on custom images?


#1

I believe the answer is already spelled out here in the docs clear-as-day … just wanted to make sure I’m not missing anything. Is it possible for us to run a custom GoogleImage under the machine executor type? I need to pack a lot of additional binaries into the base image to reduce test times. In case anyone is interesting about the use case - this needs to run outside docker since I will be doing nested virtualization with custom kernels.

Thanks in advance for any tips here.


#2

I believe this is not possible, no. Would you be looking to use a bootable ISO?


#3

Nah - trying to use vagrant with pre-baked libvirt images


#4

Ah right. In that case, what virtualisation system are you using? My quick search indicates that libvirt supports “KVM, Xen, VMware ESX, QEMU and other virtualization technologies”. I would assume that you could run at least some of those on a Machine executor.

If this is possible, I expect you’d be running VM software in a Machine (two layers of virtualisation), rather than the Machine becoming your emulator (one layer).


#5

KVM… GCE is the only big cloud provider (Azure / AWS/ GCE) that seems to have kvm nested virt at the moment (Azure requires hyper-v, and AWS was in beta last time i checked).

You need to make slight modifications to the image for it to be compatible… is this the case with the default CircleCI build image? Does CircleCI run its machine executors on GCE?


#6

I think the question of CPU type has come up in the forum before. Is there a console command you can run to determine whether the CPU in the Machine executor is suitable? If so, run that, and report what you get here.


#7

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.