puppetlabs/puppetlabs-cloud_provisioner — pull request #132 by mruzicka (2014-01-07 23:53:53+00:00)
Title: PE-2352: update puppet node_gce to use GCE v1 API

This patch updates ```puppet node_gce``` command to use the latest version of the GCE API - v1.

The v1 of the API deprecates kernel images and scratch boot disks. To compensate for that newly each GCE VM instance needs to have a permanent boot disk configured which must contain a kernel and a booloader capable of booting the kernel in much the same way as on a real hardware.

To keep up with the changes the ```pupet node_gce create``` command now creates a persistent disk out of the image specified with the ```--image``` option which is then used as the boot disk for the newly created instance.
Conversely when an instance is being deleted using the ```puppet node_gce delete``` command a check is made to see if it has a persistent boot disk configured and if it has then the disk is deleted along with the instance.