elastic_beans 0.10.0.alpha8 → 0.10.0.alpha9
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
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6bf87e14e7101b7ffb8f974a6ba2fd64b36304ae
|
4
|
+
data.tar.gz: db065ea1e6727b6fa2203947afa3f8a29d32ec2e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 414cbf0c9e97668e9b3dc15b444e14610fe1e95c26f916d2a856dfb74afb1318e62be9d849cd76ffc9b213fbee3dd340fd0c940feeb5bde6aa1f895a4135b44f
|
7
|
+
data.tar.gz: 83b295ffc45704d6c8e1af5ed0c8318156f076a01b2d990c179b5106978ae5ad44c59725143a7c6e7b7b83612912faa177bc76fc5ce0ec4deeea024a8a71829f
|
data/lib/elastic_beans/cli.rb
CHANGED
@@ -19,6 +19,7 @@ class ElasticBeans::CLI < Thor
|
|
19
19
|
option :database_url, aliases: %w(-d), desc: "The DATABASE_URL for the Rails application"
|
20
20
|
option :image_id, aliases: %w(-i), desc: "A custom AMI to use instead of the default Ruby Elastic Beanstalk AMI"
|
21
21
|
option :instance_type, aliases: %w(-t), desc: "A default instance type to use for all environments instead of c4.large"
|
22
|
+
option :internal, type: :boolean, desc: "Configure the webserver to only be available for internal VPC access"
|
22
23
|
option :keypair, aliases: %w(-k), desc: "Required on first run. The EC2 keypair to use for Elastic Beanstalk instances"
|
23
24
|
option :public_key, aliases: %w(-p), desc: "For end-to-end encryption. The public key of the SSL certificate the ELB will verify to communicate with your Rails app"
|
24
25
|
option :secret_key_base, aliases: %w(-b), desc: "The SECRET_KEY_BASE for the Rails application"
|
@@ -29,6 +30,7 @@ class ElasticBeans::CLI < Thor
|
|
29
30
|
database_url: options[:database_url],
|
30
31
|
image_id: options[:image_id],
|
31
32
|
instance_type: options[:instance_type],
|
33
|
+
internal: options[:internal],
|
32
34
|
keypair: options[:keypair],
|
33
35
|
public_key: options[:public_key],
|
34
36
|
secret_key_base: options[:secret_key_base],
|
@@ -19,6 +19,7 @@ Requires AWS credentials to be set in the environment, i.e. AWS_ACCESS_KEY_ID an
|
|
19
19
|
database_url:,
|
20
20
|
image_id:,
|
21
21
|
instance_type:,
|
22
|
+
internal:,
|
22
23
|
keypair:,
|
23
24
|
public_key:,
|
24
25
|
secret_key_base:,
|
@@ -32,6 +33,7 @@ Requires AWS credentials to be set in the environment, i.e. AWS_ACCESS_KEY_ID an
|
|
32
33
|
@database_url = database_url
|
33
34
|
@image_id = image_id
|
34
35
|
@instance_type = instance_type
|
36
|
+
@internal = internal
|
35
37
|
@keypair = keypair
|
36
38
|
@public_key = public_key
|
37
39
|
@secret_key_base = secret_key_base
|
@@ -82,6 +84,7 @@ Requires AWS credentials to be set in the environment, i.e. AWS_ACCESS_KEY_ID an
|
|
82
84
|
secret_key_base: secret_key_base,
|
83
85
|
image_id: image_id,
|
84
86
|
instance_type: instance_type,
|
87
|
+
internal: internal,
|
85
88
|
keypair: keypair,
|
86
89
|
iam: iam,
|
87
90
|
public_key: public_key,
|
@@ -178,6 +181,7 @@ Requires AWS credentials to be set in the environment, i.e. AWS_ACCESS_KEY_ID an
|
|
178
181
|
:database_url,
|
179
182
|
:image_id,
|
180
183
|
:instance_type,
|
184
|
+
:internal,
|
181
185
|
:keypair,
|
182
186
|
:network,
|
183
187
|
:public_key,
|
@@ -13,7 +13,7 @@ module ElasticBeans
|
|
13
13
|
|
14
14
|
# Constructs the configuration for the webserver environment.
|
15
15
|
# All arguments are required on first run.
|
16
|
-
def build_option_settings(network: nil, public_key: nil, ssl_certificate_arn: nil, **_)
|
16
|
+
def build_option_settings(network: nil, public_key: nil, ssl_certificate_arn: nil, internal: nil, **_)
|
17
17
|
public_key_policy_names_setting = template_option_setting(namespace: "aws:elb:policies:backendencryption", option_name: "PublicKeyPolicyNames", default: "backendkey")
|
18
18
|
public_key_setting = template_option_setting(namespace: "aws:elb:policies:#{public_key_policy_names_setting[:value]}", option_name: "PublicKey", override: public_key)
|
19
19
|
ssl_certificate_setting = template_option_setting(namespace: "aws:elb:listener:443", option_name: "SSLCertificateId", override: ssl_certificate_arn)
|
@@ -21,7 +21,7 @@ module ElasticBeans
|
|
21
21
|
raise NoEncryptionSettingsError
|
22
22
|
end
|
23
23
|
|
24
|
-
|
24
|
+
option_settings = [
|
25
25
|
template_option_setting(namespace: "aws:elasticbeanstalk:application", option_name: "Application Healthcheck URL", default: "HTTPS:443/", allow_blank: false),
|
26
26
|
template_option_setting(namespace: "aws:elasticbeanstalk:application:environment", option_name: "RAILS_SKIP_ASSET_COMPILATION", default: "false"),
|
27
27
|
template_option_setting(namespace: "aws:elasticbeanstalk:application:environment", option_name: "RAILS_SKIP_MIGRATIONS", default: "false"),
|
@@ -36,6 +36,12 @@ module ElasticBeans
|
|
36
36
|
public_key_setting,
|
37
37
|
ssl_certificate_setting,
|
38
38
|
]
|
39
|
+
if internal
|
40
|
+
internal_setting = template_option_setting(namespace: "aws:ec2:vpc", option_name: "ELBScheme", override: "internal")
|
41
|
+
option_settings << internal_setting
|
42
|
+
end
|
43
|
+
|
44
|
+
super + option_settings
|
39
45
|
end
|
40
46
|
|
41
47
|
def elb_security_groups(network)
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: elastic_beans
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.10.0.
|
4
|
+
version: 0.10.0.alpha9
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Adam Stegman
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-04-
|
11
|
+
date: 2017-04-28 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: aws-sdk
|