vagrant-google 0.2.4 → 0.2.5.rc0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.ruby-version +2 -1
- data/Gemfile +1 -1
- data/README.md +24 -26
- data/example_boxes/gce-test/Vagrantfile +1 -7
- data/google-test.box +0 -0
- data/google.box +0 -0
- data/lib/vagrant-google/action/assign_instance_groups.rb +4 -2
- data/lib/vagrant-google/action/run_instance.rb +4 -13
- data/lib/vagrant-google/action/sync_folders.rb +5 -3
- data/lib/vagrant-google/config.rb +3 -2
- data/lib/vagrant-google/version.rb +1 -1
- data/tasks/acceptance.rake +2 -1
- data/tasks/boxes.rake +1 -1
- data/test/acceptance/skeletons/generic/Vagrantfile +2 -2
- data/test/acceptance/skeletons/instance_groups/Vagrantfile +2 -3
- data/test/acceptance/skeletons/multi_instance/Vagrantfile +4 -6
- data/test/acceptance/skeletons/preemptible/Vagrantfile +2 -3
- data/test/acceptance/skeletons/scopes/Vagrantfile +3 -5
- data/test/unit/common/config_test.rb +1 -1
- data/vagrant-google.gemspec +2 -1
- data/vagrantfile_examples/Vagrantfile.multiple_machines +4 -4
- data/vagrantfile_examples/Vagrantfile.provision_single +2 -2
- data/vagrantfile_examples/Vagrantfile.zone_config +2 -2
- metadata +50 -37
- data/example_boxes/gce/Vagrantfile +0 -23
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 81d0c7abfeee967b51db6cde7101ad89cc26c9a6
|
4
|
+
data.tar.gz: 1b6efb77b3d4586bdbe96052014406d13a29f788
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2b4534fe5b088d80bdd0601659cbb5a07b23fa799e8071b130e2458e1644754f7fe078aacf6dd04680d45770a676448213e9f3729ed588376df2851693df1959
|
7
|
+
data.tar.gz: bc410589c8471c36cf6a4f46f6a6a461d314b43a5c729c19b53c1f6ef0a49cc057e7c1f06305878d4ff5f80fe696e8f75efc71854f9807985f20955b9264b14a
|
data/.ruby-version
CHANGED
@@ -1 +1,2 @@
|
|
1
|
-
2.
|
1
|
+
2.2.3
|
2
|
+
# Tracking Vagrant 1.8.5
|
data/Gemfile
CHANGED
@@ -20,7 +20,7 @@ group :development do
|
|
20
20
|
# We depend on Vagrant for development, but we don't add it as a
|
21
21
|
# gem dependency because we expect to be installed within the
|
22
22
|
# Vagrant environment itself using `vagrant plugin`.
|
23
|
-
gem 'vagrant', git: "
|
23
|
+
gem 'vagrant', git: "https://github.com/mitchellh/vagrant.git"
|
24
24
|
gem 'vagrant-spec', git: "https://github.com/mitchellh/vagrant-spec.git"
|
25
25
|
end
|
26
26
|
|
data/README.md
CHANGED
@@ -47,22 +47,26 @@ Service Account for API Access.
|
|
47
47
|
|
48
48
|
1. Log in with your Google Account and go to
|
49
49
|
[Google Cloud Platform](https://cloud.google.com) and click on the
|
50
|
-
`Try it
|
50
|
+
`Try it free` button.
|
51
51
|
1. Create a new project and remember to record the `Project ID`
|
52
|
-
1. Next,
|
53
|
-
|
54
|
-
If prompted, review and agree to the
|
55
|
-
|
56
|
-
|
57
|
-
|
52
|
+
1. Next, enable the
|
53
|
+
[Google Compute Engine API](https://console.cloud.google.com/apis/api/compute_component/)
|
54
|
+
for your project in the API console. If prompted, review and agree to the
|
55
|
+
terms of service.
|
56
|
+
1. While still in the API Console, go to
|
57
|
+
[Credentials subsection](https://console.cloud.google.com/apis/credentials),
|
58
|
+
and click `Create credentials` -> `Service account key`. In the
|
59
|
+
next dialog, create a new service account, select `JSON` key type and
|
60
|
+
click `Create`.
|
58
61
|
1. Download the JSON private key and save this file in a secure
|
59
62
|
and reliable location. This key file will be used to authorize all API
|
60
63
|
requests to Google Compute Engine.
|
61
|
-
1. Still on the same page,
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
location of the private key file to properly
|
64
|
+
1. Still on the same page, click on
|
65
|
+
[Manage service accounts](https://console.cloud.google.com/permissions/serviceaccounts)
|
66
|
+
link to go to IAM console. Copy the `Service account id` value of the service
|
67
|
+
account you just selected. (it should end with `gserviceaccount.com`) You will
|
68
|
+
need this email address and the location of the private key file to properly
|
69
|
+
configure this Vagrant plugin.
|
66
70
|
1. Add the SSH key you're going to use to GCE Metadata in `Compute` ->
|
67
71
|
`Compute Engine` -> `Metadata` section of the console, `SSH Keys` tab. (Read
|
68
72
|
the [SSH Support](https://github.com/mitchellh/vagrant-google#ssh-support)
|
@@ -71,21 +75,15 @@ Service Account for API Access.
|
|
71
75
|
## Quick Start
|
72
76
|
|
73
77
|
After installing the plugin (instructions above), the quickest way to get
|
74
|
-
started is to actually use a dummy Google box and specify all the
|
75
|
-
manually within a `config.vm.provider` block.
|
76
|
-
using any name you want:
|
78
|
+
started is to actually use a dummy Google box from Atlas and specify all the
|
79
|
+
details manually within a `config.vm.provider` block.
|
77
80
|
|
78
|
-
|
79
|
-
|
80
|
-
...
|
81
|
-
```
|
82
|
-
|
83
|
-
And then make a Vagrantfile that looks like the following, filling in
|
84
|
-
your information where necessary.
|
81
|
+
So first, make a Vagrantfile that looks like the following, filling in
|
82
|
+
your information where necessary:
|
85
83
|
|
86
84
|
```ruby
|
87
85
|
Vagrant.configure("2") do |config|
|
88
|
-
config.vm.box = "gce"
|
86
|
+
config.vm.box = "google/gce"
|
89
87
|
|
90
88
|
config.vm.provider :google do |google, override|
|
91
89
|
google.google_project_id = "YOUR_GOOGLE_CLOUD_PROJECT_ID"
|
@@ -102,7 +100,7 @@ end
|
|
102
100
|
|
103
101
|
And then run `vagrant up --provider=google`.
|
104
102
|
|
105
|
-
This will start a Debian
|
103
|
+
This will start a Debian 8 (Jessie) instance in the `us-central1-f` zone,
|
106
104
|
with an `n1-standard-1` machine, and the `"default"` network within your
|
107
105
|
project. And assuming your SSH information (see below) was filled in properly
|
108
106
|
within your Vagrantfile, SSH and provisioning will work as well.
|
@@ -225,7 +223,7 @@ zone you want to actually use, however. This looks like this:
|
|
225
223
|
```ruby
|
226
224
|
Vagrant.configure("2") do |config|
|
227
225
|
|
228
|
-
config.vm.box = "gce"
|
226
|
+
config.vm.box = "google/gce"
|
229
227
|
|
230
228
|
config.vm.provider :google do |google|
|
231
229
|
google.google_project_id = "YOUR_GOOGLE_CLOUD_PROJECT_ID"
|
@@ -237,7 +235,7 @@ Vagrant.configure("2") do |config|
|
|
237
235
|
|
238
236
|
google.zone_config "us-central1-f" do |zone1f|
|
239
237
|
zone1f.name = "testing-vagrant"
|
240
|
-
zone1f.image = "debian-
|
238
|
+
zone1f.image = "debian-8-jessie-v20160923"
|
241
239
|
zone1f.machine_type = "n1-standard-4"
|
242
240
|
zone1f.zone = "us-central1-f"
|
243
241
|
zone1f.metadata = {'custom' => 'metadata', 'testing' => 'foobarbaz'}
|
@@ -15,16 +15,10 @@
|
|
15
15
|
# limitations under the License.
|
16
16
|
|
17
17
|
Vagrant.configure("2") do |config|
|
18
|
-
config.vm.provider :google do |
|
19
|
-
|
18
|
+
config.vm.provider :google do |_google, override|
|
20
19
|
if ENV['GOOGLE_SSH_USER'] and ENV['GOOGLE_SSH_KEY_LOCATION']
|
21
20
|
override.ssh.username = ENV['GOOGLE_SSH_USER']
|
22
21
|
override.ssh.private_key_path = ENV['GOOGLE_SSH_KEY_LOCATION']
|
23
22
|
end
|
24
|
-
|
25
|
-
google.image = "debian-7-wheezy-v20150127"
|
26
|
-
google.machine_type = "n1-standard-1"
|
27
|
-
google.zone = "us-central1-f"
|
28
|
-
|
29
23
|
end
|
30
24
|
end
|
data/google-test.box
CHANGED
Binary file
|
data/google.box
CHANGED
Binary file
|
@@ -25,7 +25,8 @@ module VagrantPlugins
|
|
25
25
|
def initialize(app, env)
|
26
26
|
@app = app
|
27
27
|
@logger = Log4r::Logger.new(
|
28
|
-
"vagrant_google::action::assign_instance_groups"
|
28
|
+
"vagrant_google::action::assign_instance_groups"
|
29
|
+
)
|
29
30
|
end
|
30
31
|
|
31
32
|
def call(env)
|
@@ -58,7 +59,8 @@ module VagrantPlugins
|
|
58
59
|
)
|
59
60
|
unless response.body["status"] == "DONE"
|
60
61
|
operation = env[:google_compute].operations.get(
|
61
|
-
operation.body["name"], zone
|
62
|
+
operation.body["name"], zone
|
63
|
+
)
|
62
64
|
env[:ui].info(I18n.t("vagrant_google.waiting_for_operation",
|
63
65
|
name: operation.body["name"]))
|
64
66
|
operation.wait_for { ready? }
|
@@ -111,8 +111,8 @@ module VagrantPlugins
|
|
111
111
|
zone_name: zone,
|
112
112
|
source_image: image
|
113
113
|
)
|
114
|
-
disk_created_by_vagrant = true
|
115
114
|
disk.wait_for { disk.ready? }
|
115
|
+
disk_created_by_vagrant = true
|
116
116
|
end
|
117
117
|
end
|
118
118
|
|
@@ -137,11 +137,9 @@ module VagrantPlugins
|
|
137
137
|
server = env[:google_compute].servers.create(defaults)
|
138
138
|
@logger.info("Machine '#{zone}:#{name}' created.")
|
139
139
|
rescue *FOG_ERRORS => e
|
140
|
-
#
|
141
|
-
# instance, so we need
|
142
|
-
|
143
|
-
# there is a chance Google has failed to create instance, so we need
|
144
|
-
# to remove created disk
|
140
|
+
# TODO: Cleanup the Fog catch-all once Fog implements better exceptions
|
141
|
+
# There is a chance Google has failed to create an instance, so we need
|
142
|
+
# to clean up the created disk.
|
145
143
|
cleanup_disk(disk.name, env) if disk && disk_created_by_vagrant
|
146
144
|
raise Errors::FogError, :message => e.message
|
147
145
|
end
|
@@ -223,13 +221,6 @@ module VagrantPlugins
|
|
223
221
|
address.address
|
224
222
|
end
|
225
223
|
|
226
|
-
def cleanup_instance(env)
|
227
|
-
zone = env[:machine].provider_config.zone
|
228
|
-
zone_config = env[:machine].provider_config.get_zone_config(zone)
|
229
|
-
server = env[:google_compute].servers.get(zone_config.name, zone)
|
230
|
-
server.destroy(false) if server
|
231
|
-
end
|
232
|
-
|
233
224
|
def cleanup_disk(disk_name, env)
|
234
225
|
zone = env[:machine].provider_config.zone
|
235
226
|
autodelete_disk = env[:machine].provider_config.get_zone_config(zone).autodelete_disk
|
@@ -64,7 +64,8 @@ module VagrantPlugins
|
|
64
64
|
# Create the guest path
|
65
65
|
env[:machine].communicate.sudo("mkdir -p '#{guestpath}'")
|
66
66
|
env[:machine].communicate.sudo(
|
67
|
-
"chown #{ssh_info[:username]} '#{guestpath}'"
|
67
|
+
"chown #{ssh_info[:username]} '#{guestpath}'"
|
68
|
+
)
|
68
69
|
|
69
70
|
# patch from https://github.com/tmatilai/vagrant-aws/commit/4a043a96076c332220ec4ec19470c4af5597dd51
|
70
71
|
def ssh_key_options(ssh_info)
|
@@ -81,7 +82,8 @@ module VagrantPlugins
|
|
81
82
|
*excludes.map{|e| ['--exclude', e]}.flatten,
|
82
83
|
"-e", "ssh -p #{ssh_info[:port]} -o StrictHostKeyChecking=no #{ssh_key_options(ssh_info)}",
|
83
84
|
hostpath,
|
84
|
-
"#{ssh_info[:username]}@#{ssh_info[:host]}:#{guestpath}"
|
85
|
+
"#{ssh_info[:username]}@#{ssh_info[:host]}:#{guestpath}"
|
86
|
+
]
|
85
87
|
|
86
88
|
# we need to fix permissions when using rsync.exe on windows, see
|
87
89
|
# http://stackoverflow.com/questions/5798807/rsync-permission-denied-created-directories-have-no-permissions
|
@@ -90,7 +92,7 @@ module VagrantPlugins
|
|
90
92
|
end
|
91
93
|
|
92
94
|
r = Vagrant::Util::Subprocess.execute(*command)
|
93
|
-
if r.exit_code
|
95
|
+
if r.exit_code.nonzero?
|
94
96
|
raise Errors::RsyncError,
|
95
97
|
:guestpath => guestpath,
|
96
98
|
:hostpath => hostpath,
|
@@ -214,7 +214,8 @@ module VagrantPlugins
|
|
214
214
|
# has it.
|
215
215
|
new_zone_specific = other.instance_variable_get(:@__zone_specific)
|
216
216
|
result.instance_variable_set(
|
217
|
-
:@__zone_specific, new_zone_specific || @__zone_specific
|
217
|
+
:@__zone_specific, new_zone_specific || @__zone_specific
|
218
|
+
)
|
218
219
|
|
219
220
|
# Go through all the zone configs and prepend ours onto
|
220
221
|
# theirs.
|
@@ -242,7 +243,7 @@ module VagrantPlugins
|
|
242
243
|
@google_project_id = ENV['GOOGLE_PROJECT_ID'] if @google_project_id == UNSET_VALUE
|
243
244
|
|
244
245
|
# Image must be nil, since we can't default that
|
245
|
-
@image = "debian-
|
246
|
+
@image = "debian-8-jessie-v20160511" if @image == UNSET_VALUE
|
246
247
|
|
247
248
|
# Default instance group name is nil
|
248
249
|
@instance_group = nil if @instance_group == UNSET_VALUE
|
data/tasks/acceptance.rake
CHANGED
@@ -49,7 +49,8 @@ namespace :acceptance do
|
|
49
49
|
if File.read(ENV["GOOGLE_SSH_KEY_LOCATION"]).include?('ENCRYPTED')
|
50
50
|
unless `ssh-add -L`.include?(ENV["GOOGLE_SSH_KEY_LOCATION"])
|
51
51
|
yellow "WARNING: It looks like ssh key is encrypted and ssh-agent doesn't contain any identities."
|
52
|
-
|
52
|
+
puts "Trying to add identity, executing ssh-add..."
|
53
|
+
system("ssh-add #{ENV["GOOGLE_SSH_KEY_LOCATION"]}")
|
53
54
|
end
|
54
55
|
end
|
55
56
|
end
|
data/tasks/boxes.rake
CHANGED
@@ -9,8 +9,8 @@ Vagrant.configure("2") do |config|
|
|
9
9
|
google.zone = "europe-west1-d"
|
10
10
|
|
11
11
|
google.zone_config "europe-west1-d" do |zone1d|
|
12
|
-
zone1d.
|
13
|
-
zone1d.
|
12
|
+
zone1d.name = "vagrant-acceptance-generic-#{('a'..'z').to_a.sample(8).join}"
|
13
|
+
zone1d.disk_type = "pd-ssd"
|
14
14
|
end
|
15
15
|
end
|
16
16
|
end
|
@@ -6,10 +6,9 @@ Vagrant.configure("2") do |config|
|
|
6
6
|
google.zone = "europe-west1-d"
|
7
7
|
|
8
8
|
google.zone_config "europe-west1-d" do |zone1d|
|
9
|
-
zone1d.name = "vagrant-acceptance-instance-groups"
|
9
|
+
zone1d.name = "vagrant-acceptance-instance-groups-#{('a'..'z').to_a.sample(8).join}"
|
10
10
|
zone1d.instance_group = "vagrant-acceptance-#{('a'..'z').to_a.sample(8).join}"
|
11
|
-
zone1d.
|
12
|
-
zone1d.zone = "europe-west1-d"
|
11
|
+
zone1d.disk_type = "pd-ssd"
|
13
12
|
end
|
14
13
|
end
|
15
14
|
end
|
@@ -6,10 +6,9 @@ Vagrant.configure("2") do |config|
|
|
6
6
|
google.zone = "europe-west1-c"
|
7
7
|
|
8
8
|
google.zone_config "europe-west1-c" do |z1a_zone|
|
9
|
-
z1a_zone.name = "vagrant-acceptance-multi-z1a"
|
10
|
-
z1a_zone.image = "debian-7-wheezy-v20150603"
|
9
|
+
z1a_zone.name = "vagrant-acceptance-multi-z1a-#{('a'..'z').to_a.sample(8).join}"
|
11
10
|
z1a_zone.machine_type = "n1-standard-1"
|
12
|
-
z1a_zone.
|
11
|
+
z1a_zone.disk_type = "pd-ssd"
|
13
12
|
end
|
14
13
|
end
|
15
14
|
end
|
@@ -19,10 +18,9 @@ Vagrant.configure("2") do |config|
|
|
19
18
|
google.zone = "europe-west1-d"
|
20
19
|
|
21
20
|
google.zone_config "europe-west1-d" do |z1b_zone|
|
22
|
-
z1b_zone.name = "vagrant-testing-acceptance-multi-z1b"
|
23
|
-
z1b_zone.image = "debian-7-wheezy-v20150603"
|
21
|
+
z1b_zone.name = "vagrant-testing-acceptance-multi-z1b-#{('a'..'z').to_a.sample(8).join}"
|
24
22
|
z1b_zone.machine_type = "n1-standard-2"
|
25
|
-
z1b_zone.
|
23
|
+
z1b_zone.disk_type = "pd-ssd"
|
26
24
|
end
|
27
25
|
end
|
28
26
|
end
|
@@ -6,9 +6,8 @@ Vagrant.configure("2") do |config|
|
|
6
6
|
google.zone = "europe-west1-d"
|
7
7
|
|
8
8
|
google.zone_config "europe-west1-d" do |zone1d|
|
9
|
-
zone1d.name = "vagrant-acceptance-preemptible"
|
10
|
-
zone1d.
|
11
|
-
zone1d.zone = "europe-west1-d"
|
9
|
+
zone1d.name = "vagrant-acceptance-preemptible-#{('a'..'z').to_a.sample(8).join}"
|
10
|
+
zone1d.disk_type = "pd-ssd"
|
12
11
|
zone1d.preemptible = true
|
13
12
|
zone1d.auto_restart = false
|
14
13
|
zone1d.on_host_maintenance = "TERMINATE"
|
@@ -6,13 +6,11 @@ Vagrant.configure("2") do |config|
|
|
6
6
|
google.zone = "europe-west1-d"
|
7
7
|
|
8
8
|
google.zone_config "europe-west1-d" do |zone1d|
|
9
|
-
zone1d.name = "vagrant-acceptance-scopes"
|
9
|
+
zone1d.name = "vagrant-acceptance-scopes-#{('a'..'z').to_a.sample(8).join}"
|
10
10
|
zone1d.scopes = ['sql-admin',
|
11
11
|
'bigquery',
|
12
|
-
'https://www.googleapis.com/auth/compute'
|
13
|
-
|
14
|
-
zone1d.image = "debian-7-wheezy-v20150603"
|
15
|
-
zone1d.zone = "europe-west1-d"
|
12
|
+
'https://www.googleapis.com/auth/compute']
|
13
|
+
zone1d.disk_type = "pd-ssd"
|
16
14
|
end
|
17
15
|
end
|
18
16
|
end
|
@@ -31,7 +31,7 @@ describe VagrantPlugins::Google::Config do
|
|
31
31
|
end
|
32
32
|
|
33
33
|
its("name") { should match "i-[0-9]{10}-[0-9a-f]{4}" }
|
34
|
-
its("image") { should == "debian-
|
34
|
+
its("image") { should == "debian-8-jessie-v20160511" }
|
35
35
|
its("instance_group") { should be_nil }
|
36
36
|
its("zone") { should == "us-central1-f" }
|
37
37
|
its("network") { should == "default" }
|
data/vagrant-google.gemspec
CHANGED
@@ -28,7 +28,7 @@ Gem::Specification.new do |s|
|
|
28
28
|
s.required_rubygems_version = ">= 1.3.6"
|
29
29
|
s.rubyforge_project = "vagrant-google"
|
30
30
|
|
31
|
-
s.add_runtime_dependency "fog-google", "~> 0.
|
31
|
+
s.add_runtime_dependency "fog-google", "~> 0.4.0"
|
32
32
|
s.add_runtime_dependency "google-api-client", "< 0.9", ">= 0.6.2"
|
33
33
|
|
34
34
|
s.add_development_dependency "pry"
|
@@ -36,6 +36,7 @@ Gem::Specification.new do |s|
|
|
36
36
|
s.add_development_dependency "rake"
|
37
37
|
s.add_development_dependency "rspec", "~> 2.14"
|
38
38
|
s.add_development_dependency "rubocop", "~> 0.35"
|
39
|
+
s.add_development_dependency "highline"
|
39
40
|
|
40
41
|
# The following block of code determines the files that should be included
|
41
42
|
# in the gem. It does this by reading all the files in the directory where
|
@@ -38,7 +38,7 @@ echo "== DEBIAN VERSION: ${ver}"
|
|
38
38
|
echo "== UPDATING Debian repositories and packages"
|
39
39
|
/usr/bin/apt-get update -y -qq > /dev/null 2>&1
|
40
40
|
/usr/bin/apt-get upgrade -y -qq > /dev/null 2>&1
|
41
|
-
extip=$(curl -s http://
|
41
|
+
extip=$(curl -s http://metadata/computeMetadata/v1/instance/network-interfaces/0/access-configs/0/external-ip -H "Metadata-Flavor: Google")
|
42
42
|
echo "== EXTERNAL IP: ${extip}"
|
43
43
|
echo "== APPENDING /etc/motd"
|
44
44
|
d=$(date +%r)
|
@@ -48,7 +48,7 @@ cat /etc/motd
|
|
48
48
|
SCRIPT
|
49
49
|
|
50
50
|
Vagrant.configure("2") do |config|
|
51
|
-
config.vm.box = "gce"
|
51
|
+
config.vm.box = "google/gce"
|
52
52
|
config.vm.provision :shell, :inline => $PROVISION_DEBIAN
|
53
53
|
|
54
54
|
config.vm.define :z1c do |z1c|
|
@@ -63,7 +63,7 @@ Vagrant.configure("2") do |config|
|
|
63
63
|
|
64
64
|
google.zone_config "us-central1-c" do |z1c_zone|
|
65
65
|
z1c_zone.name = "z1c"
|
66
|
-
z1c_zone.image = "debian-
|
66
|
+
z1c_zone.image = "debian-8-jessie-v20160923"
|
67
67
|
z1c_zone.machine_type = "n1-standard-1"
|
68
68
|
z1c_zone.zone = "us-central1-c"
|
69
69
|
z1c_zone.metadata = {"zone" => "US Central 1c"}
|
@@ -83,7 +83,7 @@ Vagrant.configure("2") do |config|
|
|
83
83
|
|
84
84
|
google.zone_config "us-central1-f" do |z1f_zone|
|
85
85
|
z1f_zone.name = "z1f"
|
86
|
-
z1f_zone.image = "debian-
|
86
|
+
z1f_zone.image = "debian-8-jessie-v20160923"
|
87
87
|
z1f_zone.machine_type = "n1-standard-2"
|
88
88
|
z1f_zone.zone = "us-central1-f"
|
89
89
|
z1f_zone.metadata = {"zone" => "US Central 1f"}
|
@@ -27,7 +27,7 @@ $LOCAL_SSH_KEY = "~/.ssh/id_rsa"
|
|
27
27
|
|
28
28
|
Vagrant.configure("2") do |config|
|
29
29
|
|
30
|
-
config.vm.box = "gce"
|
30
|
+
config.vm.box = "google/gce"
|
31
31
|
|
32
32
|
config.vm.provider :google do |google, override|
|
33
33
|
google.google_project_id = $GOOGLE_PROJECT_ID
|
@@ -36,7 +36,7 @@ Vagrant.configure("2") do |config|
|
|
36
36
|
|
37
37
|
# Override provider defaults
|
38
38
|
google.name = "testing-vagrant"
|
39
|
-
google.image = "debian-
|
39
|
+
google.image = "debian-8-jessie-v20160923"
|
40
40
|
google.machine_type = "n1-standard-1"
|
41
41
|
google.zone = "us-central1-f"
|
42
42
|
google.metadata = {'custom' => 'metadata', 'testing' => 'foobarbaz'}
|
@@ -15,7 +15,7 @@
|
|
15
15
|
# limitations under the License.
|
16
16
|
|
17
17
|
Vagrant.configure("2") do |config|
|
18
|
-
config.vm.box = "gce"
|
18
|
+
config.vm.box = "google/gce"
|
19
19
|
|
20
20
|
config.vm.provider :google do |google, override|
|
21
21
|
google.google_project_id = "YOUR_GOOGLE_CLOUD_PROJECT_ID"
|
@@ -30,7 +30,7 @@ Vagrant.configure("2") do |config|
|
|
30
30
|
|
31
31
|
google.zone_config "us-central1-f" do |zone1a|
|
32
32
|
zone1a.name = "testing-vagrant"
|
33
|
-
zone1a.image = "debian-
|
33
|
+
zone1a.image = "debian-8-jessie-v20160923"
|
34
34
|
zone1a.machine_type = "n1-standard-4"
|
35
35
|
zone1a.zone = "us-central1-f"
|
36
36
|
zone1a.scopes = ['bigquery', 'monitoring', 'https://www.googleapis.com/auth/compute']
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: vagrant-google
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.5.rc0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Eric Johnson
|
@@ -9,127 +9,149 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2016-
|
12
|
+
date: 2016-10-06 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: fog-google
|
16
16
|
requirement: !ruby/object:Gem::Requirement
|
17
17
|
requirements:
|
18
|
-
- - ~>
|
18
|
+
- - "~>"
|
19
19
|
- !ruby/object:Gem::Version
|
20
|
-
version: 0.
|
20
|
+
version: 0.4.0
|
21
21
|
type: :runtime
|
22
22
|
prerelease: false
|
23
23
|
version_requirements: !ruby/object:Gem::Requirement
|
24
24
|
requirements:
|
25
|
-
- - ~>
|
25
|
+
- - "~>"
|
26
26
|
- !ruby/object:Gem::Version
|
27
|
-
version: 0.
|
27
|
+
version: 0.4.0
|
28
28
|
- !ruby/object:Gem::Dependency
|
29
29
|
name: google-api-client
|
30
30
|
requirement: !ruby/object:Gem::Requirement
|
31
31
|
requirements:
|
32
|
-
- - <
|
32
|
+
- - "<"
|
33
33
|
- !ruby/object:Gem::Version
|
34
34
|
version: '0.9'
|
35
|
-
- -
|
35
|
+
- - ">="
|
36
36
|
- !ruby/object:Gem::Version
|
37
37
|
version: 0.6.2
|
38
38
|
type: :runtime
|
39
39
|
prerelease: false
|
40
40
|
version_requirements: !ruby/object:Gem::Requirement
|
41
41
|
requirements:
|
42
|
-
- - <
|
42
|
+
- - "<"
|
43
43
|
- !ruby/object:Gem::Version
|
44
44
|
version: '0.9'
|
45
|
-
- -
|
45
|
+
- - ">="
|
46
46
|
- !ruby/object:Gem::Version
|
47
47
|
version: 0.6.2
|
48
48
|
- !ruby/object:Gem::Dependency
|
49
49
|
name: pry
|
50
50
|
requirement: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
|
-
- -
|
52
|
+
- - ">="
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: '0'
|
55
55
|
type: :development
|
56
56
|
prerelease: false
|
57
57
|
version_requirements: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
|
-
- -
|
59
|
+
- - ">="
|
60
60
|
- !ruby/object:Gem::Version
|
61
61
|
version: '0'
|
62
62
|
- !ruby/object:Gem::Dependency
|
63
63
|
name: pry-byebug
|
64
64
|
requirement: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
|
-
- -
|
66
|
+
- - ">="
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: '0'
|
69
69
|
type: :development
|
70
70
|
prerelease: false
|
71
71
|
version_requirements: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
|
-
- -
|
73
|
+
- - ">="
|
74
74
|
- !ruby/object:Gem::Version
|
75
75
|
version: '0'
|
76
76
|
- !ruby/object:Gem::Dependency
|
77
77
|
name: rake
|
78
78
|
requirement: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
|
-
- -
|
80
|
+
- - ">="
|
81
81
|
- !ruby/object:Gem::Version
|
82
82
|
version: '0'
|
83
83
|
type: :development
|
84
84
|
prerelease: false
|
85
85
|
version_requirements: !ruby/object:Gem::Requirement
|
86
86
|
requirements:
|
87
|
-
- -
|
87
|
+
- - ">="
|
88
88
|
- !ruby/object:Gem::Version
|
89
89
|
version: '0'
|
90
90
|
- !ruby/object:Gem::Dependency
|
91
91
|
name: rspec
|
92
92
|
requirement: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
|
-
- - ~>
|
94
|
+
- - "~>"
|
95
95
|
- !ruby/object:Gem::Version
|
96
96
|
version: '2.14'
|
97
97
|
type: :development
|
98
98
|
prerelease: false
|
99
99
|
version_requirements: !ruby/object:Gem::Requirement
|
100
100
|
requirements:
|
101
|
-
- - ~>
|
101
|
+
- - "~>"
|
102
102
|
- !ruby/object:Gem::Version
|
103
103
|
version: '2.14'
|
104
104
|
- !ruby/object:Gem::Dependency
|
105
105
|
name: rubocop
|
106
106
|
requirement: !ruby/object:Gem::Requirement
|
107
107
|
requirements:
|
108
|
-
- - ~>
|
108
|
+
- - "~>"
|
109
109
|
- !ruby/object:Gem::Version
|
110
110
|
version: '0.35'
|
111
111
|
type: :development
|
112
112
|
prerelease: false
|
113
113
|
version_requirements: !ruby/object:Gem::Requirement
|
114
114
|
requirements:
|
115
|
-
- - ~>
|
115
|
+
- - "~>"
|
116
116
|
- !ruby/object:Gem::Version
|
117
117
|
version: '0.35'
|
118
|
+
- !ruby/object:Gem::Dependency
|
119
|
+
name: highline
|
120
|
+
requirement: !ruby/object:Gem::Requirement
|
121
|
+
requirements:
|
122
|
+
- - ">="
|
123
|
+
- !ruby/object:Gem::Version
|
124
|
+
version: '0'
|
125
|
+
type: :development
|
126
|
+
prerelease: false
|
127
|
+
version_requirements: !ruby/object:Gem::Requirement
|
128
|
+
requirements:
|
129
|
+
- - ">="
|
130
|
+
- !ruby/object:Gem::Version
|
131
|
+
version: '0'
|
118
132
|
description: Enables Vagrant to manage Google Compute Engine instances.
|
119
133
|
email: vagrant-google@google.com
|
120
134
|
executables: []
|
121
135
|
extensions: []
|
122
136
|
extra_rdoc_files: []
|
123
137
|
files:
|
138
|
+
- ".gitignore"
|
139
|
+
- ".rubocop.yml"
|
140
|
+
- ".rubocop_todo.yml"
|
141
|
+
- ".ruby-version"
|
124
142
|
- CHANGELOG.md
|
125
|
-
- example_boxes/gce/metadata.json
|
126
|
-
- example_boxes/gce/Vagrantfile
|
127
|
-
- example_boxes/gce-test/metadata.json
|
128
|
-
- example_boxes/gce-test/Vagrantfile
|
129
|
-
- example_boxes/README.md
|
130
143
|
- Gemfile
|
144
|
+
- LICENSE
|
145
|
+
- README.md
|
146
|
+
- Rakefile
|
147
|
+
- example_boxes/README.md
|
148
|
+
- example_boxes/gce-test/Vagrantfile
|
149
|
+
- example_boxes/gce-test/metadata.json
|
150
|
+
- example_boxes/gce/metadata.json
|
131
151
|
- google-test.box
|
132
152
|
- google.box
|
153
|
+
- lib/vagrant-google.rb
|
154
|
+
- lib/vagrant-google/action.rb
|
133
155
|
- lib/vagrant-google/action/assign_instance_groups.rb
|
134
156
|
- lib/vagrant-google/action/connect_google.rb
|
135
157
|
- lib/vagrant-google/action/is_created.rb
|
@@ -147,18 +169,13 @@ files:
|
|
147
169
|
- lib/vagrant-google/action/timed_provision.rb
|
148
170
|
- lib/vagrant-google/action/warn_networks.rb
|
149
171
|
- lib/vagrant-google/action/warn_ssh_keys.rb
|
150
|
-
- lib/vagrant-google/action.rb
|
151
172
|
- lib/vagrant-google/config.rb
|
152
173
|
- lib/vagrant-google/errors.rb
|
153
174
|
- lib/vagrant-google/plugin.rb
|
154
175
|
- lib/vagrant-google/provider.rb
|
155
176
|
- lib/vagrant-google/util/timer.rb
|
156
177
|
- lib/vagrant-google/version.rb
|
157
|
-
- lib/vagrant-google.rb
|
158
|
-
- LICENSE
|
159
178
|
- locales/en.yml
|
160
|
-
- Rakefile
|
161
|
-
- README.md
|
162
179
|
- tasks/acceptance.rake
|
163
180
|
- tasks/boxes.rake
|
164
181
|
- tasks/bundler.rake
|
@@ -185,10 +202,6 @@ files:
|
|
185
202
|
- vagrantfile_examples/Vagrantfile.provision_single
|
186
203
|
- vagrantfile_examples/Vagrantfile.simple
|
187
204
|
- vagrantfile_examples/Vagrantfile.zone_config
|
188
|
-
- .gitignore
|
189
|
-
- .rubocop.yml
|
190
|
-
- .rubocop_todo.yml
|
191
|
-
- .ruby-version
|
192
205
|
homepage: http://www.vagrantup.com
|
193
206
|
licenses: []
|
194
207
|
metadata: {}
|
@@ -198,17 +211,17 @@ require_paths:
|
|
198
211
|
- lib
|
199
212
|
required_ruby_version: !ruby/object:Gem::Requirement
|
200
213
|
requirements:
|
201
|
-
- -
|
214
|
+
- - ">="
|
202
215
|
- !ruby/object:Gem::Version
|
203
216
|
version: '0'
|
204
217
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
205
218
|
requirements:
|
206
|
-
- -
|
219
|
+
- - ">="
|
207
220
|
- !ruby/object:Gem::Version
|
208
221
|
version: 1.3.6
|
209
222
|
requirements: []
|
210
223
|
rubyforge_project: vagrant-google
|
211
|
-
rubygems_version: 2.
|
224
|
+
rubygems_version: 2.4.5.1
|
212
225
|
signing_key:
|
213
226
|
specification_version: 4
|
214
227
|
summary: Vagrant provider plugin for Google Compute Engine.
|
@@ -1,23 +0,0 @@
|
|
1
|
-
# -*- mode: ruby -*-
|
2
|
-
# vi: set ft=ruby :
|
3
|
-
# Copyright 2013 Google Inc. All Rights Reserved.
|
4
|
-
#
|
5
|
-
# Licensed under the Apache License, Version 2.0 (the "License");
|
6
|
-
# you may not use this file except in compliance with the License.
|
7
|
-
# You may obtain a copy of the License at
|
8
|
-
#
|
9
|
-
# http://www.apache.org/licenses/LICENSE-2.0
|
10
|
-
#
|
11
|
-
# Unless required by applicable law or agreed to in writing, software
|
12
|
-
# distributed under the License is distributed on an "AS IS" BASIS,
|
13
|
-
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14
|
-
# See the License for the specific language governing permissions and
|
15
|
-
# limitations under the License.
|
16
|
-
|
17
|
-
Vagrant.configure("2") do |config|
|
18
|
-
config.vm.provider :google do |google|
|
19
|
-
google.image = "debian-7-wheezy-v20150127"
|
20
|
-
google.machine_type = "n1-standard-1"
|
21
|
-
google.zone = "us-central1-f"
|
22
|
-
end
|
23
|
-
end
|