@@ -18,7 +18,8 @@ The maintainers for this plugin are @temikus(primary), @erjohnso(backup).
18
18
* Boot Google Compute Engine instances.
19
19
* SSH into the instances.
20
20
* Provision the instances with any built-in Vagrant provisioner.
21
- * Minimal synced folder support via ` rsync ` .
21
+ * Synced folder support via Vagrant's
22
+ [ rsync action] ( https://www.vagrantup.com/docs/synced-folders/rsync.html ) .
22
23
* Define zone-specific configurations so Vagrant can manage machines in
23
24
multiple zones.
24
25
@@ -88,7 +89,9 @@ Vagrant.configure("2") do |config|
88
89
google.google_project_id = " YOUR_GOOGLE_CLOUD_PROJECT_ID"
89
90
google.google_client_email = " YOUR_SERVICE_ACCOUNT_EMAIL_ADDRESS"
90
91
google.google_json_key_location = " /path/to/your/private-key.json"
91
-
92
+
93
+ google.image_family = ' ubuntu-1604-lts'
94
+
92
95
override.ssh.username = " USERNAME"
93
96
override.ssh.private_key_path = " ~/.ssh/id_rsa"
94
97
# override.ssh.private_key_path = "~/.ssh/google_compute_engine"
99
102
100
103
And then run ` vagrant up --provider=google ` .
101
104
102
- This will start a Debian 8 (Jessie) instance in the ` us-central1-f ` zone,
103
- with an ` n1-standard-1 ` machine, and the ` "default" ` network within your
104
- project. And assuming your SSH information (see below) was filled in properly
105
- within your Vagrantfile, SSH and provisioning will work as well.
105
+ This will start a latest version of Ubuntu 16.04 LTS instance in the
106
+ ` us-central1-f ` zone, with an ` n1-standard-1 ` machine, and the ` "default" `
107
+ network within your project. And assuming your SSH information (see below) was
108
+ filled in properly within your Vagrantfile, SSH and provisioning will work as
109
+ well.
106
110
107
111
Note that normally a lot of this boilerplate is encoded within the box file,
108
112
but the box file used for the quick start, the "google" box, has no
@@ -171,6 +175,9 @@ This provider exposes quite a few provider-specific configuration options:
171
175
* ` google_project_id ` - The Project ID for your Google Cloud Platform account.
172
176
(Can also be configured with ` GOOGLE_PROJECT_ID ` environment variable.)
173
177
* ` image ` - The image name to use when booting your instance.
178
+ * ` image_family ` - Specify an "image family" to pull the latest image from. For example: ` centos-7 `
179
+ will pull the most recent CentOS 7 image. For more info, refer to
180
+ [ Google Image documentation] ( https://cloud.google.com/compute/docs/images#image_families ) .
174
181
* ` instance_group ` - Unmanaged instance group to add the machine to. If one
175
182
doesn't exist it will be created.
176
183
* ` instance_ready_timeout ` - The number of seconds to wait for the instance
@@ -235,7 +242,7 @@ Vagrant.configure("2") do |config|
235
242
236
243
google.zone_config " us-central1-f" do |zone1f |
237
244
zone1f.name = " testing-vagrant"
238
- zone1f.image = " debian-8-jessie-v20160923 "
245
+ zone1f.image = " debian-8-jessie-v20180307 "
239
246
zone1f.machine_type = " n1-standard-4"
240
247
zone1f.zone = " us-central1-f"
241
248
zone1f.metadata = {' custom' => ' metadata' , ' testing' => ' foobarbaz' }
@@ -261,13 +268,9 @@ emit a warning, but will otherwise boot the GCE machine.
261
268
262
269
## Synced Folders
263
270
264
- There is minimal support for synced folders. Upon ` vagrant up ` ,
265
- ` vagrant reload ` , and ` vagrant provision ` , the Google provider will use
266
- ` rsync ` (if available) to uni-directionally sync the folder to the remote
267
- machine over SSH.
268
-
269
- This is good enough for all built-in Vagrant provisioners (` shell ` , ` chef ` , and
270
- ` puppet ` ) to work!
271
+ Since plugin version 2.0, this is implemented via built-in ` SyncedFolders ` action.
272
+ See Vagrant's [ rsync action] ( https://www.vagrantup.com/docs/synced-folders/rsync.html )
273
+ documentation for more info.
271
274
272
275
## Development
273
276
0 commit comments