vagrant-haipa 0.0.1 → 0.2.1
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/.editorconfig +11 -0
- data/.gitignore +49 -16
- data/.rspec_status +5 -0
- data/.vscode/launch.json +13 -3
- data/Gemfile +6 -2
- data/Gemfile.lock +181 -0
- data/LICENSE +21 -373
- data/Rakefile +7 -16
- data/lib/vagrant-haipa/action/converge_machine.rb +44 -0
- data/lib/vagrant-haipa/{actions → action}/delete_machine.rb +3 -10
- data/lib/vagrant-haipa/action/is_created.rb +19 -0
- data/lib/vagrant-haipa/action/is_running.rb +20 -0
- data/lib/vagrant-haipa/{actions → action}/message_already_created.rb +1 -1
- data/lib/vagrant-haipa/{actions → action}/message_not_created.rb +1 -1
- data/lib/vagrant-haipa/{actions → action}/message_will_not_destroy.rb +1 -1
- data/lib/vagrant-haipa/action/read_state.rb +19 -0
- data/lib/vagrant-haipa/{actions → action}/set_name.rb +3 -6
- data/lib/vagrant-haipa/action/start_machine.rb +24 -0
- data/lib/vagrant-haipa/action/stop_machine.rb +25 -0
- data/lib/vagrant-haipa/{actions → action}/wait_for_ip_address.rb +4 -4
- data/lib/vagrant-haipa/{actions.rb → action.rb} +78 -106
- data/lib/vagrant-haipa/config.rb +17 -15
- data/lib/vagrant-haipa/driver.rb +139 -0
- data/lib/vagrant-haipa/errors.rb +4 -36
- data/lib/vagrant-haipa/plugin.rb +8 -7
- data/lib/vagrant-haipa/provider.rb +44 -63
- data/lib/vagrant-haipa/version.rb +2 -2
- data/lib/vagrant-haipa.rb +11 -7
- data/locales/en.yml +2 -70
- data/spec/spec_helper.rb +20 -0
- data/spec/unit/provider_spec.rb +38 -0
- data/test/Vagrantfile +23 -14
- data/test/console.key +27 -0
- data/vagrant +27 -27
- data/vagrant-haipa.gemspec +3 -4
- metadata +32 -53
- data/README.md +0 -111
- data/lib/vagrant-haipa/actions/check_state.rb +0 -19
- data/lib/vagrant-haipa/actions/connect_haipa.rb +0 -24
- data/lib/vagrant-haipa/actions/create_machine.rb +0 -56
- data/lib/vagrant-haipa/actions/is_created.rb +0 -18
- data/lib/vagrant-haipa/actions/is_stopped.rb +0 -18
- data/lib/vagrant-haipa/actions/modify_provision_path.rb +0 -38
- data/lib/vagrant-haipa/actions/shut_down.rb +0 -33
- data/lib/vagrant-haipa/actions/start_machine.rb +0 -34
- data/lib/vagrant-haipa/actions/stop_machine.rb +0 -33
- data/lib/vagrant-haipa/helpers/client.rb +0 -111
- data/lib/vagrant-haipa/helpers/result.rb +0 -40
- data/test/cookbooks/test/recipes/default.rb +0 -1
- data/test/scripts/provision.sh +0 -3
- data/test/test.sh +0 -13
- data/test/test_id_rsa +0 -27
- data/test/test_id_rsa.pub +0 -1
@@ -1,62 +1,17 @@
|
|
1
|
-
|
2
|
-
require 'vagrant-haipa/helpers/client'
|
1
|
+
|
3
2
|
|
4
3
|
module VagrantPlugins
|
5
4
|
module Haipa
|
6
|
-
class Provider < Vagrant.plugin(
|
5
|
+
class Provider < Vagrant.plugin("2", :provider)
|
7
6
|
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
unless @haipa_machines
|
12
|
-
result = client.request('/odata/Machines', {'$expand' => 'Networks' })
|
13
|
-
@haipa_machines = result['value']
|
14
|
-
end
|
15
|
-
return @haipa_machines
|
16
|
-
end
|
17
|
-
|
18
|
-
# This class method caches status for all machines within
|
19
|
-
# the Haipa account. A specific machine's status
|
20
|
-
# may be refreshed by passing :refresh => true as an option.
|
21
|
-
def self.haipa_machine(machine, opts = {})
|
22
|
-
client = Helpers::ApiClient.new(machine)
|
23
|
-
|
24
|
-
# load status of machines if it has not been done before
|
25
|
-
haipa_machines(machine)
|
26
|
-
|
27
|
-
if opts[:refresh] && machine.id
|
28
|
-
# refresh the machine status for the given machine
|
29
|
-
@haipa_machines.delete_if { |d| d['Id'].to_s == machine.id }
|
30
|
-
result = client.request("/odata/Machines(#{machine.id})", {'$expand' => 'Networks' })
|
31
|
-
@haipa_machines << haipa_machine = result
|
32
|
-
else
|
33
|
-
# lookup machine status for the given machine
|
34
|
-
haipa_machine = @haipa_machines.find { |d| d['Id'].to_s == machine.id }
|
35
|
-
end
|
36
|
-
|
37
|
-
# if lookup by id failed, check for a machine with a matching name
|
38
|
-
# and set the id to ensure vagrant stores locally
|
39
|
-
# TODO allow the user to configure this behavior
|
40
|
-
unless haipa_machine
|
41
|
-
name = machine.config.vm.hostname || machine.name
|
42
|
-
haipa_machine = @haipa_machines.find { |d| d['Name'] == name.to_s }
|
43
|
-
machine.id = haipa_machine['Id'].to_s if haipa_machine
|
44
|
-
end
|
45
|
-
|
46
|
-
haipa_machine || { 'Status' => 'not_created' }
|
47
|
-
end
|
7
|
+
# @return (VagrantPlugins::Haipa::Driver) current driver
|
8
|
+
attr_reader :driver
|
48
9
|
|
49
10
|
def initialize(machine)
|
50
11
|
@machine = machine
|
51
|
-
|
12
|
+
@logger = Log4r::Logger.new("vagrant::haipa::provider")
|
52
13
|
|
53
|
-
|
54
|
-
# Attempt to get the action method from the Action class if it
|
55
|
-
# exists, otherwise return nil to show that we don't support the
|
56
|
-
# given action.
|
57
|
-
action_method = "action_#{name}"
|
58
|
-
return Actions.send(action_method) if Actions.respond_to?(action_method)
|
59
|
-
nil
|
14
|
+
@driver = Driver.new(@machine)
|
60
15
|
end
|
61
16
|
|
62
17
|
# This method is called if the underying machine ID changes. Providers
|
@@ -65,10 +20,35 @@ module VagrantPlugins
|
|
65
20
|
# become `nil`). No parameters are given, since the underlying machine
|
66
21
|
# is simply the machine instance given to this object. And no
|
67
22
|
# return value is necessary.
|
68
|
-
def machine_id_changed
|
23
|
+
def machine_id_changed
|
69
24
|
end
|
70
25
|
|
71
|
-
|
26
|
+
def state
|
27
|
+
state_id = nil
|
28
|
+
state_id = :not_created if !@machine.id
|
29
|
+
|
30
|
+
if !state_id
|
31
|
+
# Run a custom action we define called "read_state" which does
|
32
|
+
# what it says. It puts the state in the `:machine_state_id`
|
33
|
+
# key in the environment.
|
34
|
+
env = @machine.action(:read_state)
|
35
|
+
state_id = env[:machine_state_id]
|
36
|
+
end
|
37
|
+
|
38
|
+
# Get the short and long description
|
39
|
+
short = state_id.to_s
|
40
|
+
long = ""
|
41
|
+
|
42
|
+
# If we're not created, then specify the special ID flag
|
43
|
+
if state_id == :not_created
|
44
|
+
state_id = Vagrant::MachineState::NOT_CREATED_ID
|
45
|
+
end
|
46
|
+
|
47
|
+
# Return the MachineState object
|
48
|
+
Vagrant::MachineState.new(state_id, short, long)
|
49
|
+
end
|
50
|
+
|
51
|
+
# This should return a hash of information that explains how to
|
72
52
|
# SSH into the machine. If the machine is not at a point where
|
73
53
|
# SSH is even possible, then `nil` should be returned.
|
74
54
|
#
|
@@ -87,9 +67,9 @@ module VagrantPlugins
|
|
87
67
|
# `ssh` prompt with a password, whereas we can pass a private key
|
88
68
|
# via commandline.
|
89
69
|
def ssh_info
|
90
|
-
|
70
|
+
haipa_machine = @driver.machine()
|
91
71
|
|
92
|
-
return nil if
|
72
|
+
return nil if haipa_machine.status.to_sym != :Running
|
93
73
|
|
94
74
|
|
95
75
|
# Run a custom action called "ssh_ip" which does what it says and puts
|
@@ -105,14 +85,15 @@ module VagrantPlugins
|
|
105
85
|
}
|
106
86
|
end
|
107
87
|
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
end
|
88
|
+
def action(name)
|
89
|
+
# Attempt to get the action method from the Action class if it
|
90
|
+
# exists, otherwise return nil to show that we don't support the
|
91
|
+
# given action.
|
92
|
+
action_method = "action_#{name}"
|
93
|
+
return Action.send(action_method) if Action.respond_to?(action_method)
|
94
|
+
nil
|
95
|
+
end
|
116
96
|
end
|
117
97
|
end
|
118
98
|
end
|
99
|
+
|
data/lib/vagrant-haipa.rb
CHANGED
@@ -1,17 +1,21 @@
|
|
1
1
|
require 'vagrant-haipa/version'
|
2
2
|
require 'vagrant-haipa/plugin'
|
3
3
|
require 'vagrant-haipa/errors'
|
4
|
+
require 'vagrant-haipa/driver'
|
4
5
|
|
5
6
|
module VagrantPlugins
|
6
7
|
module Haipa
|
7
|
-
|
8
|
-
|
9
|
-
|
8
|
+
OpenSSL::SSL::VERIFY_PEER = OpenSSL::SSL::VERIFY_NONE
|
9
|
+
|
10
|
+
lib_path = Pathname.new(File.expand_path("../vagrant-haipa", __FILE__))
|
11
|
+
autoload :Action, lib_path.join("action")
|
12
|
+
autoload :Errors, lib_path.join("errors")
|
10
13
|
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
14
|
+
# This returns the path to the source of this plugin.
|
15
|
+
#
|
16
|
+
# @return [Pathname]
|
17
|
+
def self.source_root
|
18
|
+
@source_root ||= Pathname.new(File.expand_path("../../", __FILE__))
|
15
19
|
end
|
16
20
|
|
17
21
|
I18n.load_path << File.expand_path('locales/en.yml', source_root)
|
data/locales/en.yml
CHANGED
@@ -1,47 +1,19 @@
|
|
1
1
|
en:
|
2
2
|
vagrant_haipa:
|
3
3
|
info:
|
4
|
-
off: "Machine is off"
|
5
4
|
not_created: "Machine has not been created"
|
6
5
|
already_active: "Machine is already active"
|
7
|
-
|
6
|
+
stop_machine: "Stopping the machine..."
|
7
|
+
start_machine: "Starting the machine..."
|
8
8
|
creating: "Creating a new machine..."
|
9
9
|
machine_ip: "Assigned IP address: %{ip}"
|
10
10
|
destroying: "Destroying the machine..."
|
11
|
-
shutting_down: "Shutting down the machine..."
|
12
|
-
powering_off: "Powering off the machine..."
|
13
|
-
powering_on: "Powering on the machine..."
|
14
|
-
rebuilding: "Rebuilding the machine..."
|
15
|
-
reloading: "Rebooting the machine..."
|
16
|
-
creating_user: "Creating user account: %{user}..."
|
17
|
-
late_sudo_install_deb8: "Haipa's debian-8 image lacks sudo. Installing now."
|
18
|
-
modifying_sudo: "Modifying sudoers file to remove tty requirement..."
|
19
|
-
using_key: "Using existing SSH key: %{name}"
|
20
|
-
creating_key: "Creating new SSH key: %{name}..."
|
21
|
-
trying_rsync_install: "Rsync not found, attempting to install with yum..."
|
22
|
-
rsyncing: "Rsyncing folder: %{hostpath} => %{guestpath}..."
|
23
|
-
rsync_missing: "The rsync executable was not found in the current path."
|
24
|
-
images: "Description Slug ID\n\n%{images}"
|
25
|
-
images_with_regions: "Description Slug ID Regions\n\n%{images}"
|
26
|
-
regions: "Description Slug\n\n%{regions}"
|
27
|
-
sizes: "Memory CPUs Slug\n\n%{sizes}"
|
28
|
-
list_error: 'Could not contact the Haipa API: %{message}'
|
29
11
|
will_not_destroy: |-
|
30
12
|
The instance '%{name}' will not be destroyed, since the confirmation
|
31
13
|
was declined.
|
32
14
|
already_status: |-
|
33
15
|
The machine is already %{status}.
|
34
|
-
config:
|
35
|
-
token: "Token is required"
|
36
|
-
private_key: "SSH private key path is required"
|
37
|
-
public_key: "SSH public key not found: %{key}"
|
38
16
|
errors:
|
39
|
-
public_key: |-
|
40
|
-
There was an issue reading the public key at:
|
41
|
-
|
42
|
-
Path: %{path}
|
43
|
-
|
44
|
-
Please check the file's permissions.
|
45
17
|
api_status: |-
|
46
18
|
There was an issue with the request made to the Haipa
|
47
19
|
API at:
|
@@ -53,43 +25,3 @@ en:
|
|
53
25
|
|
54
26
|
Status: %{status}
|
55
27
|
Response: %{response}
|
56
|
-
rsync: |-
|
57
|
-
There was an error when attemping to rsync a share folder.
|
58
|
-
Please inspect the error message below for more info.
|
59
|
-
|
60
|
-
Host path: %{hostpath}
|
61
|
-
Guest path: %{guestpath}
|
62
|
-
Error: %{stderr}
|
63
|
-
json: |-
|
64
|
-
There was an issue with the JSON response from the Haipa
|
65
|
-
API at:
|
66
|
-
|
67
|
-
Path: %{path}
|
68
|
-
URI Params: %{params}
|
69
|
-
|
70
|
-
The response JSON from the API was:
|
71
|
-
|
72
|
-
Response: %{response}
|
73
|
-
result_match: |-
|
74
|
-
The result collection for %{collection_name}:
|
75
|
-
|
76
|
-
%{sub_obj}
|
77
|
-
|
78
|
-
Contained no object with the value "%{value}" for the the
|
79
|
-
key "%{key}".
|
80
|
-
|
81
|
-
Please ensure that the configured value exists in the collection.
|
82
|
-
certificate: |-
|
83
|
-
The secure connection to the Haipa API has failed. Please
|
84
|
-
ensure that your local certificates directory is defined in the
|
85
|
-
provider config.
|
86
|
-
|
87
|
-
config.vm.provider :haipa do |vm|
|
88
|
-
vm.ca_path = "/path/to/ssl/ca/cert.crt"
|
89
|
-
end
|
90
|
-
|
91
|
-
This is generally caused by the OpenSSL configuration associated
|
92
|
-
with the Ruby install being unaware of the system specific ca
|
93
|
-
certs.
|
94
|
-
local_ip: |-
|
95
|
-
The Haipa provider was unable to determine the host's IP.
|
data/spec/spec_helper.rb
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
require "bundler/setup"
|
2
|
+
|
3
|
+
# Disable Vagrant autoloading so that other plugins defined in the Gemfile for
|
4
|
+
# Acceptance tests are not loaded.
|
5
|
+
ENV['VAGRANT_NO_PLUGINS'] = '1'
|
6
|
+
|
7
|
+
require 'vagrant-spec/unit'
|
8
|
+
require 'vagrant-haipa'
|
9
|
+
|
10
|
+
RSpec.configure do |config|
|
11
|
+
# Enable flags like --only-failures and --next-failure
|
12
|
+
config.example_status_persistence_file_path = ".rspec_status"
|
13
|
+
|
14
|
+
# Disable RSpec exposing methods globally on `Module` and `main`
|
15
|
+
config.disable_monkey_patching!
|
16
|
+
|
17
|
+
config.expect_with :rspec do |c|
|
18
|
+
c.syntax = :expect
|
19
|
+
end
|
20
|
+
end
|
@@ -0,0 +1,38 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
require 'vagrant-haipa/provider'
|
3
|
+
|
4
|
+
RSpec.describe VagrantPlugins::Haipa::Provider do
|
5
|
+
include_context 'vagrant-unit'
|
6
|
+
|
7
|
+
let(:machine){ double("machine") }
|
8
|
+
let(:platform){ double("platform") }
|
9
|
+
subject { described_class.new(machine) }
|
10
|
+
|
11
|
+
before do
|
12
|
+
stub_const("Vagrant::Util::Platform", platform)
|
13
|
+
allow(machine).to receive(:id).and_return("foo")
|
14
|
+
end
|
15
|
+
|
16
|
+
|
17
|
+
describe "#driver" do
|
18
|
+
it "is initialized" do
|
19
|
+
expect(subject.driver).to be_kind_of(VagrantPlugins::Haipa::Driver)
|
20
|
+
end
|
21
|
+
end
|
22
|
+
|
23
|
+
describe "#state" do
|
24
|
+
it "returns not_created if no ID" do
|
25
|
+
allow(machine).to receive(:id).and_return(nil)
|
26
|
+
|
27
|
+
expect(subject.state.id).to eq(:not_created)
|
28
|
+
end
|
29
|
+
|
30
|
+
it "calls an action to determine the ID" do
|
31
|
+
allow(machine).to receive(:id).and_return("foo")
|
32
|
+
expect(machine).to receive(:action).with(:read_state).
|
33
|
+
and_return({ machine_state_id: :bar })
|
34
|
+
|
35
|
+
expect(subject.state.id).to eq(:bar)
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
data/test/Vagrantfile
CHANGED
@@ -3,41 +3,50 @@ REQUIRED_PLUGINS = %w(vagrant-haipa)
|
|
3
3
|
Vagrant.configure('2') do |config|
|
4
4
|
|
5
5
|
config.ssh.username = 'ubuntu'
|
6
|
-
config.ssh.password = '
|
6
|
+
config.ssh.password = 'ubuntu'
|
7
7
|
|
8
8
|
config.vm.synced_folder ".", "/vagrant", disabled: true
|
9
9
|
|
10
10
|
#config.vm.provision :shell, :path => 'scripts/provision.sh'
|
11
|
+
#config.omnibus.chef_version = :latest
|
12
|
+
|
11
13
|
|
12
14
|
config.vm.define :ubuntu do |ubuntu|
|
15
|
+
|
13
16
|
ubuntu.vm.provider :haipa do |provider|
|
17
|
+
provider.client_id = 'console'
|
18
|
+
provider.client_key_file = 'console.key'
|
19
|
+
provider.identity_endpoint = 'https://localhost:62189/identity'
|
20
|
+
provider.api_endpoint = 'https://localhost:62189/api'
|
21
|
+
|
14
22
|
provider.vm_config = {
|
15
|
-
'
|
16
|
-
'
|
23
|
+
'memory' => {
|
24
|
+
'startup' => 2048
|
17
25
|
},
|
18
|
-
'
|
26
|
+
'disks' => [
|
19
27
|
{
|
20
|
-
|
21
|
-
|
28
|
+
'template' => 'T:\openstack\ubuntu-xenial.vhdx',
|
29
|
+
'size' => 20
|
22
30
|
}
|
23
31
|
],
|
24
|
-
'
|
32
|
+
'networkAdapters' => [
|
25
33
|
{
|
26
|
-
|
27
|
-
|
34
|
+
'name' => "eth0",
|
35
|
+
'switchName' => "Default Switch",
|
28
36
|
}
|
29
37
|
] ,
|
30
38
|
}
|
31
39
|
|
32
40
|
provider.provision = {
|
33
|
-
'
|
34
|
-
|
35
|
-
"
|
41
|
+
'hostname' => 'basic',
|
42
|
+
'userData' => {
|
43
|
+
"package_upgrade": true,
|
36
44
|
"chpasswd" => {
|
37
|
-
"expire"
|
45
|
+
"expire": false
|
46
|
+
},
|
47
|
+
"password" => "ubuntu"
|
38
48
|
}
|
39
49
|
}
|
40
|
-
}
|
41
50
|
end
|
42
51
|
end
|
43
52
|
end
|
data/test/console.key
ADDED
@@ -0,0 +1,27 @@
|
|
1
|
+
-----BEGIN RSA PRIVATE KEY-----
|
2
|
+
MIIEogIBAAKCAQEAw+q1IZy3iYRsjzZuitP4+2UYVY+AO/OZq5/O5erlseayss7g
|
3
|
+
zomY2NIg/kYKcrJkUZ04Y9RknWLHEw9iHGIxEMIChdaJTlM0IYgaVToWKZeWi2+h
|
4
|
+
yogPzAYziL/+fG0r6GnEvI7AHztsZUbZe7PcXL/NP0ZIamsMzXSAEt1Y8Fi50reV
|
5
|
+
XkNO9h60oI79crOIH+bcfgIpRYMkHcxrAFGBkfFMcIjup/G4GPEpKl7pbeTHm87u
|
6
|
+
3QwQivIlYCX/fkdmggLcWaOpA4GtkLOzWgjekIulj1pGymbCsdOd48Pnp/+zWttA
|
7
|
+
SxVLMq6egGXya/I8mQcAMBx4tm5HiMi/dXNS1QIDAQABAoIBAE9TsZOyiP49iFdU
|
8
|
+
it3bhm0EOh4qxJmBwS8kvfmKawblimWsLopyXFkue/15DrHyWXxSVIrXbQXtAP5O
|
9
|
+
tEMZ3xQR+kOG4oG8XtdU7JSluGOO5X3/7Vq8TOkneaZdVwW6jpTEfsx6YIBE51b6
|
10
|
+
oQTdhtRnNQvxwVCVl9F44oLA7UojbX1PbSbW4OO5X+ZX0Xgk3U39MUjdza4jyggx
|
11
|
+
Dyp+QWk8sN/6Xn0E5DM97c+y2xsLlekFckWTUp7ECb0iTZ35SuHxe3n9xAOclXBI
|
12
|
+
CQ8VZZxKqRwh8guB6OFxrE9jjVCxSg11hnXbHte9iJYb4sCAI4I+jNJFprLhEmSs
|
13
|
+
cvtjkuECgYEA3ptQTys9IAv6H9WNZ49TBQqzL1Y+rNm8k1zkxo6G1z/47FtPSjmU
|
14
|
+
0SRdeJYjRWiM8k5WE8mMl5qqhonFoDq9ILF/70GgKnaI62P8vF4meAWW6dERY//P
|
15
|
+
JyquYJBX+oQjPVStWrSihD5/yjhhciy78BFQLPbfc7Hp8XJxS8MLzPsCgYEA4U5u
|
16
|
+
qNmJKECPg+TJUw1gxKggAMINNIezMSsmPXRdCN5MZugfL1uTdJN3Wu8kdc+3hmHQ
|
17
|
+
k1k2iYMCJ718cD2H3zanOYs6iqeD5o5K00JJKBbgnWyGB1I7uSHJMAp9Ur4nX+LV
|
18
|
+
8/zFd4KI0Nmv1AUlb3gG8e680TnZabZX11Xhtm8CgYAJD/GZB32ZjGNGYH89NAyB
|
19
|
+
LApXZv9uMf8HUMTPgIXkxWnw1VbJAscYLI7RleshrDvwsVe3voDGuzkt+PXerAV/
|
20
|
+
CzrWFqnakLDKRGvJj1upjzCxnB1FIOjiA07OB5JNVIvKt2PHSYtELvcs2Fa/Oyr7
|
21
|
+
fvjwm6xFHX0Uo0ARgYM9eQKBgBecdJRVV75UJbYYv9BoUn/JbrElpOSgY/L/Jp7C
|
22
|
+
Fw3a3f7azInV+vn4ikWJUjTWc9EtZwJKEyEODafEf8nzaM3HmHa7VIM7UuNSfhzt
|
23
|
+
kWUWIKvet50EzSV1mPPj5YZKTy4JQ4qyLq97ioL4jSiW8XlhBrlL35W9jj850LLM
|
24
|
+
WT8ZAoGAU4omGMECa9CNU9QoZvNuXpUju823Euja2Lg2AE7XGNBxqA8dmL5czuXR
|
25
|
+
gEEZ740uPRplAj3SPWoBHT/Gzo44NUCJFuouHu0CBaTUssir1E/TnS9wQI694eRg
|
26
|
+
hoqMWWCMQ2+rE7bONY60PaB4Y6mAY9SMS9r2QAI8sipuwraj5l8=
|
27
|
+
-----END RSA PRIVATE KEY-----
|
data/vagrant
CHANGED
@@ -1,27 +1,27 @@
|
|
1
|
-
#!C:/Users/vagrant/AppData/Local/Temp/
|
2
|
-
#
|
3
|
-
# This file was generated by RubyGems.
|
4
|
-
#
|
5
|
-
# The application 'vagrant' is installed as part of a gem, and
|
6
|
-
# this file is here to facilitate running it.
|
7
|
-
#
|
8
|
-
|
9
|
-
require 'rubygems'
|
10
|
-
|
11
|
-
version = ">= 0.a"
|
12
|
-
|
13
|
-
if ARGV.first
|
14
|
-
str = ARGV.first
|
15
|
-
str = str.dup.force_encoding("BINARY") if str.respond_to? :force_encoding
|
16
|
-
if str =~ /\A_(.*)_\z/ and Gem::Version.correct?($1) then
|
17
|
-
version = $1
|
18
|
-
ARGV.shift
|
19
|
-
end
|
20
|
-
end
|
21
|
-
|
22
|
-
if Gem.respond_to?(:activate_bin_path)
|
23
|
-
load Gem.activate_bin_path('vagrant', 'vagrant', version)
|
24
|
-
else
|
25
|
-
gem "vagrant", version
|
26
|
-
load Gem.bin_path("vagrant", "vagrant", version)
|
27
|
-
end
|
1
|
+
#!C:/Users/vagrant/AppData/Local/Temp/hecdnuu3.bee/embedded/mingw64/bin/ruby.exe
|
2
|
+
#
|
3
|
+
# This file was generated by RubyGems.
|
4
|
+
#
|
5
|
+
# The application 'vagrant' is installed as part of a gem, and
|
6
|
+
# this file is here to facilitate running it.
|
7
|
+
#
|
8
|
+
|
9
|
+
require 'rubygems'
|
10
|
+
|
11
|
+
version = ">= 0.a"
|
12
|
+
|
13
|
+
if ARGV.first
|
14
|
+
str = ARGV.first
|
15
|
+
str = str.dup.force_encoding("BINARY") if str.respond_to? :force_encoding
|
16
|
+
if str =~ /\A_(.*)_\z/ and Gem::Version.correct?($1) then
|
17
|
+
version = $1
|
18
|
+
ARGV.shift
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
22
|
+
if Gem.respond_to?(:activate_bin_path)
|
23
|
+
load Gem.activate_bin_path('vagrant', 'vagrant', version)
|
24
|
+
else
|
25
|
+
gem "vagrant", version
|
26
|
+
load Gem.bin_path("vagrant", "vagrant", version)
|
27
|
+
end
|
data/vagrant-haipa.gemspec
CHANGED
@@ -6,8 +6,8 @@ require 'vagrant-haipa/version'
|
|
6
6
|
Gem::Specification.new do |gem|
|
7
7
|
gem.name = "vagrant-haipa"
|
8
8
|
gem.version = VagrantPlugins::Haipa::VERSION
|
9
|
-
gem.authors = ["
|
10
|
-
gem.email = ["
|
9
|
+
gem.authors = ["Haipa contributors"]
|
10
|
+
gem.email = ["package-maintainers@haipa.io"]
|
11
11
|
gem.description = %q{Enables Vagrant to manage Hyper-V with Haipa}
|
12
12
|
gem.summary = gem.description
|
13
13
|
|
@@ -15,7 +15,6 @@ Gem::Specification.new do |gem|
|
|
15
15
|
gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
|
16
16
|
gem.require_paths = ["lib"]
|
17
17
|
|
18
|
-
gem.add_dependency "faraday", ">= 0.8.6"
|
19
|
-
gem.add_dependency "json"
|
20
18
|
gem.add_dependency "log4r"
|
19
|
+
gem.add_dependency "haipa_compute", ">= 0.0.2"
|
21
20
|
end
|
metadata
CHANGED
@@ -1,31 +1,17 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: vagrant-haipa
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
|
-
-
|
7
|
+
- Haipa contributors
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-
|
11
|
+
date: 2019-08-09 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
|
-
name:
|
15
|
-
requirement: !ruby/object:Gem::Requirement
|
16
|
-
requirements:
|
17
|
-
- - ">="
|
18
|
-
- !ruby/object:Gem::Version
|
19
|
-
version: 0.8.6
|
20
|
-
type: :runtime
|
21
|
-
prerelease: false
|
22
|
-
version_requirements: !ruby/object:Gem::Requirement
|
23
|
-
requirements:
|
24
|
-
- - ">="
|
25
|
-
- !ruby/object:Gem::Version
|
26
|
-
version: 0.8.6
|
27
|
-
- !ruby/object:Gem::Dependency
|
28
|
-
name: json
|
14
|
+
name: log4r
|
29
15
|
requirement: !ruby/object:Gem::Requirement
|
30
16
|
requirements:
|
31
17
|
- - ">="
|
@@ -39,65 +25,61 @@ dependencies:
|
|
39
25
|
- !ruby/object:Gem::Version
|
40
26
|
version: '0'
|
41
27
|
- !ruby/object:Gem::Dependency
|
42
|
-
name:
|
28
|
+
name: haipa_compute
|
43
29
|
requirement: !ruby/object:Gem::Requirement
|
44
30
|
requirements:
|
45
31
|
- - ">="
|
46
32
|
- !ruby/object:Gem::Version
|
47
|
-
version:
|
33
|
+
version: 0.0.2
|
48
34
|
type: :runtime
|
49
35
|
prerelease: false
|
50
36
|
version_requirements: !ruby/object:Gem::Requirement
|
51
37
|
requirements:
|
52
38
|
- - ">="
|
53
39
|
- !ruby/object:Gem::Version
|
54
|
-
version:
|
40
|
+
version: 0.0.2
|
55
41
|
description: Enables Vagrant to manage Hyper-V with Haipa
|
56
42
|
email:
|
57
|
-
-
|
43
|
+
- package-maintainers@haipa.io
|
58
44
|
executables: []
|
59
45
|
extensions: []
|
60
46
|
extra_rdoc_files: []
|
61
47
|
files:
|
48
|
+
- ".editorconfig"
|
62
49
|
- ".gitignore"
|
50
|
+
- ".rspec_status"
|
63
51
|
- ".vscode/launch.json"
|
64
52
|
- Gemfile
|
53
|
+
- Gemfile.lock
|
65
54
|
- LICENSE
|
66
|
-
- README.md
|
67
55
|
- Rakefile
|
68
56
|
- box/haipa.box
|
69
57
|
- box/metadata.json
|
70
58
|
- lib/vagrant-haipa.rb
|
71
|
-
- lib/vagrant-haipa/
|
72
|
-
- lib/vagrant-haipa/
|
73
|
-
- lib/vagrant-haipa/
|
74
|
-
- lib/vagrant-haipa/
|
75
|
-
- lib/vagrant-haipa/
|
76
|
-
- lib/vagrant-haipa/
|
77
|
-
- lib/vagrant-haipa/
|
78
|
-
- lib/vagrant-haipa/
|
79
|
-
- lib/vagrant-haipa/
|
80
|
-
- lib/vagrant-haipa/
|
81
|
-
- lib/vagrant-haipa/
|
82
|
-
- lib/vagrant-haipa/
|
83
|
-
- lib/vagrant-haipa/
|
84
|
-
- lib/vagrant-haipa/actions/start_machine.rb
|
85
|
-
- lib/vagrant-haipa/actions/stop_machine.rb
|
86
|
-
- lib/vagrant-haipa/actions/wait_for_ip_address.rb
|
59
|
+
- lib/vagrant-haipa/action.rb
|
60
|
+
- lib/vagrant-haipa/action/converge_machine.rb
|
61
|
+
- lib/vagrant-haipa/action/delete_machine.rb
|
62
|
+
- lib/vagrant-haipa/action/is_created.rb
|
63
|
+
- lib/vagrant-haipa/action/is_running.rb
|
64
|
+
- lib/vagrant-haipa/action/message_already_created.rb
|
65
|
+
- lib/vagrant-haipa/action/message_not_created.rb
|
66
|
+
- lib/vagrant-haipa/action/message_will_not_destroy.rb
|
67
|
+
- lib/vagrant-haipa/action/read_state.rb
|
68
|
+
- lib/vagrant-haipa/action/set_name.rb
|
69
|
+
- lib/vagrant-haipa/action/start_machine.rb
|
70
|
+
- lib/vagrant-haipa/action/stop_machine.rb
|
71
|
+
- lib/vagrant-haipa/action/wait_for_ip_address.rb
|
87
72
|
- lib/vagrant-haipa/config.rb
|
73
|
+
- lib/vagrant-haipa/driver.rb
|
88
74
|
- lib/vagrant-haipa/errors.rb
|
89
|
-
- lib/vagrant-haipa/helpers/client.rb
|
90
|
-
- lib/vagrant-haipa/helpers/result.rb
|
91
75
|
- lib/vagrant-haipa/plugin.rb
|
92
76
|
- lib/vagrant-haipa/provider.rb
|
93
77
|
- lib/vagrant-haipa/version.rb
|
94
78
|
- locales/en.yml
|
79
|
+
- spec/spec_helper.rb
|
80
|
+
- spec/unit/provider_spec.rb
|
95
81
|
- test/Vagrantfile
|
96
|
-
- test/
|
97
|
-
- test/scripts/provision.sh
|
98
|
-
- test/test.sh
|
99
|
-
- test/test_id_rsa
|
100
|
-
- test/test_id_rsa.pub
|
82
|
+
- test/console.key
|
101
83
|
- vagrant
|
102
84
|
- vagrant-haipa.gemspec
|
103
85
|
homepage:
|
@@ -118,15 +100,12 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
118
100
|
- !ruby/object:Gem::Version
|
119
101
|
version: '0'
|
120
102
|
requirements: []
|
121
|
-
|
122
|
-
rubygems_version: 2.7.6
|
103
|
+
rubygems_version: 3.0.3
|
123
104
|
signing_key:
|
124
105
|
specification_version: 4
|
125
106
|
summary: Enables Vagrant to manage Hyper-V with Haipa
|
126
107
|
test_files:
|
108
|
+
- spec/spec_helper.rb
|
109
|
+
- spec/unit/provider_spec.rb
|
127
110
|
- test/Vagrantfile
|
128
|
-
- test/
|
129
|
-
- test/scripts/provision.sh
|
130
|
-
- test/test.sh
|
131
|
-
- test/test_id_rsa
|
132
|
-
- test/test_id_rsa.pub
|
111
|
+
- test/console.key
|