Re: Vagrant box CI/CD
I can speak from the GCE perspective more than the Debian perspective here. I would recommend you look at our open source workflow tool called Daisy instead of trying to use gcloud as a CLI for any kind of automation. Daisy is meant for automation and works well within a CI/CD system. You can compile from source, use the release binaries we maintain, or the release container we maintain. There are examples and docs at the links below. But let me know if you have specific questions.
So it seems vagrant boxes build just fine on GCE instances that have nested virtualization enabled, via a gitlab shell runner.
This means it's possible for us to fully automate the build and deployment process for vagrant boxes. Here's a rough plan:
The stages for building and provisioning the nested virt shell runners could conceivably be run on a shared runner.
I do have some questions though. Is it fine to build/provision these GCE runners using the gcloud cli tool? Or does the cloud team have some infrastructure as code tool that they prefer to use instead in order to avoid vendor lockin?