cf_factory 0.0.4 → 0.0.5
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/bin/cf_factory +9 -9
- data/examples/base_vpc.rb +40 -40
- data/examples/cloudfront_private.rb +23 -23
- data/examples/cloudinit_script_for_one_instance.rb +77 -77
- data/examples/cloudinit_script_with_autoscaling.rb +85 -85
- data/examples/dynamodb_table.rb +24 -24
- data/examples/elastic_beanstalk_example.rb +23 -23
- data/examples/elb_with_cloudfront.rb +100 -100
- data/examples/instance_with_eip.rb +40 -40
- data/examples/instance_with_yum.rb +40 -40
- data/examples/just_an_instance.rb +31 -31
- data/examples/nat_mutual_monitoring.rb +69 -69
- data/examples/play_with_region_and_zones.rb +28 -28
- data/examples/ra_web_hosting.rb +148 -148
- data/examples/s3_with_cloudfront.rb +35 -35
- data/examples/test_vpc.rb +61 -61
- data/lib/cf_factory/as/cf_as_group.rb +80 -77
- data/lib/cf_factory/as/cf_as_launch_config.rb +55 -55
- data/lib/cf_factory/as/cf_as_scaling_policy.rb +35 -35
- data/lib/cf_factory/as/cf_as_update_policy.rb +23 -0
- data/lib/cf_factory/base/cf_base.rb +112 -102
- data/lib/cf_factory/base/cf_ec2_tag.rb +34 -34
- data/lib/cf_factory/base/cf_generator.rb +20 -20
- data/lib/cf_factory/base/cf_helper.rb +93 -93
- data/lib/cf_factory/base/cf_inner.rb +74 -74
- data/lib/cf_factory/base/cf_main.rb +103 -103
- data/lib/cf_factory/base/cf_mapping.rb +28 -28
- data/lib/cf_factory/base/cf_named_inner.rb +70 -1
- data/lib/cf_factory/base/cf_output.rb +26 -26
- data/lib/cf_factory/base/cf_parameter.rb +27 -27
- data/lib/cf_factory/base/cf_script_reader.rb +34 -34
- data/lib/cf_factory/cloudformation/cf_cloud_formation_init.rb +27 -27
- data/lib/cf_factory/cloudformation/cf_cloudformation_command.rb +39 -39
- data/lib/cf_factory/cloudformation/cf_cloudformation_commands.rb +27 -27
- data/lib/cf_factory/cloudformation/cf_cloudformation_config.rb +35 -35
- data/lib/cf_factory/cloudformation/cf_cloudformation_file.rb +40 -40
- data/lib/cf_factory/cloudformation/cf_cloudformation_files.rb +27 -27
- data/lib/cf_factory/cloudformation/cf_cloudformation_inner.rb +30 -30
- data/lib/cf_factory/cloudformation/cf_cloudformation_package.rb +36 -36
- data/lib/cf_factory/cloudformation/cf_cloudformation_packages.rb +44 -44
- data/lib/cf_factory/cloudformation/cf_cloudformation_sources.rb +32 -32
- data/lib/cf_factory/cloudformation/cf_init_script.rb +80 -80
- data/lib/cf_factory/cloudfront/cf_cache_behavior.rb +39 -39
- data/lib/cf_factory/cloudfront/cf_cache_behaviors.rb +30 -30
- data/lib/cf_factory/cloudfront/cf_cloudfront_distribution.rb +66 -66
- data/lib/cf_factory/cloudfront/cf_custom_origin_config.rb +39 -39
- data/lib/cf_factory/cloudfront/cf_default_cache_behavior.rb +34 -34
- data/lib/cf_factory/cloudfront/cf_distribution_config.rb +33 -33
- data/lib/cf_factory/cloudfront/cf_forwarded_values.rb +27 -27
- data/lib/cf_factory/cloudfront/cf_logging.rb +26 -26
- data/lib/cf_factory/cloudfront/cf_origin.rb +42 -42
- data/lib/cf_factory/cloudfront/cf_s3_origin_config.rb +27 -27
- data/lib/cf_factory/cloudwatch/cf_cloud_watch_alarm.rb +60 -60
- data/lib/cf_factory/dynamo/cf_dynamo_table.rb +45 -45
- data/lib/cf_factory/eb/cd_eb_solution_stack.rb +27 -28
- data/lib/cf_factory/eb/cf_eb_application.rb +41 -41
- data/lib/cf_factory/eb/cf_eb_application_version.rb +24 -24
- data/lib/cf_factory/eb/cf_eb_configuration_template.rb +36 -36
- data/lib/cf_factory/eb/cf_eb_environment.rb +56 -56
- data/lib/cf_factory/eb/cf_eb_option_setting.rb +19 -19
- data/lib/cf_factory/ec2/cf_ebs_volume.rb +56 -56
- data/lib/cf_factory/ec2/cf_ec2_instance.rb +80 -66
- data/lib/cf_factory/ec2/cf_ec2_security_group.rb +42 -42
- data/lib/cf_factory/ec2/cf_ec2_security_group_egress.rb +30 -30
- data/lib/cf_factory/ec2/cf_ec2_security_group_ingress.rb +41 -41
- data/lib/cf_factory/ec2/cf_eip.rb +28 -28
- data/lib/cf_factory/ec2/cf_eip_association.rb +33 -31
- data/lib/cf_factory/ec2/cf_inner_network_interface.rb +26 -0
- data/lib/cf_factory/ec2/cf_network_interface.rb +40 -0
- data/lib/cf_factory/elb/cf_app_cookie_stickiness_policy.rb +17 -17
- data/lib/cf_factory/elb/cf_elb.rb +51 -51
- data/lib/cf_factory/elb/cf_health_check.rb +25 -25
- data/lib/cf_factory/elb/cf_lb_cookie_stickiness_policy.rb +17 -17
- data/lib/cf_factory/elb/cf_listener.rb +28 -28
- data/lib/cf_factory/help/fixes.rb +15 -15
- data/lib/cf_factory/help/ip_mask.rb +167 -167
- data/lib/cf_factory/help/template_validation.rb +30 -30
- data/lib/cf_factory/iam/cf_iam_access_key.rb +34 -34
- data/lib/cf_factory/iam/cf_iam_group.rb +32 -32
- data/lib/cf_factory/iam/cf_iam_instance_profile.rb +32 -32
- data/lib/cf_factory/iam/cf_iam_policy.rb +20 -20
- data/lib/cf_factory/iam/cf_iam_role.rb +58 -58
- data/lib/cf_factory/iam/cf_iam_statement.rb +25 -25
- data/lib/cf_factory/iam/cf_iam_user.rb +36 -36
- data/lib/cf_factory/iam/cf_policy_document.rb +21 -21
- data/lib/cf_factory/modules/base_vpc.rb +63 -63
- data/lib/cf_factory/rds/cf_rds_instance.rb +55 -55
- data/lib/cf_factory/rds/cf_rds_security_group.rb +35 -35
- data/lib/cf_factory/rds/cf_rds_security_group_ingress.rb +31 -31
- data/lib/cf_factory/rds/cf_rds_subnet_group.rb +31 -31
- data/lib/cf_factory/route53/cf_elb_alias_target.rb +23 -23
- data/lib/cf_factory/route53/cf_record_set.rb +63 -63
- data/lib/cf_factory/route53/cf_route53_record_set.rb +63 -63
- data/lib/cf_factory/route53/cf_route53_record_set_group.rb +44 -44
- data/lib/cf_factory/s3/cf_s3_bucket.rb +34 -34
- data/lib/cf_factory/s3/cf_web_site_config.rb +26 -26
- data/lib/cf_factory/sqs/cf_sqs_queue.rb +28 -28
- data/lib/cf_factory/vpc/cf_attach_gateway.rb +30 -30
- data/lib/cf_factory/vpc/cf_internet_gateway.rb +32 -32
- data/lib/cf_factory/vpc/cf_network_acl.rb +41 -41
- data/lib/cf_factory/vpc/cf_network_acl_association.rb +26 -26
- data/lib/cf_factory/vpc/cf_network_acl_entry.rb +39 -39
- data/lib/cf_factory/vpc/cf_route.rb +45 -45
- data/lib/cf_factory/vpc/cf_route_table.rb +43 -43
- data/lib/cf_factory/vpc/cf_route_table_association.rb +26 -26
- data/lib/cf_factory/vpc/cf_subnet.rb +50 -50
- data/lib/cf_factory/vpc/cf_vpc.rb +66 -66
- data/lib/cf_factory.rb +12 -12
- metadata +120 -91
|
@@ -1,66 +1,66 @@
|
|
|
1
|
-
require 'cf_factory/base/cf_base'
|
|
2
|
-
|
|
3
|
-
module CfFactory
|
|
4
|
-
class CfCloudfrontDistribution
|
|
5
|
-
include CfBase
|
|
6
|
-
|
|
7
|
-
def initialize(name, distribution_details)
|
|
8
|
-
@name = name
|
|
9
|
-
@distribution = distribution_details
|
|
10
|
-
end
|
|
11
|
-
|
|
12
|
-
def set_tags(tag_list)
|
|
13
|
-
@tag_list = tag_list
|
|
14
|
-
end
|
|
15
|
-
|
|
16
|
-
def self.create_s3_distribution(name, s3_bucket, origin_options = {}, cache_behaviour_options = {}, distribution_options = {})
|
|
17
|
-
s3_origin = CfS3OriginConfig.new
|
|
18
|
-
origin_config = CfOrigin.new(s3_bucket.short_domain_name(),s3_bucket.generate_ref,s3_origin, origin_options)
|
|
19
|
-
default_cache_behavior = CfDefaultCacheBehavior.new(origin_config.id,CfForwardedValues.new(true),"allow-all", cache_behaviour_options)
|
|
20
|
-
distribution_details = CfDistributionConfig.new([origin_config],default_cache_behavior, true, distribution_options)
|
|
21
|
-
CfCloudfrontDistribution.new(name, distribution_details)
|
|
22
|
-
end
|
|
23
|
-
|
|
24
|
-
def self.create_elb_distribution(name, elb, origin_options = {}, cache_behaviour_options = {}, distribution_options = {})
|
|
25
|
-
custom_origin = CfCustomOriginConfig.new("http-only")
|
|
26
|
-
origin_config = CfOrigin.new(elb.retrieve_attribute("DNSName"),elb.generate_ref,custom_origin,origin_options)
|
|
27
|
-
default_cache_behavior = CfDefaultCacheBehavior.new(origin_config.id,CfForwardedValues.new(true),"allow-all", cache_behaviour_options)
|
|
28
|
-
distribution_details = CfDistributionConfig.new([origin_config],default_cache_behavior, true, distribution_options)
|
|
29
|
-
CfCloudfrontDistribution.new(name, distribution_details)
|
|
30
|
-
end
|
|
31
|
-
|
|
32
|
-
def self.create_domain_distribution(name, origin_domain, origin_id, origin_options = {}, cache_behaviour_options = {}, distribution_options = {})
|
|
33
|
-
custom_origin = CfCustomOriginConfig.new("http-only")
|
|
34
|
-
origin_config = CfOrigin.new(origin_domain,origin_id,custom_origin,origin_options)
|
|
35
|
-
default_cache_behavior = CfDefaultCacheBehavior.new(origin_config.id,CfForwardedValues.new(true),"allow-all", cache_behaviour_options)
|
|
36
|
-
distribution_details = CfDistributionConfig.new([origin_config],default_cache_behavior, true, distribution_options)
|
|
37
|
-
CfCloudfrontDistribution.new(name, distribution_details)
|
|
38
|
-
end
|
|
39
|
-
|
|
40
|
-
def self.create_multi_origin_distribution(name, origins, default_cache_behavior, cache_behaviors, distribution_options = {})
|
|
41
|
-
distribution_details = CfDistributionConfig.new(origins,default_cache_behavior, true, distribution_options.merge({:cache_behaviors => cache_behaviors}))
|
|
42
|
-
CfCloudfrontDistribution.new(name, distribution_details)
|
|
43
|
-
end
|
|
44
|
-
|
|
45
|
-
def self.create_multi_origin_distribution_old(name, origins, cache_behaviour_options = {}, distribution_options = {})
|
|
46
|
-
default_cache_behavior = CfDefaultCacheBehavior.new("XXX was origin_config.id",CfForwardedValues.new(true),"allow-all", cache_behaviour_options)
|
|
47
|
-
distribution_details = CfDistributionConfig.new(origins,default_cache_behavior, true, distribution_options)
|
|
48
|
-
CfCloudfrontDistribution.new(name, distribution_details)
|
|
49
|
-
end
|
|
50
|
-
|
|
51
|
-
def get_cf_type
|
|
52
|
-
"AWS::CloudFront::Distribution"
|
|
53
|
-
end
|
|
54
|
-
|
|
55
|
-
def get_cf_attributes
|
|
56
|
-
result = super
|
|
57
|
-
end
|
|
58
|
-
|
|
59
|
-
def get_cf_properties
|
|
60
|
-
result = {}
|
|
61
|
-
result["DistributionConfig"] = @distribution.generate
|
|
62
|
-
result
|
|
63
|
-
end
|
|
64
|
-
|
|
65
|
-
end
|
|
66
|
-
end
|
|
1
|
+
require 'cf_factory/base/cf_base'
|
|
2
|
+
|
|
3
|
+
module CfFactory
|
|
4
|
+
class CfCloudfrontDistribution
|
|
5
|
+
include CfBase
|
|
6
|
+
|
|
7
|
+
def initialize(name, distribution_details)
|
|
8
|
+
@name = name
|
|
9
|
+
@distribution = distribution_details
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
def set_tags(tag_list)
|
|
13
|
+
@tag_list = tag_list
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
def self.create_s3_distribution(name, s3_bucket, origin_options = {}, cache_behaviour_options = {}, distribution_options = {})
|
|
17
|
+
s3_origin = CfS3OriginConfig.new
|
|
18
|
+
origin_config = CfOrigin.new(s3_bucket.short_domain_name(),s3_bucket.generate_ref,s3_origin, origin_options)
|
|
19
|
+
default_cache_behavior = CfDefaultCacheBehavior.new(origin_config.id,CfForwardedValues.new(true),"allow-all", cache_behaviour_options)
|
|
20
|
+
distribution_details = CfDistributionConfig.new([origin_config],default_cache_behavior, true, distribution_options)
|
|
21
|
+
CfCloudfrontDistribution.new(name, distribution_details)
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
def self.create_elb_distribution(name, elb, origin_options = {}, cache_behaviour_options = {}, distribution_options = {})
|
|
25
|
+
custom_origin = CfCustomOriginConfig.new("http-only")
|
|
26
|
+
origin_config = CfOrigin.new(elb.retrieve_attribute("DNSName"),elb.generate_ref,custom_origin,origin_options)
|
|
27
|
+
default_cache_behavior = CfDefaultCacheBehavior.new(origin_config.id,CfForwardedValues.new(true),"allow-all", cache_behaviour_options)
|
|
28
|
+
distribution_details = CfDistributionConfig.new([origin_config],default_cache_behavior, true, distribution_options)
|
|
29
|
+
CfCloudfrontDistribution.new(name, distribution_details)
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
def self.create_domain_distribution(name, origin_domain, origin_id, origin_options = {}, cache_behaviour_options = {}, distribution_options = {})
|
|
33
|
+
custom_origin = CfCustomOriginConfig.new("http-only")
|
|
34
|
+
origin_config = CfOrigin.new(origin_domain,origin_id,custom_origin,origin_options)
|
|
35
|
+
default_cache_behavior = CfDefaultCacheBehavior.new(origin_config.id,CfForwardedValues.new(true),"allow-all", cache_behaviour_options)
|
|
36
|
+
distribution_details = CfDistributionConfig.new([origin_config],default_cache_behavior, true, distribution_options)
|
|
37
|
+
CfCloudfrontDistribution.new(name, distribution_details)
|
|
38
|
+
end
|
|
39
|
+
|
|
40
|
+
def self.create_multi_origin_distribution(name, origins, default_cache_behavior, cache_behaviors, distribution_options = {})
|
|
41
|
+
distribution_details = CfDistributionConfig.new(origins,default_cache_behavior, true, distribution_options.merge({:cache_behaviors => cache_behaviors}))
|
|
42
|
+
CfCloudfrontDistribution.new(name, distribution_details)
|
|
43
|
+
end
|
|
44
|
+
|
|
45
|
+
def self.create_multi_origin_distribution_old(name, origins, cache_behaviour_options = {}, distribution_options = {})
|
|
46
|
+
default_cache_behavior = CfDefaultCacheBehavior.new("XXX was origin_config.id",CfForwardedValues.new(true),"allow-all", cache_behaviour_options)
|
|
47
|
+
distribution_details = CfDistributionConfig.new(origins,default_cache_behavior, true, distribution_options)
|
|
48
|
+
CfCloudfrontDistribution.new(name, distribution_details)
|
|
49
|
+
end
|
|
50
|
+
|
|
51
|
+
def get_cf_type
|
|
52
|
+
"AWS::CloudFront::Distribution"
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
def get_cf_attributes
|
|
56
|
+
result = super
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
def get_cf_properties
|
|
60
|
+
result = {}
|
|
61
|
+
result["DistributionConfig"] = @distribution.generate
|
|
62
|
+
result
|
|
63
|
+
end
|
|
64
|
+
|
|
65
|
+
end
|
|
66
|
+
end
|
|
@@ -1,39 +1,39 @@
|
|
|
1
|
-
require 'cf_factory/base/cf_inner'
|
|
2
|
-
|
|
3
|
-
module CfFactory
|
|
4
|
-
class CfCustomOriginConfig
|
|
5
|
-
PROTOCOL_VALUES = ["http-only","match-viewer"]
|
|
6
|
-
include CfInner
|
|
7
|
-
|
|
8
|
-
def additional_indent
|
|
9
|
-
6
|
|
10
|
-
end
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
def initialize(protocol, options = {})
|
|
14
|
-
@protocol = protocol
|
|
15
|
-
@http_port = options[:http_port]
|
|
16
|
-
@https_port = options[:https_port]
|
|
17
|
-
validate()
|
|
18
|
-
end
|
|
19
|
-
|
|
20
|
-
def get_cf_attributes
|
|
21
|
-
result = {}
|
|
22
|
-
result["OriginProtocolPolicy"] = @protocol
|
|
23
|
-
result["HTTPPort"] = @http_port unless @http_port.nil?
|
|
24
|
-
result["HTTPSPort"] = @https_port unless @https_port.nil?
|
|
25
|
-
result
|
|
26
|
-
end
|
|
27
|
-
|
|
28
|
-
def is_custom?
|
|
29
|
-
true
|
|
30
|
-
end
|
|
31
|
-
|
|
32
|
-
private
|
|
33
|
-
|
|
34
|
-
def validate
|
|
35
|
-
raise Exception.new("protocol must be within #{PROTOCOL_VALUES}") unless PROTOCOL_VALUES.include?(@protocol)
|
|
36
|
-
end
|
|
37
|
-
|
|
38
|
-
end
|
|
39
|
-
end
|
|
1
|
+
require 'cf_factory/base/cf_inner'
|
|
2
|
+
|
|
3
|
+
module CfFactory
|
|
4
|
+
class CfCustomOriginConfig
|
|
5
|
+
PROTOCOL_VALUES = ["http-only","match-viewer"]
|
|
6
|
+
include CfInner
|
|
7
|
+
|
|
8
|
+
def additional_indent
|
|
9
|
+
6
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
def initialize(protocol, options = {})
|
|
14
|
+
@protocol = protocol
|
|
15
|
+
@http_port = options[:http_port]
|
|
16
|
+
@https_port = options[:https_port]
|
|
17
|
+
validate()
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
def get_cf_attributes
|
|
21
|
+
result = {}
|
|
22
|
+
result["OriginProtocolPolicy"] = @protocol
|
|
23
|
+
result["HTTPPort"] = @http_port unless @http_port.nil?
|
|
24
|
+
result["HTTPSPort"] = @https_port unless @https_port.nil?
|
|
25
|
+
result
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
def is_custom?
|
|
29
|
+
true
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
private
|
|
33
|
+
|
|
34
|
+
def validate
|
|
35
|
+
raise Exception.new("protocol must be within #{PROTOCOL_VALUES}") unless PROTOCOL_VALUES.include?(@protocol)
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
end
|
|
39
|
+
end
|
|
@@ -1,34 +1,34 @@
|
|
|
1
|
-
require 'cf_factory/base/cf_inner'
|
|
2
|
-
|
|
3
|
-
module CfFactory
|
|
4
|
-
class CfDefaultCacheBehavior
|
|
5
|
-
include CfInner
|
|
6
|
-
|
|
7
|
-
def additional_indent
|
|
8
|
-
4
|
|
9
|
-
end
|
|
10
|
-
|
|
11
|
-
def self.create_basic(target_origin_id)
|
|
12
|
-
CfDefaultCacheBehavior.new(target_origin_id,CfForwardedValues.new(true),"allow-all")
|
|
13
|
-
end
|
|
14
|
-
|
|
15
|
-
def initialize(target_origin_id, forwarded_values, viewer_protocol_policy, options = {})
|
|
16
|
-
@target_origin_id = target_origin_id
|
|
17
|
-
@forwarded_values = forwarded_values
|
|
18
|
-
@viewer_protocol_policy = viewer_protocol_policy
|
|
19
|
-
|
|
20
|
-
@min_ttl = options[:min_ttl]
|
|
21
|
-
@trusted_signers = options[:trusted_signers]
|
|
22
|
-
end
|
|
23
|
-
|
|
24
|
-
def get_cf_attributes
|
|
25
|
-
result = {}
|
|
26
|
-
result["TargetOriginId"] = @target_origin_id
|
|
27
|
-
result["ForwardedValues"] = @forwarded_values.generate
|
|
28
|
-
result["ViewerProtocolPolicy"] = @viewer_protocol_policy
|
|
29
|
-
result["MinTTL"] = @min_ttl unless @min_ttl.nil?
|
|
30
|
-
result
|
|
31
|
-
end
|
|
32
|
-
|
|
33
|
-
end
|
|
34
|
-
end
|
|
1
|
+
require 'cf_factory/base/cf_inner'
|
|
2
|
+
|
|
3
|
+
module CfFactory
|
|
4
|
+
class CfDefaultCacheBehavior
|
|
5
|
+
include CfInner
|
|
6
|
+
|
|
7
|
+
def additional_indent
|
|
8
|
+
4
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
def self.create_basic(target_origin_id)
|
|
12
|
+
CfDefaultCacheBehavior.new(target_origin_id,CfForwardedValues.new(true),"allow-all")
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
def initialize(target_origin_id, forwarded_values, viewer_protocol_policy, options = {})
|
|
16
|
+
@target_origin_id = target_origin_id
|
|
17
|
+
@forwarded_values = forwarded_values
|
|
18
|
+
@viewer_protocol_policy = viewer_protocol_policy
|
|
19
|
+
|
|
20
|
+
@min_ttl = options[:min_ttl]
|
|
21
|
+
@trusted_signers = options[:trusted_signers]
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
def get_cf_attributes
|
|
25
|
+
result = {}
|
|
26
|
+
result["TargetOriginId"] = @target_origin_id
|
|
27
|
+
result["ForwardedValues"] = @forwarded_values.generate
|
|
28
|
+
result["ViewerProtocolPolicy"] = @viewer_protocol_policy
|
|
29
|
+
result["MinTTL"] = @min_ttl unless @min_ttl.nil?
|
|
30
|
+
result
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
end
|
|
34
|
+
end
|
|
@@ -1,33 +1,33 @@
|
|
|
1
|
-
require 'cf_factory/base/cf_inner'
|
|
2
|
-
|
|
3
|
-
module CfFactory
|
|
4
|
-
class CfDistributionConfig
|
|
5
|
-
include CfInner
|
|
6
|
-
|
|
7
|
-
def additional_indent
|
|
8
|
-
2
|
|
9
|
-
end
|
|
10
|
-
|
|
11
|
-
def initialize(origins, default_cache_behaviour, enabled = true, options = {})
|
|
12
|
-
@origins = origins
|
|
13
|
-
@default_cache_behaviour = default_cache_behaviour
|
|
14
|
-
@enabled = enabled
|
|
15
|
-
|
|
16
|
-
@cache_behaviors = options[:cache_behaviors]
|
|
17
|
-
@aliases = options[:aliases]
|
|
18
|
-
@logging = options[:logging]
|
|
19
|
-
end
|
|
20
|
-
|
|
21
|
-
def get_cf_attributes
|
|
22
|
-
result = {}
|
|
23
|
-
result["Origins"] = CfHelper.generate_inner_array(@origins)
|
|
24
|
-
result["DefaultCacheBehavior"] = @default_cache_behaviour.generate unless @default_cache_behaviour.nil?
|
|
25
|
-
result["Enabled"] = @enabled
|
|
26
|
-
result["Logging"] = @logging.generate unless @logging.nil?
|
|
27
|
-
result["Aliases"] = @aliases.inspect unless @aliases.nil?
|
|
28
|
-
result["CacheBehaviors"] = CfHelper.generate_inner_array(@cache_behaviors) unless @cache_bahaviors.nil?
|
|
29
|
-
result
|
|
30
|
-
end
|
|
31
|
-
|
|
32
|
-
end
|
|
33
|
-
end
|
|
1
|
+
require 'cf_factory/base/cf_inner'
|
|
2
|
+
|
|
3
|
+
module CfFactory
|
|
4
|
+
class CfDistributionConfig
|
|
5
|
+
include CfInner
|
|
6
|
+
|
|
7
|
+
def additional_indent
|
|
8
|
+
2
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
def initialize(origins, default_cache_behaviour, enabled = true, options = {})
|
|
12
|
+
@origins = origins
|
|
13
|
+
@default_cache_behaviour = default_cache_behaviour
|
|
14
|
+
@enabled = enabled
|
|
15
|
+
|
|
16
|
+
@cache_behaviors = options[:cache_behaviors]
|
|
17
|
+
@aliases = options[:aliases]
|
|
18
|
+
@logging = options[:logging]
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
def get_cf_attributes
|
|
22
|
+
result = {}
|
|
23
|
+
result["Origins"] = CfHelper.generate_inner_array(@origins)
|
|
24
|
+
result["DefaultCacheBehavior"] = @default_cache_behaviour.generate unless @default_cache_behaviour.nil?
|
|
25
|
+
result["Enabled"] = @enabled
|
|
26
|
+
result["Logging"] = @logging.generate unless @logging.nil?
|
|
27
|
+
result["Aliases"] = @aliases.inspect unless @aliases.nil?
|
|
28
|
+
result["CacheBehaviors"] = CfHelper.generate_inner_array(@cache_behaviors) unless @cache_bahaviors.nil?
|
|
29
|
+
result
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
end
|
|
33
|
+
end
|
|
@@ -1,27 +1,27 @@
|
|
|
1
|
-
require 'cf_factory/base/cf_inner'
|
|
2
|
-
|
|
3
|
-
module CfFactory
|
|
4
|
-
class CfForwardedValues
|
|
5
|
-
include CfInner
|
|
6
|
-
|
|
7
|
-
def additional_indent
|
|
8
|
-
@additional_indent
|
|
9
|
-
end
|
|
10
|
-
|
|
11
|
-
def add(add_indent)
|
|
12
|
-
@additional_indent += add_indent
|
|
13
|
-
end
|
|
14
|
-
|
|
15
|
-
def initialize(query_string)
|
|
16
|
-
@query_string = query_string
|
|
17
|
-
@additional_indent = 6
|
|
18
|
-
end
|
|
19
|
-
|
|
20
|
-
def get_cf_attributes
|
|
21
|
-
result = {}
|
|
22
|
-
result["QueryString"] = @query_string
|
|
23
|
-
result
|
|
24
|
-
end
|
|
25
|
-
|
|
26
|
-
end
|
|
27
|
-
end
|
|
1
|
+
require 'cf_factory/base/cf_inner'
|
|
2
|
+
|
|
3
|
+
module CfFactory
|
|
4
|
+
class CfForwardedValues
|
|
5
|
+
include CfInner
|
|
6
|
+
|
|
7
|
+
def additional_indent
|
|
8
|
+
@additional_indent
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
def add(add_indent)
|
|
12
|
+
@additional_indent += add_indent
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
def initialize(query_string)
|
|
16
|
+
@query_string = query_string
|
|
17
|
+
@additional_indent = 6
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
def get_cf_attributes
|
|
21
|
+
result = {}
|
|
22
|
+
result["QueryString"] = @query_string
|
|
23
|
+
result
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
end
|
|
27
|
+
end
|
|
@@ -1,26 +1,26 @@
|
|
|
1
|
-
require 'cf_factory/base/cf_inner'
|
|
2
|
-
|
|
3
|
-
module CfFactory
|
|
4
|
-
class CfLogging
|
|
5
|
-
include CfInner
|
|
6
|
-
|
|
7
|
-
attr_reader(:id)
|
|
8
|
-
|
|
9
|
-
def additional_indent
|
|
10
|
-
4
|
|
11
|
-
end
|
|
12
|
-
|
|
13
|
-
def initialize(bucket, prefix)
|
|
14
|
-
@bucket = bucket
|
|
15
|
-
@prefix = prefix
|
|
16
|
-
end
|
|
17
|
-
|
|
18
|
-
def get_cf_attributes
|
|
19
|
-
result = {}
|
|
20
|
-
result["Bucket"] = @bucket.retrieve_attribute("DomainName")
|
|
21
|
-
result["Prefix"] = @prefix
|
|
22
|
-
result
|
|
23
|
-
end
|
|
24
|
-
|
|
25
|
-
end
|
|
26
|
-
end
|
|
1
|
+
require 'cf_factory/base/cf_inner'
|
|
2
|
+
|
|
3
|
+
module CfFactory
|
|
4
|
+
class CfLogging
|
|
5
|
+
include CfInner
|
|
6
|
+
|
|
7
|
+
attr_reader(:id)
|
|
8
|
+
|
|
9
|
+
def additional_indent
|
|
10
|
+
4
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
def initialize(bucket, prefix)
|
|
14
|
+
@bucket = bucket
|
|
15
|
+
@prefix = prefix
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
def get_cf_attributes
|
|
19
|
+
result = {}
|
|
20
|
+
result["Bucket"] = @bucket.retrieve_attribute("DomainName")
|
|
21
|
+
result["Prefix"] = @prefix
|
|
22
|
+
result
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
end
|
|
26
|
+
end
|
|
@@ -1,42 +1,42 @@
|
|
|
1
|
-
require 'cf_factory/base/cf_inner'
|
|
2
|
-
|
|
3
|
-
module CfFactory
|
|
4
|
-
class CfOrigin
|
|
5
|
-
include CfInner
|
|
6
|
-
|
|
7
|
-
attr_reader(:id)
|
|
8
|
-
|
|
9
|
-
def additional_indent
|
|
10
|
-
4
|
|
11
|
-
end
|
|
12
|
-
|
|
13
|
-
def initialize(domain_name, id, origin, options = {})
|
|
14
|
-
@domain_name = domain_name
|
|
15
|
-
@id = id
|
|
16
|
-
@origin = origin
|
|
17
|
-
end
|
|
18
|
-
|
|
19
|
-
def self.create_s3_origin(s3_bucket, options = {})
|
|
20
|
-
s3_origin_config = CfS3OriginConfig.new
|
|
21
|
-
CfOrigin.new(s3_bucket.short_domain_name(),s3_bucket.generate_ref,s3_origin_config, options)
|
|
22
|
-
end
|
|
23
|
-
|
|
24
|
-
def self.create_elb_origin(elb, options = {})
|
|
25
|
-
custom_origin_config = CfCustomOriginConfig.new("http-only")
|
|
26
|
-
CfOrigin.new(elb.retrieve_attribute("DNSName"),elb.generate_ref,custom_origin_config, options)
|
|
27
|
-
end
|
|
28
|
-
|
|
29
|
-
def get_cf_attributes
|
|
30
|
-
result = {}
|
|
31
|
-
result["DomainName"] = @domain_name
|
|
32
|
-
result["Id"] = id
|
|
33
|
-
if @origin.is_custom?
|
|
34
|
-
result["CustomOriginConfig"] = @origin.generate
|
|
35
|
-
else
|
|
36
|
-
result["S3OriginConfig"] = @origin.generate
|
|
37
|
-
end
|
|
38
|
-
result
|
|
39
|
-
end
|
|
40
|
-
|
|
41
|
-
end
|
|
42
|
-
end
|
|
1
|
+
require 'cf_factory/base/cf_inner'
|
|
2
|
+
|
|
3
|
+
module CfFactory
|
|
4
|
+
class CfOrigin
|
|
5
|
+
include CfInner
|
|
6
|
+
|
|
7
|
+
attr_reader(:id)
|
|
8
|
+
|
|
9
|
+
def additional_indent
|
|
10
|
+
4
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
def initialize(domain_name, id, origin, options = {})
|
|
14
|
+
@domain_name = domain_name
|
|
15
|
+
@id = id
|
|
16
|
+
@origin = origin
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
def self.create_s3_origin(s3_bucket, options = {})
|
|
20
|
+
s3_origin_config = CfS3OriginConfig.new
|
|
21
|
+
CfOrigin.new(s3_bucket.short_domain_name(),s3_bucket.generate_ref,s3_origin_config, options)
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
def self.create_elb_origin(elb, options = {})
|
|
25
|
+
custom_origin_config = CfCustomOriginConfig.new("http-only")
|
|
26
|
+
CfOrigin.new(elb.retrieve_attribute("DNSName"),elb.generate_ref,custom_origin_config, options)
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
def get_cf_attributes
|
|
30
|
+
result = {}
|
|
31
|
+
result["DomainName"] = @domain_name
|
|
32
|
+
result["Id"] = id
|
|
33
|
+
if @origin.is_custom?
|
|
34
|
+
result["CustomOriginConfig"] = @origin.generate
|
|
35
|
+
else
|
|
36
|
+
result["S3OriginConfig"] = @origin.generate
|
|
37
|
+
end
|
|
38
|
+
result
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
end
|
|
42
|
+
end
|
|
@@ -1,27 +1,27 @@
|
|
|
1
|
-
require 'cf_factory/base/cf_inner'
|
|
2
|
-
|
|
3
|
-
module CfFactory
|
|
4
|
-
class CfS3OriginConfig
|
|
5
|
-
include CfInner
|
|
6
|
-
|
|
7
|
-
def additional_indent
|
|
8
|
-
6
|
|
9
|
-
end
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
def initialize(options = {})
|
|
13
|
-
@origin_access_identity = options[:origin_access_identity]
|
|
14
|
-
end
|
|
15
|
-
|
|
16
|
-
def get_cf_attributes
|
|
17
|
-
result = {}
|
|
18
|
-
result["OriginAccessIdentity"] = @origin_access_identity unless @origin_access_identify.nil?
|
|
19
|
-
result
|
|
20
|
-
end
|
|
21
|
-
|
|
22
|
-
def is_custom?
|
|
23
|
-
false
|
|
24
|
-
end
|
|
25
|
-
|
|
26
|
-
end
|
|
27
|
-
end
|
|
1
|
+
require 'cf_factory/base/cf_inner'
|
|
2
|
+
|
|
3
|
+
module CfFactory
|
|
4
|
+
class CfS3OriginConfig
|
|
5
|
+
include CfInner
|
|
6
|
+
|
|
7
|
+
def additional_indent
|
|
8
|
+
6
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
def initialize(options = {})
|
|
13
|
+
@origin_access_identity = options[:origin_access_identity]
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
def get_cf_attributes
|
|
17
|
+
result = {}
|
|
18
|
+
result["OriginAccessIdentity"] = @origin_access_identity unless @origin_access_identify.nil?
|
|
19
|
+
result
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
def is_custom?
|
|
23
|
+
false
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
end
|
|
27
|
+
end
|