ey-core 3.4.0 → 3.4.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.
- data/Rakefile +4 -1
- data/ey-core.gemspec +3 -0
- data/features/accounts.feature +13 -0
- data/features/applications.feature +29 -0
- data/features/current_user.feature +14 -0
- data/features/environments.feature +30 -0
- data/features/init.feature +6 -0
- data/features/login.feature +6 -0
- data/features/scp.feature +6 -0
- data/features/step_definitions/accounts_steps.rb +23 -0
- data/features/step_definitions/applications_steps.rb +46 -0
- data/features/step_definitions/current_user_steps.rb +11 -0
- data/features/step_definitions/deprecated_command_steps.rb +3 -0
- data/features/step_definitions/environments_steps.rb +37 -0
- data/features/step_definitions/version_steps.rb +3 -0
- data/features/support/account_helpers.rb +89 -0
- data/features/support/app_helpers.rb +19 -0
- data/features/support/aruba.rb +1 -0
- data/features/support/boilerplate.rb +1 -0
- data/features/support/client_helpers.rb +36 -0
- data/features/support/config_file_helpers.rb +42 -0
- data/features/support/core.rb +19 -0
- data/features/support/deployment_helpers.rb +19 -0
- data/features/support/env.rb +40 -0
- data/features/support/environment_helpers.rb +23 -0
- data/features/support/fake_kernel.rb +23 -0
- data/features/support/io.rb +5 -0
- data/features/support/mock_api.rb +21 -0
- data/features/support/output_helpers.rb +7 -0
- data/features/support/resource_helpers.rb +189 -0
- data/features/support/server_helpers.rb +27 -0
- data/features/version.feature +8 -0
- data/features/whoami.feature +14 -0
- data/lib/ey-core/version.rb +1 -1
- metadata +215 -56
- checksums.yaml +0 -7
@@ -0,0 +1,19 @@
|
|
1
|
+
module CoreHelpers
|
2
|
+
def client
|
3
|
+
begin
|
4
|
+
recall_fact(:client)
|
5
|
+
rescue
|
6
|
+
memorize_fact(:client, create_client)
|
7
|
+
end
|
8
|
+
end
|
9
|
+
|
10
|
+
def current_user
|
11
|
+
client.users.current
|
12
|
+
end
|
13
|
+
|
14
|
+
def current_user_hash
|
15
|
+
client.current_user
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
World(CoreHelpers)
|
@@ -0,0 +1,19 @@
|
|
1
|
+
module DeploymentHelpers
|
2
|
+
def known_deployments
|
3
|
+
begin
|
4
|
+
recall_fact(:known_deployments)
|
5
|
+
rescue
|
6
|
+
memorize_fact(:known_deployments, [])
|
7
|
+
end
|
8
|
+
end
|
9
|
+
|
10
|
+
def first_deployment
|
11
|
+
known_deployments.first.reload
|
12
|
+
end
|
13
|
+
|
14
|
+
def last_deployment
|
15
|
+
known_deployments.last.reload
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
World(DeploymentHelpers)
|
@@ -0,0 +1,40 @@
|
|
1
|
+
#require 'simplecov'
|
2
|
+
#SimpleCov.coverage_dir 'coverage/features'
|
3
|
+
#SimpleCov.minimum_coverage 95
|
4
|
+
#SimpleCov.start do
|
5
|
+
#add_filter '/spec/'
|
6
|
+
#add_filter '/features/'
|
7
|
+
#add_filter '/mock/'
|
8
|
+
#add_group 'Libraries', 'lib'
|
9
|
+
#add_group 'CLI', 'lib/ey-core/cli/'
|
10
|
+
#add_group 'CLI Helpers', 'lib/ey-core/cli/helpers'
|
11
|
+
#end
|
12
|
+
|
13
|
+
require 'aruba/cucumber'
|
14
|
+
require 'factis/cucumber'
|
15
|
+
require 'ey-core'
|
16
|
+
require 'ey-core/version'
|
17
|
+
require 'ey-core/cli/main'
|
18
|
+
|
19
|
+
EXE_DIR = File.expand_path(File.join(File.dirname(__FILE__), '/../../exe'))
|
20
|
+
LIB_DIR = File.join(File.expand_path(File.dirname(__FILE__)),'..','..','lib')
|
21
|
+
|
22
|
+
Aruba.configure do |config|
|
23
|
+
config.command_search_paths = config.command_search_paths << EXE_DIR
|
24
|
+
config.home_directory = File.join(config.root_directory, config.working_directory)
|
25
|
+
config.command_launcher = :in_process
|
26
|
+
config.main_class = Ey::Core::Cli::Main
|
27
|
+
end
|
28
|
+
|
29
|
+
Before do
|
30
|
+
# Using "announce" causes massive warnings on 1.9.2
|
31
|
+
@puts = true
|
32
|
+
@original_rubylib = ENV['RUBYLIB']
|
33
|
+
ENV['RUBYLIB'] = LIB_DIR + File::PATH_SEPARATOR + ENV['RUBYLIB'].to_s
|
34
|
+
#ENV['CORE_URL'] ||= "http://api-development.localdev.engineyard.com:9292"
|
35
|
+
end
|
36
|
+
|
37
|
+
After do
|
38
|
+
ENV['RUBYLIB'] = @original_rubylib
|
39
|
+
#ENV.delete('CORE_URL')
|
40
|
+
end
|
@@ -0,0 +1,23 @@
|
|
1
|
+
module EnvironmentHelpers
|
2
|
+
def environment_named(name)
|
3
|
+
client.environments.first(name: name)
|
4
|
+
end
|
5
|
+
|
6
|
+
def known_environments
|
7
|
+
begin
|
8
|
+
recall_fact(:known_environments)
|
9
|
+
rescue
|
10
|
+
memorize_fact(:known_environments, [])
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
def first_environment
|
15
|
+
known_environments.first.reload
|
16
|
+
end
|
17
|
+
|
18
|
+
def last_environment
|
19
|
+
known_environments.last.reload
|
20
|
+
end
|
21
|
+
end
|
22
|
+
|
23
|
+
World(EnvironmentHelpers)
|
@@ -0,0 +1,23 @@
|
|
1
|
+
require 'aruba/processes/in_process'
|
2
|
+
|
3
|
+
module Aruba
|
4
|
+
module Processes
|
5
|
+
class InProcess < BasicProcess
|
6
|
+
attr_reader :kernel
|
7
|
+
|
8
|
+
class FakeKernel
|
9
|
+
def system(*args)
|
10
|
+
system_commands.push(args.join(' '))
|
11
|
+
end
|
12
|
+
|
13
|
+
def system_commands
|
14
|
+
@system_commands ||= []
|
15
|
+
end
|
16
|
+
|
17
|
+
def abort(msg)
|
18
|
+
exit(false)
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
require 'cucumber/rspec/doubles'
|
2
|
+
|
3
|
+
# Set up the mocks. Ookla would approve.
|
4
|
+
Cistern.formatter = Cistern::Formatter::AwesomePrint
|
5
|
+
Ey::Core::Client.mock!
|
6
|
+
Ey::Core::Client::Mock.timeout = 0.1
|
7
|
+
Ey::Core::Client::Mock.poll_interval = 0
|
8
|
+
Ey::Core::Client::Real.timeout = 3
|
9
|
+
Ey::Core::Client::Real.poll_interval = 0
|
10
|
+
|
11
|
+
Before do
|
12
|
+
# Reset the mocked API before every scenario
|
13
|
+
Ey::Core::Client::Mock.reset!
|
14
|
+
|
15
|
+
# Stub out `#core_client` on all subcommands to ensure that they're using
|
16
|
+
# the mocked client. Otherwise, everything turns to calamity, because the
|
17
|
+
# mocked API is silly.
|
18
|
+
allow_any_instance_of(Ey::Core::Cli::Subcommand).
|
19
|
+
to receive(:core_client).
|
20
|
+
and_return(client)
|
21
|
+
end
|
@@ -0,0 +1,189 @@
|
|
1
|
+
module ResourceHelpers
|
2
|
+
def load_blueprint(options={})
|
3
|
+
application = create_application(account: account)
|
4
|
+
database_service = create_database_service(provider: account.providers.first)
|
5
|
+
environment = create_environment(account: account, application: application, database_service: database_service, environment: {name: "environment#{SecureRandom.hex(4)}"})
|
6
|
+
|
7
|
+
[database_service, environment]
|
8
|
+
end
|
9
|
+
|
10
|
+
def create_application(options={})
|
11
|
+
account = options.delete(:account) || create_account(options)
|
12
|
+
options = Cistern::Hash.stringify_keys(options)
|
13
|
+
|
14
|
+
options["name"] ||= "application#{SecureRandom.hex(4)}"
|
15
|
+
options["repository"] ||= "git://github.com/engineyard/todo.git"
|
16
|
+
options["type"] ||= "rails4"
|
17
|
+
|
18
|
+
account.applications.create!(options)
|
19
|
+
end
|
20
|
+
|
21
|
+
def create_server(client, options={})
|
22
|
+
options = Cistern::Hash.stringify_keys(options)
|
23
|
+
|
24
|
+
request = environment.servers.create(
|
25
|
+
"flavor" => "m3.medium",
|
26
|
+
"role" => "util",
|
27
|
+
)
|
28
|
+
|
29
|
+
request.resource!
|
30
|
+
end
|
31
|
+
|
32
|
+
def create_cost(client, options={})
|
33
|
+
account = options[:account] || create_account(client: client)
|
34
|
+
level = options[:level] || "summarized"
|
35
|
+
finality = options[:finality] || "estimated"
|
36
|
+
related_resource_type = options[:related_resource_type] || "account"
|
37
|
+
category = options[:category] || "non-server"
|
38
|
+
description = options[:description] || "AWS Other Services"
|
39
|
+
value = options[:value] || "1763"
|
40
|
+
environment = options[:environment] || nil
|
41
|
+
|
42
|
+
client.data[:costs] << {
|
43
|
+
billing_month: "2015-07",
|
44
|
+
data_type: "cost",
|
45
|
+
level: level,
|
46
|
+
finality: finality,
|
47
|
+
related_resource_type: related_resource_type,
|
48
|
+
category: category,
|
49
|
+
units: "USD cents",
|
50
|
+
description: description,
|
51
|
+
value: value,
|
52
|
+
account: client.url_for("accounts/#{account.identity}"),
|
53
|
+
environment: environment
|
54
|
+
}
|
55
|
+
end
|
56
|
+
|
57
|
+
def create_account_referral(client, options={})
|
58
|
+
referred = options.delete(:referred) || create_account(client: client)
|
59
|
+
referrer = options.delete(:referrer) || create_account(client: client)
|
60
|
+
|
61
|
+
account_referral_id = SecureRandom.uuid
|
62
|
+
referral = client.data[:account_referrals][account_referral_id] = {
|
63
|
+
"id" => account_referral_id,
|
64
|
+
"referrer" => client.url_for("accounts/#{referrer.identity}"),
|
65
|
+
"referred" => client.url_for("accounts/#{referred.identity}"),
|
66
|
+
}
|
67
|
+
|
68
|
+
client.account_referrals.new(referral)
|
69
|
+
end
|
70
|
+
|
71
|
+
def create_firewall(client, options={})
|
72
|
+
provider = options.fetch(:provider) { create_provider(client: client) }
|
73
|
+
|
74
|
+
firewall_params = options[:firewall] || {}
|
75
|
+
name = firewall_params.delete(:name) || SecureRandom.hex(6)
|
76
|
+
location = firewall_params.delete(:location) || "us-west-2"
|
77
|
+
|
78
|
+
client.firewalls.create!(
|
79
|
+
:name => name,
|
80
|
+
:location => location,
|
81
|
+
:provider => provider,
|
82
|
+
).resource!
|
83
|
+
end
|
84
|
+
|
85
|
+
def create_database_service(options={})
|
86
|
+
provider = options[:provider] || create_provider(options.merge(client: client))
|
87
|
+
|
88
|
+
database_service_params = Hashie::Mash.new(
|
89
|
+
:name => Faker::Name.first_name,
|
90
|
+
:provider => provider,
|
91
|
+
).merge(options.fetch(:database_service, {}))
|
92
|
+
|
93
|
+
database_server_params = Hashie::Mash.new(
|
94
|
+
:location => "us-west-2c",
|
95
|
+
:flavor => "db.m3.large",
|
96
|
+
:engine => "postgres",
|
97
|
+
:version => "9.3.5",
|
98
|
+
).merge(options.fetch(:database_server, {}))
|
99
|
+
|
100
|
+
client.database_services.create!(database_service_params.merge(database_server: database_server_params)).resource!
|
101
|
+
end
|
102
|
+
|
103
|
+
def create_environment(options={})
|
104
|
+
account = options[:account] || create_account(options)
|
105
|
+
|
106
|
+
unless account.providers.first || options[:provider]
|
107
|
+
create_provider(account: account)
|
108
|
+
end
|
109
|
+
|
110
|
+
environment = options[:environment] || {}
|
111
|
+
application = options[:application] || create_application(account: account)
|
112
|
+
database_service = options[:database_service]
|
113
|
+
configuration = Cistern::Hash.stringify_keys(options[:configuration] || {})
|
114
|
+
configuration["type"] = "production-cluster" if configuration["type"] == "production"
|
115
|
+
configuration["type"] ||= "solo"
|
116
|
+
environment[:name] ||= options.fetch(:name, SecureRandom.hex(3))
|
117
|
+
environment[:region] ||= "us-west-2"
|
118
|
+
|
119
|
+
environment.merge!(application_id: application.id, account: account)
|
120
|
+
environment.merge!(database_service: database_service) if database_service
|
121
|
+
environment = client.environments.create!(environment)
|
122
|
+
|
123
|
+
unless options[:boot] == false
|
124
|
+
request = environment.boot(configuration: configuration, application_id: application.id)
|
125
|
+
request.ready!
|
126
|
+
end
|
127
|
+
environment
|
128
|
+
end
|
129
|
+
|
130
|
+
def create_provider_location(client, attributes={})
|
131
|
+
attributes = Cistern::Hash.stringify_keys(attributes)
|
132
|
+
|
133
|
+
if provider = attributes.delete("provider")
|
134
|
+
attributes["provider"] = client.url_for("/providers/#{provider.id}")
|
135
|
+
end
|
136
|
+
|
137
|
+
attributes["id"] ||= client.uuid
|
138
|
+
client.data[:provider_locations][attributes["id"]] = attributes
|
139
|
+
|
140
|
+
client.provider_locations.new(attributes)
|
141
|
+
end
|
142
|
+
|
143
|
+
def create_server_event(client, attributes={})
|
144
|
+
attributes = Cistern::Hash.stringify_keys(attributes)
|
145
|
+
|
146
|
+
attributes.fetch("type")
|
147
|
+
|
148
|
+
if server = attributes.delete("server")
|
149
|
+
attributes["server"] = client.url_for("/servers/#{server.id}")
|
150
|
+
end
|
151
|
+
|
152
|
+
event_id = attributes["id"] ||= SecureRandom.uuid
|
153
|
+
|
154
|
+
client.server_events.new(
|
155
|
+
client.data[:server_events][event_id] = attributes
|
156
|
+
)
|
157
|
+
end
|
158
|
+
|
159
|
+
def create_logical_database(options={})
|
160
|
+
database_service = options.fetch(:database_service) { create_database_service(options) }
|
161
|
+
|
162
|
+
database_service.databases.create!(
|
163
|
+
:name => SecureRandom.hex(6),
|
164
|
+
:username => "ey#{SecureRandom.hex(6)}",
|
165
|
+
:password => SecureRandom.hex(8),
|
166
|
+
).resource!
|
167
|
+
end
|
168
|
+
|
169
|
+
def create_untracked_server(options={})
|
170
|
+
provider = options.fetch(:provider) { create_provider(options) }
|
171
|
+
|
172
|
+
untracked_server = options[:untracked_server] || {}
|
173
|
+
|
174
|
+
provisioner_id = untracked_server[:provisioner_id] || SecureRandom.uuid
|
175
|
+
location = untracked_server[:location] || "us-west-2b"
|
176
|
+
provisioned_id = untracked_server[:provisioned_id] || "i-#{SecureRandom.hex(4)}"
|
177
|
+
state = untracked_server[:state] || "found"
|
178
|
+
|
179
|
+
client.untracked_servers.create(
|
180
|
+
:location => location,
|
181
|
+
:provider => provider,
|
182
|
+
:provisioned_id => provisioned_id,
|
183
|
+
:provisioner_id => provisioner_id,
|
184
|
+
:state => state,
|
185
|
+
)
|
186
|
+
end
|
187
|
+
end
|
188
|
+
|
189
|
+
World(ResourceHelpers)
|
@@ -0,0 +1,27 @@
|
|
1
|
+
module ServerHelpers
|
2
|
+
def known_servers
|
3
|
+
begin
|
4
|
+
recall_fact(:known_servers)
|
5
|
+
rescue
|
6
|
+
memorize_fact(:known_servers, [])
|
7
|
+
end
|
8
|
+
end
|
9
|
+
|
10
|
+
def seen_servers
|
11
|
+
begin
|
12
|
+
recall_fact(:seen_servers)
|
13
|
+
rescue
|
14
|
+
memorize_fact(:seen_servers, [])
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
18
|
+
def first_server
|
19
|
+
known_servers.first
|
20
|
+
end
|
21
|
+
|
22
|
+
def last_server
|
23
|
+
known_servers.last
|
24
|
+
end
|
25
|
+
end
|
26
|
+
|
27
|
+
World(ServerHelpers)
|
@@ -0,0 +1,14 @@
|
|
1
|
+
Feature: Whoami
|
2
|
+
In order to ensure that I'm logged into the right account
|
3
|
+
As a User
|
4
|
+
I want to be able to see my user information
|
5
|
+
|
6
|
+
Background:
|
7
|
+
Given I'm an Engine Yard user
|
8
|
+
And ey-core is configured with my cloud token
|
9
|
+
|
10
|
+
Scenario: Getting the current user information
|
11
|
+
When I run `ey-core whoami`
|
12
|
+
Then I should see my user ID
|
13
|
+
And I should see my email address
|
14
|
+
And I should see my name
|
data/lib/ey-core/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,8 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ey-core
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.4.
|
4
|
+
version: 3.4.1
|
5
|
+
prerelease:
|
5
6
|
platform: ruby
|
6
7
|
authors:
|
7
8
|
- Engine Yard Engineering
|
@@ -13,325 +14,419 @@ dependencies:
|
|
13
14
|
- !ruby/object:Gem::Dependency
|
14
15
|
name: addressable
|
15
16
|
requirement: !ruby/object:Gem::Requirement
|
17
|
+
none: false
|
16
18
|
requirements:
|
17
|
-
- -
|
19
|
+
- - ! '>='
|
18
20
|
- !ruby/object:Gem::Version
|
19
21
|
version: '0'
|
20
22
|
type: :runtime
|
21
23
|
prerelease: false
|
22
24
|
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
23
26
|
requirements:
|
24
|
-
- -
|
27
|
+
- - ! '>='
|
25
28
|
- !ruby/object:Gem::Version
|
26
29
|
version: '0'
|
27
30
|
- !ruby/object:Gem::Dependency
|
28
31
|
name: awesome_print
|
29
32
|
requirement: !ruby/object:Gem::Requirement
|
33
|
+
none: false
|
30
34
|
requirements:
|
31
|
-
- -
|
35
|
+
- - ! '>='
|
32
36
|
- !ruby/object:Gem::Version
|
33
37
|
version: '0'
|
34
38
|
type: :runtime
|
35
39
|
prerelease: false
|
36
40
|
version_requirements: !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
37
42
|
requirements:
|
38
|
-
- -
|
43
|
+
- - ! '>='
|
39
44
|
- !ruby/object:Gem::Version
|
40
45
|
version: '0'
|
41
46
|
- !ruby/object:Gem::Dependency
|
42
47
|
name: belafonte
|
43
48
|
requirement: !ruby/object:Gem::Requirement
|
49
|
+
none: false
|
44
50
|
requirements:
|
45
|
-
- -
|
51
|
+
- - ! '>='
|
46
52
|
- !ruby/object:Gem::Version
|
47
53
|
version: '0'
|
48
54
|
type: :runtime
|
49
55
|
prerelease: false
|
50
56
|
version_requirements: !ruby/object:Gem::Requirement
|
57
|
+
none: false
|
51
58
|
requirements:
|
52
|
-
- -
|
59
|
+
- - ! '>='
|
53
60
|
- !ruby/object:Gem::Version
|
54
61
|
version: '0'
|
55
62
|
- !ruby/object:Gem::Dependency
|
56
63
|
name: cistern
|
57
64
|
requirement: !ruby/object:Gem::Requirement
|
65
|
+
none: false
|
58
66
|
requirements:
|
59
|
-
- -
|
67
|
+
- - ~>
|
60
68
|
- !ruby/object:Gem::Version
|
61
69
|
version: 0.12.3
|
62
70
|
type: :runtime
|
63
71
|
prerelease: false
|
64
72
|
version_requirements: !ruby/object:Gem::Requirement
|
73
|
+
none: false
|
65
74
|
requirements:
|
66
|
-
- -
|
75
|
+
- - ~>
|
67
76
|
- !ruby/object:Gem::Version
|
68
77
|
version: 0.12.3
|
69
78
|
- !ruby/object:Gem::Dependency
|
70
79
|
name: colorize
|
71
80
|
requirement: !ruby/object:Gem::Requirement
|
81
|
+
none: false
|
72
82
|
requirements:
|
73
|
-
- -
|
83
|
+
- - ! '>='
|
74
84
|
- !ruby/object:Gem::Version
|
75
85
|
version: '0'
|
76
86
|
type: :runtime
|
77
87
|
prerelease: false
|
78
88
|
version_requirements: !ruby/object:Gem::Requirement
|
89
|
+
none: false
|
79
90
|
requirements:
|
80
|
-
- -
|
91
|
+
- - ! '>='
|
81
92
|
- !ruby/object:Gem::Version
|
82
93
|
version: '0'
|
83
94
|
- !ruby/object:Gem::Dependency
|
84
95
|
name: ey-hmac
|
85
96
|
requirement: !ruby/object:Gem::Requirement
|
97
|
+
none: false
|
86
98
|
requirements:
|
87
|
-
- -
|
99
|
+
- - ~>
|
88
100
|
- !ruby/object:Gem::Version
|
89
101
|
version: '2.0'
|
90
102
|
type: :runtime
|
91
103
|
prerelease: false
|
92
104
|
version_requirements: !ruby/object:Gem::Requirement
|
105
|
+
none: false
|
93
106
|
requirements:
|
94
|
-
- -
|
107
|
+
- - ~>
|
95
108
|
- !ruby/object:Gem::Version
|
96
109
|
version: '2.0'
|
97
110
|
- !ruby/object:Gem::Dependency
|
98
111
|
name: escape
|
99
112
|
requirement: !ruby/object:Gem::Requirement
|
113
|
+
none: false
|
100
114
|
requirements:
|
101
|
-
- -
|
115
|
+
- - ! '>='
|
102
116
|
- !ruby/object:Gem::Version
|
103
117
|
version: '0'
|
104
118
|
type: :runtime
|
105
119
|
prerelease: false
|
106
120
|
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
none: false
|
107
122
|
requirements:
|
108
|
-
- -
|
123
|
+
- - ! '>='
|
109
124
|
- !ruby/object:Gem::Version
|
110
125
|
version: '0'
|
111
126
|
- !ruby/object:Gem::Dependency
|
112
127
|
name: faraday
|
113
128
|
requirement: !ruby/object:Gem::Requirement
|
129
|
+
none: false
|
114
130
|
requirements:
|
115
|
-
- -
|
131
|
+
- - ~>
|
116
132
|
- !ruby/object:Gem::Version
|
117
133
|
version: '0.9'
|
118
134
|
type: :runtime
|
119
135
|
prerelease: false
|
120
136
|
version_requirements: !ruby/object:Gem::Requirement
|
137
|
+
none: false
|
121
138
|
requirements:
|
122
|
-
- -
|
139
|
+
- - ~>
|
123
140
|
- !ruby/object:Gem::Version
|
124
141
|
version: '0.9'
|
125
142
|
- !ruby/object:Gem::Dependency
|
126
143
|
name: faraday_middleware
|
127
144
|
requirement: !ruby/object:Gem::Requirement
|
145
|
+
none: false
|
128
146
|
requirements:
|
129
|
-
- -
|
147
|
+
- - ~>
|
130
148
|
- !ruby/object:Gem::Version
|
131
149
|
version: '0.9'
|
132
150
|
type: :runtime
|
133
151
|
prerelease: false
|
134
152
|
version_requirements: !ruby/object:Gem::Requirement
|
153
|
+
none: false
|
135
154
|
requirements:
|
136
|
-
- -
|
155
|
+
- - ~>
|
137
156
|
- !ruby/object:Gem::Version
|
138
157
|
version: '0.9'
|
139
158
|
- !ruby/object:Gem::Dependency
|
140
159
|
name: rack
|
141
160
|
requirement: !ruby/object:Gem::Requirement
|
161
|
+
none: false
|
142
162
|
requirements:
|
143
|
-
- -
|
163
|
+
- - ! '>='
|
144
164
|
- !ruby/object:Gem::Version
|
145
165
|
version: '0'
|
146
166
|
type: :runtime
|
147
167
|
prerelease: false
|
148
168
|
version_requirements: !ruby/object:Gem::Requirement
|
169
|
+
none: false
|
149
170
|
requirements:
|
150
|
-
- -
|
171
|
+
- - ! '>='
|
151
172
|
- !ruby/object:Gem::Version
|
152
173
|
version: '0'
|
153
174
|
- !ruby/object:Gem::Dependency
|
154
175
|
name: faye
|
155
176
|
requirement: !ruby/object:Gem::Requirement
|
177
|
+
none: false
|
156
178
|
requirements:
|
157
|
-
- -
|
179
|
+
- - ! '>='
|
158
180
|
- !ruby/object:Gem::Version
|
159
181
|
version: '0'
|
160
182
|
type: :runtime
|
161
183
|
prerelease: false
|
162
184
|
version_requirements: !ruby/object:Gem::Requirement
|
185
|
+
none: false
|
163
186
|
requirements:
|
164
|
-
- -
|
187
|
+
- - ! '>='
|
165
188
|
- !ruby/object:Gem::Version
|
166
189
|
version: '0'
|
167
190
|
- !ruby/object:Gem::Dependency
|
168
191
|
name: highline
|
169
192
|
requirement: !ruby/object:Gem::Requirement
|
193
|
+
none: false
|
170
194
|
requirements:
|
171
|
-
- -
|
195
|
+
- - ! '>='
|
172
196
|
- !ruby/object:Gem::Version
|
173
197
|
version: '0'
|
174
198
|
type: :runtime
|
175
199
|
prerelease: false
|
176
200
|
version_requirements: !ruby/object:Gem::Requirement
|
201
|
+
none: false
|
177
202
|
requirements:
|
178
|
-
- -
|
203
|
+
- - ! '>='
|
179
204
|
- !ruby/object:Gem::Version
|
180
205
|
version: '0'
|
181
206
|
- !ruby/object:Gem::Dependency
|
182
207
|
name: json
|
183
208
|
requirement: !ruby/object:Gem::Requirement
|
209
|
+
none: false
|
184
210
|
requirements:
|
185
|
-
- -
|
211
|
+
- - <
|
186
212
|
- !ruby/object:Gem::Version
|
187
213
|
version: '2.0'
|
188
214
|
type: :runtime
|
189
215
|
prerelease: false
|
190
216
|
version_requirements: !ruby/object:Gem::Requirement
|
217
|
+
none: false
|
191
218
|
requirements:
|
192
|
-
- -
|
219
|
+
- - <
|
193
220
|
- !ruby/object:Gem::Version
|
194
221
|
version: '2.0'
|
195
222
|
- !ruby/object:Gem::Dependency
|
196
223
|
name: mime-types
|
197
224
|
requirement: !ruby/object:Gem::Requirement
|
225
|
+
none: false
|
198
226
|
requirements:
|
199
|
-
- -
|
227
|
+
- - ! '>='
|
200
228
|
- !ruby/object:Gem::Version
|
201
229
|
version: '0'
|
202
230
|
type: :runtime
|
203
231
|
prerelease: false
|
204
232
|
version_requirements: !ruby/object:Gem::Requirement
|
233
|
+
none: false
|
205
234
|
requirements:
|
206
|
-
- -
|
235
|
+
- - ! '>='
|
207
236
|
- !ruby/object:Gem::Version
|
208
237
|
version: '0'
|
209
238
|
- !ruby/object:Gem::Dependency
|
210
239
|
name: oj
|
211
240
|
requirement: !ruby/object:Gem::Requirement
|
241
|
+
none: false
|
212
242
|
requirements:
|
213
|
-
- -
|
243
|
+
- - ! '>='
|
214
244
|
- !ruby/object:Gem::Version
|
215
245
|
version: '0'
|
216
246
|
type: :runtime
|
217
247
|
prerelease: false
|
218
248
|
version_requirements: !ruby/object:Gem::Requirement
|
249
|
+
none: false
|
219
250
|
requirements:
|
220
|
-
- -
|
251
|
+
- - ! '>='
|
221
252
|
- !ruby/object:Gem::Version
|
222
253
|
version: '0'
|
223
254
|
- !ruby/object:Gem::Dependency
|
224
255
|
name: oj_mimic_json
|
225
256
|
requirement: !ruby/object:Gem::Requirement
|
257
|
+
none: false
|
226
258
|
requirements:
|
227
|
-
- -
|
259
|
+
- - ! '>='
|
228
260
|
- !ruby/object:Gem::Version
|
229
261
|
version: '0'
|
230
262
|
type: :runtime
|
231
263
|
prerelease: false
|
232
264
|
version_requirements: !ruby/object:Gem::Requirement
|
265
|
+
none: false
|
233
266
|
requirements:
|
234
|
-
- -
|
267
|
+
- - ! '>='
|
235
268
|
- !ruby/object:Gem::Version
|
236
269
|
version: '0'
|
237
270
|
- !ruby/object:Gem::Dependency
|
238
271
|
name: pry
|
239
272
|
requirement: !ruby/object:Gem::Requirement
|
273
|
+
none: false
|
240
274
|
requirements:
|
241
|
-
- -
|
275
|
+
- - ! '>='
|
242
276
|
- !ruby/object:Gem::Version
|
243
277
|
version: '0'
|
244
278
|
type: :runtime
|
245
279
|
prerelease: false
|
246
280
|
version_requirements: !ruby/object:Gem::Requirement
|
281
|
+
none: false
|
247
282
|
requirements:
|
248
|
-
- -
|
283
|
+
- - ! '>='
|
249
284
|
- !ruby/object:Gem::Version
|
250
285
|
version: '0'
|
251
286
|
- !ruby/object:Gem::Dependency
|
252
287
|
name: sshkey
|
253
288
|
requirement: !ruby/object:Gem::Requirement
|
289
|
+
none: false
|
254
290
|
requirements:
|
255
|
-
- -
|
291
|
+
- - ~>
|
256
292
|
- !ruby/object:Gem::Version
|
257
293
|
version: '1.6'
|
258
294
|
type: :runtime
|
259
295
|
prerelease: false
|
260
296
|
version_requirements: !ruby/object:Gem::Requirement
|
297
|
+
none: false
|
261
298
|
requirements:
|
262
|
-
- -
|
299
|
+
- - ~>
|
263
300
|
- !ruby/object:Gem::Version
|
264
301
|
version: '1.6'
|
265
302
|
- !ruby/object:Gem::Dependency
|
266
303
|
name: table_print
|
267
304
|
requirement: !ruby/object:Gem::Requirement
|
305
|
+
none: false
|
268
306
|
requirements:
|
269
|
-
- -
|
307
|
+
- - ! '>='
|
270
308
|
- !ruby/object:Gem::Version
|
271
309
|
version: '0'
|
272
310
|
type: :runtime
|
273
311
|
prerelease: false
|
274
312
|
version_requirements: !ruby/object:Gem::Requirement
|
313
|
+
none: false
|
275
314
|
requirements:
|
276
|
-
- -
|
315
|
+
- - ! '>='
|
277
316
|
- !ruby/object:Gem::Version
|
278
317
|
version: '0'
|
279
318
|
- !ruby/object:Gem::Dependency
|
280
319
|
name: pry-nav
|
281
320
|
requirement: !ruby/object:Gem::Requirement
|
321
|
+
none: false
|
282
322
|
requirements:
|
283
|
-
- -
|
323
|
+
- - ! '>='
|
284
324
|
- !ruby/object:Gem::Version
|
285
325
|
version: '0'
|
286
326
|
type: :development
|
287
327
|
prerelease: false
|
288
328
|
version_requirements: !ruby/object:Gem::Requirement
|
329
|
+
none: false
|
289
330
|
requirements:
|
290
|
-
- -
|
331
|
+
- - ! '>='
|
291
332
|
- !ruby/object:Gem::Version
|
292
333
|
version: '0'
|
293
334
|
- !ruby/object:Gem::Dependency
|
294
335
|
name: rspec
|
295
336
|
requirement: !ruby/object:Gem::Requirement
|
337
|
+
none: false
|
296
338
|
requirements:
|
297
|
-
- -
|
339
|
+
- - ~>
|
298
340
|
- !ruby/object:Gem::Version
|
299
341
|
version: '3.0'
|
300
342
|
type: :development
|
301
343
|
prerelease: false
|
302
344
|
version_requirements: !ruby/object:Gem::Requirement
|
345
|
+
none: false
|
303
346
|
requirements:
|
304
|
-
- -
|
347
|
+
- - ~>
|
305
348
|
- !ruby/object:Gem::Version
|
306
349
|
version: '3.0'
|
307
350
|
- !ruby/object:Gem::Dependency
|
308
351
|
name: ffaker
|
309
352
|
requirement: !ruby/object:Gem::Requirement
|
353
|
+
none: false
|
310
354
|
requirements:
|
311
|
-
- -
|
355
|
+
- - ! '>='
|
312
356
|
- !ruby/object:Gem::Version
|
313
357
|
version: '0'
|
314
358
|
type: :development
|
315
359
|
prerelease: false
|
316
360
|
version_requirements: !ruby/object:Gem::Requirement
|
361
|
+
none: false
|
317
362
|
requirements:
|
318
|
-
- -
|
363
|
+
- - ! '>='
|
319
364
|
- !ruby/object:Gem::Version
|
320
365
|
version: '0'
|
321
366
|
- !ruby/object:Gem::Dependency
|
322
367
|
name: rake
|
323
368
|
requirement: !ruby/object:Gem::Requirement
|
369
|
+
none: false
|
324
370
|
requirements:
|
325
|
-
- -
|
371
|
+
- - ! '>='
|
326
372
|
- !ruby/object:Gem::Version
|
327
373
|
version: '0'
|
328
374
|
type: :development
|
329
375
|
prerelease: false
|
330
376
|
version_requirements: !ruby/object:Gem::Requirement
|
377
|
+
none: false
|
331
378
|
requirements:
|
332
|
-
- -
|
379
|
+
- - ! '>='
|
333
380
|
- !ruby/object:Gem::Version
|
334
381
|
version: '0'
|
382
|
+
- !ruby/object:Gem::Dependency
|
383
|
+
name: aruba
|
384
|
+
requirement: !ruby/object:Gem::Requirement
|
385
|
+
none: false
|
386
|
+
requirements:
|
387
|
+
- - ~>
|
388
|
+
- !ruby/object:Gem::Version
|
389
|
+
version: '0.11'
|
390
|
+
type: :development
|
391
|
+
prerelease: false
|
392
|
+
version_requirements: !ruby/object:Gem::Requirement
|
393
|
+
none: false
|
394
|
+
requirements:
|
395
|
+
- - ~>
|
396
|
+
- !ruby/object:Gem::Version
|
397
|
+
version: '0.11'
|
398
|
+
- !ruby/object:Gem::Dependency
|
399
|
+
name: cucumber
|
400
|
+
requirement: !ruby/object:Gem::Requirement
|
401
|
+
none: false
|
402
|
+
requirements:
|
403
|
+
- - ~>
|
404
|
+
- !ruby/object:Gem::Version
|
405
|
+
version: '2.1'
|
406
|
+
type: :development
|
407
|
+
prerelease: false
|
408
|
+
version_requirements: !ruby/object:Gem::Requirement
|
409
|
+
none: false
|
410
|
+
requirements:
|
411
|
+
- - ~>
|
412
|
+
- !ruby/object:Gem::Version
|
413
|
+
version: '2.1'
|
414
|
+
- !ruby/object:Gem::Dependency
|
415
|
+
name: factis
|
416
|
+
requirement: !ruby/object:Gem::Requirement
|
417
|
+
none: false
|
418
|
+
requirements:
|
419
|
+
- - ~>
|
420
|
+
- !ruby/object:Gem::Version
|
421
|
+
version: '1.0'
|
422
|
+
type: :development
|
423
|
+
prerelease: false
|
424
|
+
version_requirements: !ruby/object:Gem::Requirement
|
425
|
+
none: false
|
426
|
+
requirements:
|
427
|
+
- - ~>
|
428
|
+
- !ruby/object:Gem::Version
|
429
|
+
version: '1.0'
|
335
430
|
description: Engine Yard Core API Ruby Client
|
336
431
|
email:
|
337
432
|
- engineering@engineyard.com
|
@@ -340,10 +435,10 @@ executables:
|
|
340
435
|
extensions: []
|
341
436
|
extra_rdoc_files: []
|
342
437
|
files:
|
343
|
-
-
|
344
|
-
-
|
345
|
-
-
|
346
|
-
-
|
438
|
+
- .gitignore
|
439
|
+
- .ruby-gemset
|
440
|
+
- .ruby-version
|
441
|
+
- .travis.yml
|
347
442
|
- CHANGELOG.md
|
348
443
|
- Gemfile
|
349
444
|
- Guardfile
|
@@ -358,6 +453,37 @@ files:
|
|
358
453
|
- examples/stop_env.rb
|
359
454
|
- examples/terminate_instance.rb
|
360
455
|
- ey-core.gemspec
|
456
|
+
- features/accounts.feature
|
457
|
+
- features/applications.feature
|
458
|
+
- features/current_user.feature
|
459
|
+
- features/environments.feature
|
460
|
+
- features/init.feature
|
461
|
+
- features/login.feature
|
462
|
+
- features/scp.feature
|
463
|
+
- features/step_definitions/accounts_steps.rb
|
464
|
+
- features/step_definitions/applications_steps.rb
|
465
|
+
- features/step_definitions/current_user_steps.rb
|
466
|
+
- features/step_definitions/deprecated_command_steps.rb
|
467
|
+
- features/step_definitions/environments_steps.rb
|
468
|
+
- features/step_definitions/version_steps.rb
|
469
|
+
- features/support/account_helpers.rb
|
470
|
+
- features/support/app_helpers.rb
|
471
|
+
- features/support/aruba.rb
|
472
|
+
- features/support/boilerplate.rb
|
473
|
+
- features/support/client_helpers.rb
|
474
|
+
- features/support/config_file_helpers.rb
|
475
|
+
- features/support/core.rb
|
476
|
+
- features/support/deployment_helpers.rb
|
477
|
+
- features/support/env.rb
|
478
|
+
- features/support/environment_helpers.rb
|
479
|
+
- features/support/fake_kernel.rb
|
480
|
+
- features/support/io.rb
|
481
|
+
- features/support/mock_api.rb
|
482
|
+
- features/support/output_helpers.rb
|
483
|
+
- features/support/resource_helpers.rb
|
484
|
+
- features/support/server_helpers.rb
|
485
|
+
- features/version.feature
|
486
|
+
- features/whoami.feature
|
361
487
|
- lib/ey-core.rb
|
362
488
|
- lib/ey-core/associations.rb
|
363
489
|
- lib/ey-core/cli.rb
|
@@ -803,29 +929,61 @@ files:
|
|
803
929
|
homepage: ''
|
804
930
|
licenses:
|
805
931
|
- MIT
|
806
|
-
metadata: {}
|
807
932
|
post_install_message:
|
808
933
|
rdoc_options: []
|
809
934
|
require_paths:
|
810
935
|
- lib
|
811
936
|
required_ruby_version: !ruby/object:Gem::Requirement
|
937
|
+
none: false
|
812
938
|
requirements:
|
813
|
-
- -
|
939
|
+
- - ! '>='
|
814
940
|
- !ruby/object:Gem::Version
|
815
941
|
version: 2.2.2
|
816
942
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
943
|
+
none: false
|
817
944
|
requirements:
|
818
|
-
- -
|
945
|
+
- - ! '>='
|
819
946
|
- !ruby/object:Gem::Version
|
820
947
|
version: '0'
|
821
948
|
requirements: []
|
822
949
|
rubyforge_project:
|
823
|
-
rubygems_version:
|
950
|
+
rubygems_version: 1.8.23.2
|
824
951
|
signing_key:
|
825
|
-
specification_version:
|
952
|
+
specification_version: 3
|
826
953
|
summary: Client library providing real and mock functionality for accessing Engine
|
827
954
|
Yard's Core API
|
828
955
|
test_files:
|
956
|
+
- features/accounts.feature
|
957
|
+
- features/applications.feature
|
958
|
+
- features/current_user.feature
|
959
|
+
- features/environments.feature
|
960
|
+
- features/init.feature
|
961
|
+
- features/login.feature
|
962
|
+
- features/scp.feature
|
963
|
+
- features/step_definitions/accounts_steps.rb
|
964
|
+
- features/step_definitions/applications_steps.rb
|
965
|
+
- features/step_definitions/current_user_steps.rb
|
966
|
+
- features/step_definitions/deprecated_command_steps.rb
|
967
|
+
- features/step_definitions/environments_steps.rb
|
968
|
+
- features/step_definitions/version_steps.rb
|
969
|
+
- features/support/account_helpers.rb
|
970
|
+
- features/support/app_helpers.rb
|
971
|
+
- features/support/aruba.rb
|
972
|
+
- features/support/boilerplate.rb
|
973
|
+
- features/support/client_helpers.rb
|
974
|
+
- features/support/config_file_helpers.rb
|
975
|
+
- features/support/core.rb
|
976
|
+
- features/support/deployment_helpers.rb
|
977
|
+
- features/support/env.rb
|
978
|
+
- features/support/environment_helpers.rb
|
979
|
+
- features/support/fake_kernel.rb
|
980
|
+
- features/support/io.rb
|
981
|
+
- features/support/mock_api.rb
|
982
|
+
- features/support/output_helpers.rb
|
983
|
+
- features/support/resource_helpers.rb
|
984
|
+
- features/support/server_helpers.rb
|
985
|
+
- features/version.feature
|
986
|
+
- features/whoami.feature
|
829
987
|
- spec/account_spec.rb
|
830
988
|
- spec/account_trial_spec.rb
|
831
989
|
- spec/accounts_referrals_spec.rb
|
@@ -889,3 +1047,4 @@ test_files:
|
|
889
1047
|
- spec/tokens_spec.rb
|
890
1048
|
- spec/untracked_servers_spec.rb
|
891
1049
|
- spec/users_spec.rb
|
1050
|
+
has_rdoc:
|