Class: Cyoi::Cli::Providers::ProviderCliAws
Instance Attribute Summary
Attributes inherited from ProviderCli
#attributes, #hl
Instance Method Summary
collapse
Methods inherited from ProviderCli
#export_attributes, #initialize, #say
Instance Method Details
#choose_region ⇒ Object
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
# File 'lib/cyoi/cli/providers/provider_cli_aws.rb', line 20
def choose_region
puts "\n"
hl.choose do ||
.prompt = "Choose AWS region: "
= nil
region_labels.each do |region_info|
label, code = region_info[:label], region_info[:code]
= "#{label} (#{code})"
if code == default_region_code
= "*#{menu_item}"
=
end
.choice() do
attributes["region"] = code.to_s
end
end
.default = if
end
end
|
#display_confirmation ⇒ Object
46
47
48
49
50
|
# File 'lib/cyoi/cli/providers/provider_cli_aws.rb', line 46
def display_confirmation
puts "\n"
type = attributes.exists?("vpc") ? "VPC" : "EC2"
puts "Confirming: Using AWS #{type}/#{attributes.region}"
end
|
3
4
5
6
7
8
9
10
|
# File 'lib/cyoi/cli/providers/provider_cli_aws.rb', line 3
def perform_and_return_attributes
unless valid_infrastructure?
puts "\nUsing provider AWS\n"
setup_credentials
choose_region
end
export_attributes
end
|
#setup_credentials ⇒ Object
12
13
14
15
16
17
18
|
# File 'lib/cyoi/cli/providers/provider_cli_aws.rb', line 12
def setup_credentials
puts "\n"
attributes.set_default("credentials", {})
credentials = attributes.credentials
credentials["aws_access_key_id"] = hl.ask("Access key: ").to_s unless credentials.exists?("aws_access_key_id")
credentials["aws_secret_access_key"] = hl.ask("Secret key: ").to_s unless credentials.exists?("aws_secret_access_key")
end
|
#valid_infrastructure? ⇒ Boolean
40
41
42
43
44
|
# File 'lib/cyoi/cli/providers/provider_cli_aws.rb', line 40
def valid_infrastructure?
attributes.exists?("credentials.aws_access_key_id") &&
attributes.exists?("credentials.aws_secret_access_key") &&
attributes.exists?("region")
end
|